آموزش آردوینو UNO ( راه اندازی نمایشگر OLED )

به آموزش آردوینو ( قسمت دوازدهم – راه اندازی نمایشگر OLED) خوش اومدید.

بازبینی اول : در تاریخ ۱۴۰۰/۰۵/۲۳ انجام شد!

نمایشگر OLED

نمایشگر‌های OLED ، نمایشگرهایی با رزولوشن بالای می‌باشند و قابلیت خوانایی زیادی را برای کاربر فراهم می‌کند. این نوع ماژول‌ها فاقد Backlight  می‌باشند و نور پس‌زمینه را خودشان ایجاد می‌کنند از این رو نسبت به LCD ها باریک‌تر ، شفاف‌تر و شکیل تر می‌باشند.

پیاده سازی عملی پروژه

VCC : پایه تغذیه نمایشگر OLED که به پایه ۵ ولت برد آردوینو متصل میکنیم.

GND : به پایه GND برد آردوینو وصل میکنیم.

SCL : پایه کلاک ارتباط I2C به پایه A5 آردوینو متصل میکنیم.

SDA : پایه انتقال دیتا ارتباط I2C به پایه A4 آردوینو متصل میکنیم.

شبیه سازی پروژه در نرم افزار پروتئوس

برای این پروژه مدار خود را مانند شکل زیر ببندید.

نصب کتاب خانه های مورد نیاز

از کتابخانه Adafruit_SSD1306 برای نمایش متن دلخواه و از کتابخانه  Adafruit GFX برای نمایش اشکال هندسی  روی نمایشگر OLED استفاده میکنیم. این کتابخانه ها از سایت گیت به صورت رایگان قابل دانلود است . سپس فایل زیپ دانلودی را استخراج و در مسیر فایل نصبی نرم افزار ها و قسمت library قرار میدهیم.

یا شما میتوانید با مراجعه به منوی Sketch منوی Include library و بعدش گزینه Manage libraries و جستجو اسم کتابخانه مورد نظر آن را نصب کنید.

کد های دستوری

ابتدا کتابخانه های Wire.h (ارتباط I2C) ،و SPI.h (ارتباط SPI) برای برقرای ارتباط با نمایشگر گرافیکی OLED و کتابخانه های Adafruit_GFX و Adafruit_SSD1306 را فراخوانی میکنیم.برای یادگیری این دو پروتکل ارتباطی SPI و I2C شما می توانید به قسمت ۱۰ و ۱۱ آموزش مراجعه کنید.

سپس یک شی بنام display تعریف میکنیم.

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
Adafruit_SSD1306 display(-1);

در تابع setup در تابع display.begin با SSD1306_SWITCHCAPVCC ولتاژ کاری نمایشگر رو روی ۵ ولت تنظیم میکنیم و عبارت دوم آدرس نمایشگر گرافیکی OLED هست.

سپس با دستور display.clearDisplay یک دور نمایشگر را پاک میکنیم.

display.begin(SSD1306_SWITCHCAPVCC, 0x3C);  

	display.clearDisplay();

برای نمایش متن مورد نظر روی نمایشگر با دستور display.setTextSize سایز فونت مورد نظر رو میتونیم انتخاب کنیم.

با دستور setTextColor رنگ متن رو انتخاب میکنیم.

با دستور display.setCursor مکانمورد نظر توی صفحه نمایشرا انتخاب میکنیم .

با دستور display.println متن را مینویسیم.

و در آخر با دستور display.display تمام تغییرات را روی نمایشگر اعمال میکنیم.

	display.setTextSize(1);
	display.setTextColor(WHITE);
	display.setCursor(0,0);
	display.println("amokh.ir");
	display.display();

حرکت کامل یک متن

برای حرکت یک متن روی نمایشگر گرافیکی OLED  از توابع:

startscrollright : برای حرکت دادن متن  به سمت راست

startscrollleft : برای حرکت دادن متن به سمت چپ

startscrolldiagright : برای حرکت دادن متن به سمت راست بصورت مورب

startscrolldiagleft : برای حرکت دادن متن به سمت چپ بصورت مورب استفاده میکنیم.

نکته : تمام توابع نام برده شده دو پارامتر رو بعنوان ورودی دریافت میکنند.

پارامتر اول:آدرس شروع صفحه

پارامتر اول:آدرس پایان صفحه

نکته : که این دو پارامتر بین ۰ تا ۷ صفحه قابل تغییر هستند .با این تفاوت که ما بجای اعداد ۰ تا ۷ از معادل هگز اونها یعنی  0x00 تا  0x07 استفاده میکنیم.

display.startscrollright(0x00, 0x07);
delay(2000);
display.stopscroll();

کد کامل پروژه

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
Adafruit_SSD1306 display(-1);

void setup() {
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);  

  display.clearDisplay();

  display.setTextSize(1);
  display.setTextColor(WHITE);
  display.setCursor(0,0);
  display.println("amokh.ir");
  display.display();
  display.startscrollright(0x00, 0x07);
  delay(2000);
  display.stopscroll();
}

void loop() {
}

پایان آموزش آردوینو  ( قسمت دوازدهم – راه اندازی نمایشگر OLED) 

11 دیدگاه در “آموزش آردوینو UNO ( راه اندازی نمایشگر OLED )

    1. سلام وقت بخیر، برای اینکار باید عددتون float تعریف بشه و بعد برای چاپ اونرو تبدیل به string کنید و بعد نمایش بدیدمثل کد زیر :

          1. سلام مجدد، شما با دستور sprintf اونو تبدیل به string میکنید و بعد به جای دستور print از دستور نمایش روی oled استفاده می کنید

  1. سلام
    من در عمل oled رو راه اندازی کردم ولی در پروتئوس همین oled که شما استفاده کردید رو میزارم ولی تصویر نشون نمیده ، علتش چیه؟

    1. سلام وقت بخیر. معمولا بخاطر کتابخونه هاست که باید درست اضافه بشن و کد هم hex باید بارگذاری بشه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

قبلا حساب کاربری ایجاد کرده اید؟
گذرواژه خود را فراموش کرده اید؟
Loading...