الاثنين، 25 أغسطس، 2014

الشاشة الرسومية الملونة TFT LCD 1.8 Inch

TFT LCD 1.8 inch ST7735 Controller



تعتبر هذه الشاشه من فئة شاشات العرض الصغيره الملونه .


شاشه 1.8TFT Display يوجد اشكال كثيره منها متوفره كغطاء  Arduino shield و كلوحات سهله التوصيل مع الاردوينو breakout boards . سنستخدم في هذا المقال شاشه العرض  1.8 inch TFT color display بابعاد 128*160بكسل ومزوده  (micro SD )لتخزين الصور والملفات .



تحتوي هذه الشاشة على 160 صف و 128 عمود (128*160 ) بكسل على عكس شاشه Nokia 6110

اسم المتحكم المستخدم في الشاشه ST7735R يمكنه عرض 18بت لون كامله اي 262,144لون , المتحكم ST7735 هو رقاقه تحكم ب262K لون .نوع الرسم TFT-LCD .هذه الرقاقه قادره على الربط مع متحكم خارجي مباشره يتصل عن طريق البروتوكول SPI




 بورد الشاشه يحتوي على منظم للفولتيه لذلك يمكننا استخدام 3.3فولت او 5 فولت لتزويد الشاشه بالطاقه.وايضا تحتوي على حافظه SD card حتى نتمكن من تحميل صور ملونه بسهوله.
تتم برمجتها عبر برتوكول SPI نظرا لما تحتاجه هذه الشاشه من سرعه عاليه لنقل البيانات من المتحكم (الاردوينو ) وبين متحكم الشاشه ST7735R


3) ستقسم مقالات هذه الشاشة إلى  3 أجزاء :

1)التحكم فيها بواسطة مكتبة ادافروت Adafruit و أوامرها البسيطة .

سنستخدم لبرمجه هذه الشاشه مكتبه Adafruit_GFX حيث توفر مجموعه من اقترانات الجمل والرسومات لكل من شاشات الكرستال السائلهLCDوشاشات الOLED وهذا يسمح لنا من برمجه هذه الشاشات عن طريق الاردوينو بسهوله وتحسين ادائها
تعمل هذه المكتبه جنبا الى جنب مع مكتبه مخصصه لنوع الشاشه المستخدمه .لذلك سنستخدم بلاضافه لهذه المكتبه مكتبه Adafruit_ST7735.

2) كيفية تحميل الصور على هذه الشاشة و ضبطها .

3) برمجتها بواسطة مكتبة اردوينو الرسمية .

قبل البداية سنقوم بتحميل مكتبة Adafruit الخاصة بهذه الشاشة من هنا 

و تحميل  مكتبة gfx من هنا 


التوصيل :




شرح اوامر المكتبه :

1) لبدأ العمل مع هذه الشاشه نعمل على تهيئتها بواسطه الامر 

TFT_name.initR(INITR_BLACKTAB);

2) لضبط اللون المستخدم بالكتابه نستخدم الامر 
TFT_name.setTextColor(ST7735_COLOR);

3) لضبط حجم الخط المستخدم نستخدم الامر 
TFT_name.setTextSize(n);

حيث ان n رقم بين 1 -4 كلما زاد الرقم n زاد حجم الخط 


4)لرسم نقطه على الشاشه نستعمل الامر 
TFT_name.drawPixel(x1,y1,ST7735_COLOR);
حيث x1,y1 هي احداثيات النقطه.




وهذا المثال يوضح طريقه رسم نقطه على الشاشه






5) لرسم خط مستقيم نستخدم الامر 
TFT_name.drawLine(x1,y1,x2,y2,ST7735_COLOR);
x1,y1 احداثيات النقطه الاولى 
x2,y2 احداثيات النقطه الثانيه 
ST7735_COLOR  لون الخط المستقيم
بالاضافه لوجود اوامر خاصه لرسم الخط وهي :
رسم خط مستقيم افقيا 
TFT_name.drawFastHLine(x1,y1,L,ST7735_COLOR);

حيث X1,Y1 نقطه بدايه هذا الخط
L طول الخط 


ولرسم خط مستقيم عاموديا 
TFT_name.drawFastVLine(x1,y1,L,ST7735_COLOR);

حيث X1,Y1 نقطه بدايه هذا الخط
L طول الخط





وهذا البرنامج مثال لرسم الخطوط المختلفه على الشاشه 






6) لرسم مستطيل فارغ نستخدم الامر 
  TFT_name.drawRoundRect(X1,Y1,X2,Y2,5,ST7735_COLOR);
X1,Y1 نقطه بدايه المستطيل 
X2,Y2 نقطه نهايه المستطيل 
ST7735_COLOR لون اطار المستطيل

7)لرسم مستطيل ممتلئ بلون  نستخدم الامر 
  TFT_name.fillRoundRect(X1,Y1,X2,Y2,5,ST7735_COLOR);
X1,Y1 نقطه بدايه المستطيل 
X2,Y2 نقطه نهايه المستطيل
ST7735_COLOR لون الذي سيملئ بها المستطيل 




وهذا المثال يوضح طريقه رسم مستطيل فارغ وممتلئ 






8) لرسم مثلث نستخدم الامر 
 TFT_name.drawTriangle(X1,Y1,X2,Y2,X3,Y3,ST7735_COLOR);
 X1,Y1,X2,Y2,X3,Y3 حيث هذه الاحداثيات رؤوس المثلث  ST7735_COLOR لون اطار المثلث
9) لرسم مثلث ممتلئ بلون نستخدم الامر 
 TFT_name.fillTriangle(X1,Y1,X2,Y2,X3,Y3,ST7735_COLOR);
 X1,Y1,X2,Y2,X3,Y3 حيث هذه الاحداثيات رؤوس المثلث  ST7735_COLOR لون الممتلئ به المثلث 







هذا هو الجزء الأول من المقال و في الجزء الثاني سنتحدث عن كيفية تحميل صورة على هذه الشاشة باستخدام SD Card



4 التعليقات :

  1. هل هذة الشاشة عرض نصوص واشكال وصور فقط اويمكن ان تكون دخل لاوامر معينة مثلا التحكم بليد خارجي اي هل هي شاشة لمس اذا كانت لاتدعم اللمس ماهي الشاشة التي تدعم اللمس وتركب فوق الاردينو مباشرة مثل lcd1602 shield

    ردحذف
  2. هو فين الجزء التاني

    ردحذف
    الردود
    1. للاسف لم يتم نشره لتوقفنا عن التدوين منذ فترة

      حذف
  3. يا ريت تشرح عن شاشة tft 2.4 استاذ

    ردحذف

 
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.