لینک پست معرفی مشخصات کتابخانه

لینک اولین قسمت آموزش

لینک فهرست موضوعی مطالب

موضوع این قسمت: معرفی کارکرد توابع قسمت گرافیکی  و نکات راه اندازی 

با سلام .

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

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

جهت یادآوری محتویات پوشه glcd را در تصویر زیر میبینید .

 

الگوی توابع این قسمت در فایل  graphic_lcd.h  تعریف شده است .

لیست این توابع در تصویر زیر مشخص شده است .

عملکرد توابع گرافیکی در توضیحات زیر است :

تابع

glcd_draw_fill_rectangle (rgb_color_typedef   color ,uint8_t x1,uint8_t y1 ,uint8_t x2 , uint8_t y2);

 

این تابع یک مستطیل توپر رسم میکند . 

و متغیرهای آن به شرح زیر است

color  =  کد رنگ مستطیل میباشد.
 

x1 , y1   =   مختصات گوشه ی بالا سمت چپ مستطیل میباشد.

x2 , y2   =   مختصات گوشه ی پایین  سمت راست مستطیل میباشد.

*** توجه :

x =  شماره ستون  و   y = شماره سطر است .
 

تابع glcd_draw_line ( color ,  thicknes ,x1, y1 , x2 , y2);

این تابع یک خط از مختصات x1 ,y1  به مختصات x2 , y2 رسم میکند .

color  =  کد رنگ خط میباشد.

thicknes = ضخامت خط را مشخص میکند .

اگر شیب خط کمتر از 45 درجه باشد خط، به سمت پایین ضخیم میشود .و اگر بیشتر از 45 درجه باشد به سمت راست ضخیم میشود .

در واقع خط ضخیم  شده بیشتر شبیه متواضی الاضلاع هست .

 

تابع glcd_draw_fill_circle(color ,  x1, y1 , radius);

این تابع یک دایره توپر به رنگ color  رسم میکند .

x1,y1 مختصات مرکز دایره و radius شعاع دایره است .

 تابع :glcd_draw_fill_quadrant( color, quad_num, x0, y0 , radius)

این تابع یک ربع دایره توپر به رنگ color  و مرکز x0,y0  و شعاع radios رسم میکند .

quad_num : 

میتواند مقادیر 1 تا 4 را بپذیرد که تعیین کننده موقعیت ربع دایره است ، که به شرح زیر میباشد.

اگر صفحه ساعت را در نظر بگیرید .

1 =  ربع دایره بین ساعت 3 تا 6

2 =ربع دایره بین ساعت 6 تا 9

3 = ربع دایره بین ساعت 9 تا 12

4 = ربع دایره بین ساعت 12 تا 3

برای بقیه مقادیر چیزی رسم نمیکند .

تابع glcd_draw_rectangle( color , thicknes , x1,y1 ,x2 , y2)

این تابع دقیقا مانند تابع  رسم مستطیل توپر است با این تفاوت که یک مستطیل توخالی رسم میکند .

thicknes = ضخامت اضلاع مستطیل میباشد . و نکته اینکه اضلاع به سمت داخل مستطیل ضخیم میشوند .

 

تابع glcd_draw_circle( color , thicknes  , x0, y0 , radius)

این تابع مانند تابع رسم دایره توپر (glcd_draw_fill_circle) است با این تفاوت که یک دایره توخالی با ضخامت حاشیه ای به اندازه ی  thicknes  رسم میکند . البته تنها از مقدار 1 برای thicknes استفاده نمایید .

تابع glcd_draw_quadrant( color, quad_num, thicknes , x0, y0 , radius)

شرح متغیرهای این تابع دقیقا مانند تابع  glcd_draw_fill_quadrant است . با این تفاوت که یک ربع دایره توخالی رسم میکند و تنها مورد اضافی متغیر thicknes هست که ضخامت حاشیه ربع دایره را مشخص میکند . بهتر از تنها از مقدار 1 استفاده کنید .

**************************************************************

توابع اضافه شده در نسخه 1.1.3 : ( این نسخه در تاریخ 1399/4/3 منتشر شده است)

تابع :

glcd_draw_circle_rectangle(rgb_color_typedef   color ,glcd_cor_type  cir_rad  ,  uint8_t  thicknes ,glcd_cor_type x1,glcd_cor_type y1  ,glcd_cor_type x2 , glcd_cor_type y2)

این تابع برای شما یک مستطیل یا مربع توخالی  با گوشه های گرد رسم میکند . و متغیر cir_rad   شعاع انحای گوشه های مربع میباشد .

توضیح بقیه پارامتهرهای آن شبیه تابع  glcd_draw_rectangle  است .

تابع :

glcd_draw_fill_circle_rectangle(rgb_color_typedef   color ,glcd_cor_type  cir_rad,glcd_cor_type x1,glcd_cor_type y1 ,glcd_cor_type x2 , glcd_cor_type y2);

این تابع مانند تابع بالا است با این تفاوت که مستطیل یا مربع را به طور توپر رسم میکند .

**************************************************************

اضافه کردن به پروژه :

کافیست فایل graphic_lcd.h را به پروژه پیوست کنید و فایلی سورس و هدر کتابخانه را در جای مناسب درون پروزه قرار دهید .

 

در اینجا توضیحات مربوط به قسمت گرافیکی کتابخانه به پایان رسید .

امیدوارم استفاده برده باشید .

 در قسمت بعدی الزامات  راه اندازی  برای AVR  را شرح میدم .

با سپاس از توجه تان.

 

لینک قسمت قبل

لینکی قسمت بعد

 

مالکیت معنوی : لطفا کپی نکنید ، لینک بدید .