جدول المحتويات:

منظم سطح المكتب مع شاشة LCD: 4 خطوات
منظم سطح المكتب مع شاشة LCD: 4 خطوات

فيديو: منظم سطح المكتب مع شاشة LCD: 4 خطوات

فيديو: منظم سطح المكتب مع شاشة LCD: 4 خطوات
فيديو: إظهار شاشة الحاسوب في التلفاز أو حاسوب آخر 2024, يوليو
Anonim
Image
Image

** قيد التحرير **

بالنسبة لمشروع HKU arduino ، قررت إنشاء منظم سطح مكتب يتميز بشاشة LCD تعرض اقتباسات ملهمة لتلتقطك عندما تقوم بتدوير مقياس الجهد الخاص بك!

سوف أقوم بتغطية الأشياء التقنية في Arduino في الغالب ، طالما أنك تمتلك شيئًا مثل الصندوق الخشبي لإخفاء Arduino و LCD الخاص بك في oganizer الشخصي الخاص بك يمكن أن يتخذ أي شكل مرغوب فيه.

الأشياء التي ستحتاجها

  • * اردوينو أونو
  • متر وعاء
  • * أسلاك prottyping الذكور
  • * وحدة LCD مع قارئ بطاقة SD! (حصلت على شاشة اردوينو TFT LCD)
  • *بطاقة مايكرو التنمية المستدامة
  • * الخشب (قمت بإعادة تدوير الأدراج الصغيرة القديمة واستخدمت بعض قطع الغيار الخشبية ، تأكد من أنه يمكنك على الأقل تكوين صندوق صغير لإخفاء اردوينو الخاص بك!

الخطوة 1: إعداد Potmeter على Arduino

إعداد بوتميتر على اردوينو
إعداد بوتميتر على اردوينو

قم بتوصيل عداد الوعاء الخاص بك كما هو موضح في الصورة

للحصول على عداد الوعاء لبدء العمل

ستحتاج إلى البدء ببعض المتغيرات أعلى الرسم التخطيطي قبل الإعداد:

الشفرة:

const int analogInPin = A0 ؛ // دبوس الإدخال التناظري الذي يتصل به مقياس الجهد

حساس intValue = 0 ؛ // قيمة القراءة من إخراج pot intValue = 0 ؛ // قيمة الإخراج إلى PWM (خرج تناظري)

في الصورة 2 ، أعرض كيف يتم تعيين مقياس الجهد في حلقة الفراغ

الشفرة:

// قراءة القيمة التناظرية:

sensorValue = analogRead (analogInPin) ؛ // قم بتعيينه إلى نطاق التناظرية: outputValue = map (sensorValue ، 0 ، 1023 ، 0 ، 255) ؛ String stuffToPrint = String (outputValue) ؛ // تغيير القيمة التناظرية:

stuffToPrint.toCharArray (نسخة مطبوعة ، 9) ؛ // نص ثابت myScreen.setTextSize (1) ؛

Serial.print ("sensor =") ؛ Serial.print (sensorValue) ؛ Serial.print ("\ t الإخراج =") ؛ Serial.println (outputValue) ؛

تأخير (50) ؛

يقوم هذا بتعيين البيانات التناظرية من مقياس الجهد إلى نطاق من 0 إلى 255 ، وسنستخدم هذا النطاق للتحكم في عرض شرائح LCD الخاص بنا

إذا كنت بحاجة إلى مساعدة في إعداد مقياس الجهد ؛ لقد استخدمت الرمز من هذا البرنامج التعليمي المفيد ، والدبابيس هي نفسها تمامًا وستعمل مع إعداد LCD في الخطوات التالية.

www.toptechboy.com/arduino/lesson-11-arduin…

الخطوة 2: إعداد شاشة LCD

إعداد شاشة LCD
إعداد شاشة LCD

قم بإعداد الدبابيس كما في المثال أعلاه.

عند القيام بذلك بشكل صحيح ، ستضيء شاشتك باللون الأبيض.

إذا كنت بحاجة إلى مساعدة إضافية أو ترغب في استخدام بعض الأمثلة البرمجية لاختبار العرض ، يمكنك مشاهدة البرنامج التعليمي الرسمي لهذه الوحدة وأمثلة الكود هنا

سنستخدم جزئيًا "رسم صورة من بطاقة SD" في الخطوة التالية.

الخطوة 3: إعداد عرض الشرائح

إعداد عرض الشرائح
إعداد عرض الشرائح

الآن بعد أن تم إعداد Potmeter و LCD ، يمكننا إعداد "عرض شرائح" باستخدام القيم المعينة لمقياس الضغط

باستخدام النطاق من 0 إلى 255 ، يمكننا الإشارة إلى نطاق معين يمكننا من خلاله تشغيل اردوينو لعرض بعض المحتوى على شاشة LCD.

المثال الأول كما هو موضح بالصورة:

if (outputValue <51) {// range one if (rangeOne == true) {rangeTwo = true ؛ myScreen.setRotation (90) ، myScreen.background (0، 0، 0) ؛ myScreen.stroke (255 ، 255 ، 255) ؛ myScreen.text ("مرحبًا ،" ، 10 ، 50) ؛ myScreen.text ("تدوير الدبوس> إلى"، 10، 60)؛ myScreen.text ("احصل على التشجيع" ، 10 ، 70) ؛ rangeOne = خطأ ؛

إذا تحول مقياس الضغط إلى نطاق أقل من 51 ، فإن الشاشة مع العرض (في الوضع الرأسي = تدوير 90) بعض النص.

لتتمكن من عرض صورة ، تأكد من تعريف SD CS الخاص بك بشكل صحيح ، أو سيفشل arduino في تهيئة SD (لذا تأكد من فحص الأسلاك الخاصة بك !!)

إذا كنت تريد التحقق من دبابيس LCD الخاصة بك ، يمكنك الرجوع إلى الدليل الرسمي uner "توصيل الشاشة"

لقد حددت رقم التعريف الشخصي SD CS الخاص بي على أنه 4 الآن لأنني قمت بخلط الأسلاك الخاصة بي ، على سبيل المثال! - يسعدني مشاركة هذا الخطأ الصغير لأنه سيوفر عليك الكثير من الوقت في البحث في الويب عن الخطأ "فشل التهيئة". التي قيل في بعض المنتديات أن الإصلاح هو الحصول على طراز معين من بطاقة SD. لذا تحقق من الأسلاك أولاً قبل شراء بطاقات SD جديدة !!

الخطوة 4: مثال كود كامل

#يشمل

# تضمين // مكتبة خاصة بالأجهزة # تضمين

#define SD_CS 4 #define CS 10 #define DC 9 #define RESET 8

const int analogInPin = A0 ؛ // دبوس الإدخال التناظري الذي يتصل به مقياس الجهد

حساس intValue = 0 ؛ // قيمة القراءة من إخراج pot intValue = 0 ؛ // قيمة الإخراج إلى نطاق النطاق المنطقي PWM (التناظري) = صحيح ؛ نطاق منطقي اثنان = صحيح ؛ نطاق منطقي: ثلاثة = صحيح ؛ نطاق منطقي أربعة = صحيح ؛ نطاق منطقي خمسة = صحيح ؛

TFT myScreen = TFT (CS ، DC ، إعادة تعيين) ؛

صورة P طباعة الحرف الثابت [9] ؛

إعداد باطل () {Serial.begin (9600) ؛ myScreen.begin () ، // حاول الوصول إلى بطاقة SD Serial.print ("تهيئة بطاقة SD …") ؛ إذا (! SD.begin (SD_CS)) {Serial.println ("فشل!") ؛ إرجاع؛ } Serial.println ("موافق!") ؛

// تهيئة ومسح شاشة GLCD myScreen.begin () ؛ myScreen.background (255 ، 255 ، 255) ؛

} حلقة فارغة () {// قراءة القيمة التناظرية: sensorValue = analogRead (analogInPin) ؛ // قم بتعيينه إلى نطاق التناظرية: outputValue = map (sensorValue ، 0 ، 1023 ، 0 ، 255) ؛ String stuffToPrint = String (outputValue) ؛ // تغيير القيمة التناظرية:

stuffToPrint.toCharArray (نسخة مطبوعة ، 9) ؛ // نص ثابت myScreen.setTextSize (1) ؛

Serial.print ("sensor =") ؛ Serial.print (sensorValue) ؛ Serial.print ("\ t الإخراج =") ؛ Serial.println (outputValue) ؛

تأخير (50) ؛

if (outputValue to "، 10، 60)؛ myScreen.text (" الحصول على التشجيع. "، 10، 70)؛ rangeOne = false؛}} if (outputValue> 52 && outputValue 102 && outputValue 154 && outputValue <205) {/ / range four if (rangeFour == true) {rangeThree = true؛ rangeFive = true؛ myScreen.setRotation (90)؛ myScreen.background (255، 255، 255)؛ // امسح صورة الشاشة = myScreen.loadImage ("quote2.bmp ")؛ // اكتب الصورة على الشاشة myScreen.image (image، 0، 0)؛ myScreen.stroke (255، 255، 255)؛ myScreen.text (" أنا فخور جدًا "، 10، 50) ؛ myScreen.text ("منكم!"، 10، 60)؛ rangeFour = false؛}}

إذا (outputValue> 206 && outputValue

موصى به: