نمایشگر OLED پروژه های آردوینو

آموزش ماژول نمایشگر OLED آردوینو بخش ششم

آموزش راه اندازی ماژول نمایشگر OLED در آردوینو arduino
نوشته شده توسط علیرضا قربانی

در این پست با ادامه‌ی آموزش توابع کتابخانه U8glib برای راه‌اندازی ماژول نمایشگر OLED با دیجی اسپارک همراه باشید.

آموزش راه ‌اندازی ماژول نمایشگر OLED بخش اول

آموزش راه ‌اندازی ماژول نمایشگر OLED بخش دوم

آموزش راه ‌اندازی ماژول نمایشگر OLED بخش سوم

آموزش راه ‌اندازی ماژول نمایشگر OLED بخش چهارم

آموزش راه ‌اندازی ماژول نمایشگر OLED بخش پنجم

drawStr

توسط این تابع ، نوشته بر روی صفحه نمایش OLED نمایش داده خواهد شد.

ساختار تابع یه صورت زیر می‌باشد :

drawStr(u8g_uint_t x, u8g_uint_t y, const char *s)

x : موقعیت نمایش در راستای محور Xها

Y:موقعیت نمایش در راستای محور y ها

s: رشته‌ای که قصد نمایش آن را داریم.

مثال:

#include <U8glib.h>
U8GLIB_SH1106_128X64 u8g (U8G_I2C_OPT_NONE);
void setup ()
  {
  u8g.setFont (u8g_font_timB10);
  Serial.begin (9600);
  }

void loop ()
  {
  Serial.println (u8g.getPrintCol ());
  //حلقه رسم
  u8g.firstPage ();
  do {
    u8g.drawStr90(0, 00, "Digispark");

    } while ( u8g.nextPage () );
  delay (1000);
  }
آموزش راه اندازی ماژول نمایشگر OLED در آردوینو arduino

drawStr

drawStr90

توسط این تابع می‌توان متن مورد نظر را به اندازه ۹۰ درجه در جهت عقربه‌های ساعت دوران دهیم و بر روی نمایشگر نشان دهیم..

ساختار :

drawStr90(u8g_uint_t x, u8g_uint_t y, const char *s)

مثال:

u8g.drawStr90(0, 0, "Digispark");
آموزش راه اندازی ماژول نمایشگر OLED در آردوینو arduino

drawStr90

drawStr180

این تابع متن مورد نظر را ۱۸۰ درجه در جهت عقربه‌های ساعت دوران می‌دهد و سپس بر روی نمایشگر OLED نمایش می‌دهد.

ساختار:

drawStr180(u8g_uint_t x, u8g_uint_t y, const char *s)

مثال:

u8g.drawStr180(70, 25, "Digispark");
آموزش راه اندازی ماژول نمایشگر OLED در آردوینو arduino

drawStr180

drawStr270

به وسیله ایین تابع می‌توان متن مورد نظر را ۲۷۰ درجه در جهت عقربه‌های ساعت دوران داد.

ساختار:

drawStr270(u8g_uint_t x, u8g_uint_t y, const char *s)

مثال:

u8g.drawStr270(70, 60, "Digispark");
آموزش راه اندازی ماژول نمایشگر OLED در آردوینو arduino

drawStr270

drawPixel

با استفاده از این تابع می‌توان پیکسلی را در نقطه‌ای به مختصات x و y رسم نمود.ساختار تابع به صورت زیر می‌باشد :

drawPixel(uint8_t x, uint8_t y)

از این تابع  نیز باید در حلقه رسم استفاده شود. مثال:

#include <U8glib.h>
U8GLIB_SH1106_128X64 u8g (U8G_I2C_OPT_NONE);
void setup ()
  {
  u8g.setFont (u8g_font_timB10);
  Serial.begin (9600);
  }

void loop ()
  {
  Serial.println (u8g.getPrintCol ());
  //حلقه رسم
  u8g.firstPage ();
  do {
    u8g.drawPixel (10, 10);

    } while ( u8g.nextPage () );
  delay (1000);
  }

آموزش راه اندازی ماژول نمایشگر OLED در آردوینو arduino

drawPixel

setColorIndex

به وسیله این تابع می‌توان خاموش یا روشن کردن پیکسل‌ها را در نمایشگر OLED مشخص کرد. ساختار این تابع به صورت زیر می‌باشد.

setColorIndex(uint8_t color_index)

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

مثال:

#include <U8glib.h>
U8GLIB_SH1106_128X64 u8g (U8G_I2C_OPT_NONE);
void setup ()
  {
  u8g.setFont (u8g_font_timB10);
  Serial.begin (9600);
  }

void loop ()
  {
  Serial.println (u8g.getPrintCol ());
  //حلقه رسم
  u8g.firstPage ();
  do {
    u8g.setColorIndex (1);
    u8g.drawBox (10, 12, 20, 30);
    u8g.setColorIndex (0);
    u8g.drawPixel (28, 14);  u8g.drawPixel (10, 10);

    } while ( u8g.nextPage () );
  delay (1000);
  }

آموزش راه اندازی ماژول نمایشگر OLED در آردوینو arduino

setRot90

setRot180

setRot270

با استفاده از این توابع می‌توان نمایشگر OLED را در سه زاویه ۹۰ ، ۱۸۰ ، ۲۷۰ چزخاند.این تابع را باید خارج از حلقه رسم استفاده نمود(بهتر است درون setup برنامه نوشته شود ) . ساختار آن‌ها همانند زیر می‌باشد:

setRot90()
setRot180()
setRot270()

برای مثال هنگام استفاده از تابع setRot90 حالت زیر به وجود می‌آید :

آموزش راه اندازی ماژول نمایشگر OLED در آردوینو arduino

یقبل از اجرای تابع

آموزش راه اندازی ماژول نمایشگر OLED در آردوینو arduino

بعد از اجری تابع setRot90

undoRotation

عملیات چرخشی ک توسط توابع فوق صورت گرفته را غیرفعال می@کند و نمایشگر به حالت عادی باز می‌گردد. ساختار آن مطابق قطعه کد زیر می‌باشد:

undoRotation()

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

علیرضا قربانی

علیرضا قربانی هستم دانشجوی مهندسی پزشکی. چیزهای خیلی زیادی رو در دنیا دوست دارم. یک گیک هستم و یشه گفت یک هکر. نه به معنی دزدی پسورد و ایمیل مردم. به معنی عشق به دونستن و عشق به تحقیق درباره خیلی از چیزهایی که می بینم و می‌شنوم. اگر بخوام علاقه‌مندی‌ درجه یکم رو نام ببرم میتونم بگم برنامه نویسی و بعد از اون امبدد سیستم ها.

تبادل نظر و رفع عیب با ثبت دیدگاه

۸ دیدگاه

  • سلام خوبید ؟
    ببخشید میخواستم بدونم که اگه بخوام صفحه نمایشگر OLED رو پاک کنم از چه کدی باید استفاده کنم ؟

    • با سلام
      ضمن تشکر از توجه شما، برای این منظور باید از تابع display.clearDisplay() باید استفاده کنید.

  • سلام و عرض ادب
    با تشکر از زحمات شما میخواستم بدونم که این نمایشگر رو میشه با PIC و یا میکرو کنترل دیگه مثل AVR و نه توسط آردوینو راه اندازی کرد..
    متشرم

    • سلام
      این مورد تست نشده است ولی می‌توانید در کتابخانه تغییرات را اعمال کنید. فایل H کتابخانه را بررسی کنید.

  • سلام خسته نباشید
    کد هارو که وارد خطا میده
    u8g.firstPage();
    از این دستور ایرادمیگیره