در این پست به شرح ادامه توابع کتابخانه U8glib برای راهاندازی نمایشگرOLED میپردازیم. با مرجع تخصصی آردوینو ، دیجی اسپارک همراه باشید.
آموزش ماژول نمایشگر OLED آردوینو بخش اول
آموزش ماژول نمایشگر OLED آردوینو بخش دوم
آموزش ماژول نمایشگر OLED آردوینو بخش سوم
drawEllipse
از این تابع برای رسم بیضیاستفاده میشود و دارای دو ساختار میباشد :
ساختار اول:
drawEllipse(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rx, u8g_uint_t ry)
در این ساختار بیضی به مرکز x0 و y0 و به شعاع rx و ry رسم میشود.
مثال:
#include <U8glib.h> U8GLIB_SH1106_128X64 u8g (U8G_I2C_OPT_NONE); void setup () { u8g.setFont (u8g_font_timB10); } void loop () { //حلقه رسم u8g.firstPage (); do { u8g.drawEllipse (30, 30, 10, 30); } while ( u8g.nextPage () ); delay (1000); }
ساختار دوم:
drawEllipse( u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rx, u8g_uint_t ry, uint8_t opt)
در این ساختار نیز بیضی ای به مرکز x0 ,y0 و شعاع rx و ry رسم میشود با این تفاوت که میتوان قسمتی از ناحیه دلخواه بیضی را رسم نمود.
مقادیر مجاز برای opt:
- U8G_DRAW_UPPER_RIGHT ( ناحیه اول بیضی)
- U8G_DRAW_UPPER_LEFT (ناحیه دوم بیضی)
- U8G_DRAW_LOWER_LEFT (ناحیه سوم بیضی)
- U8G_DRAW_LOWER_RIGHT ( ناحیه چهارم بیضی)
- U8G_DRAW_ALL
مثال:
#include <U8glib.h> U8GLIB_SH1106_128X64 u8g (U8G_I2C_OPT_NONE); void setup () { u8g.setFont (u8g_font_timB10); } void loop () { //حلقه رسم u8g.firstPage (); do { u8g.drawEllipse (30, 30, 10, 30, U8G_DRAW_UPPER_RIGHT); } while ( u8g.nextPage () ); delay (1000); }
drawFilledEllipse
این تابع به یک لوزی تو پر رسم میکند و همانند تابع تابع drawEllipse دارای دو ساختار میباشد:
ساختار اول:
drawEllipse(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rx, u8g_uint_t ry)
در این ساختار بیضی به مرکز x0 و y0 و به شعاع rx و ry رسم میشود.
ساختار دوم:
drawEllipse( u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rx, u8g_uint_t ry, uint8_t opt)
در این ساختار نیز بیضی ای به مرکز x0 ,y0 و شعاع rx و ry رسم میشود با این تفاوت که میتوان قسمتی از ناحیه دلخواه بیضی را رسم نمود.
مقادیر مجاز برای opt:
- U8G_DRAW_UPPER_RIGHT ( ناحیه اول بیضی)
- U8G_DRAW_UPPER_LEFT (ناحیه دوم بیضی)
- U8G_DRAW_LOWER_LEFT (ناحیه سوم بیضی)
- U8G_DRAW_LOWER_RIGHT ( ناحیه چهارم بیضی)
- U8G_DRAW_ALL
drawTriangle
توسط این ماژول میتوان یک مثلث را سم کرد. ساختار کلی تابع به صورت زیر میباشد:
drawTriangle(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2)
پارامترها:
x0 :مختصات راس x0 در راستای محور x ها
x1 :مختصات راس x1 در راستای محور x ها
x2 :مختصات راس x2 در راستای محور x ها
y0 :مختصات راس y0 در راستای محور y ها
y1 :مختصات راس y1 در راستای محور y ها
y2 :مختصات راس y2در راستای محور y ها
#include <U8glib.h> U8GLIB_SH1106_128X64 u8g (U8G_I2C_OPT_NONE); void setup () { u8g.setFont (u8g_font_timB10); } void loop () { //حلقه رسم u8g.firstPage (); do { u8g.drawTriangle (14, 9, 45, 32, 9, 42); u8g.drawTriangle (14, 55, 45, 33, 9, 43); } while ( u8g.nextPage () ); delay (1000); }