جدول المحتويات:
- الخطوة 1:
- الخطوة 2:
- الخطوه 3:
- الخطوة الرابعة:
- الخطوة الخامسة:
- الخطوة 6: التحكم في العرض
- الخطوة 7: وضع كل ذلك معًا
فيديو: استخدام وحدات Noritake Itron VFD الأقدم: 7 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:39
بين الحين والآخر تصادف أجزاء مثيرة للاهتمام على موقع ئي باي ، من الأصدقاء أو مجرد التجذير في المتاجر المستعملة. أحد الأمثلة على ذلك كان عرضًا ضوئيًا ضخمًا من نوع Noritake Itron بحجم 40 × 2 من الفلورسنت الفراغي من عام 1994 (أو ما قبله) والذي تم نقله من العميل.
في الأصل بدا الأمر معقدًا للغاية ، ولكن بعد قضاء بعض الوقت في العثور على أوراق البيانات واكتُشف أن لها واجهة تسلسلية بسيطة - وبقليل من العمل نجحنا في تشغيلها ، لذا اقرأ إذا كنت مهتمًا بـ VFDs الكلاسيكية أو لديك وحدة مماثلة.
الخطوة 1:
يتم تحديد معدل الباود للواجهة التسلسلية بواسطة وسادات العبور الموجودة على لوحة الدوائر المطبوعة.
الخطوة 2:
لذا فإن مقارنة الجدول أعلاه مع وصلات العبور في الوحدة النمطية لدينا يعطينا سرعة بيانات تبلغ 19200 بت في الثانية بدون تكافؤ. عظيم - يمكننا بسهولة إنشاء مثل هذا الاتصال مع متحكم بإخراج تسلسلي ومستويات منطقية 5V ؛ لأمثلة لدينا ، سنستخدم لوحة متوافقة مع Arduino.
الخطوه 3:
يعد توصيل الأسلاك في VFD أمرًا بسيطًا - انظر وصلات العبور البيضاء المسمى CN2 كما هو موضح سابقًا. Pin 1 هو 5V (تحتاج إلى مصدر خارجي يمكنه توفير ما يصل إلى 700 مللي أمبير) ، والدبوس 2 إلى Arduino digital pin 7 ، والدبوس 3 إلى Arduino ومصدر الطاقة GND.
نحن نستخدم Arduino D7 مع برنامج تسلسلي بدلاً من TX حتى لا تعرض الشاشة القمامة عند تحميل رسم تخطيطي. إذن ، الأمر يتعلق ببساطة بإرسال نص إلى الشاشة ، على سبيل المثال ، إليك رسم توضيحي سريع:
// العمل مع وحدات Noritake Itron VFD - نموذج CU40026SCPB-T20A # تتضمن SoftwareSerial VFD (6 ، 7) ؛ // RX ، TX
الإعداد باطل()
{VFD.begin (19200) ؛ }
حلقة فارغة()
{VFD.print ("Hello، world. This is Noritake VFD")؛ // يمكنك تفريغ النص {} بينما (1) ؛ }
الخطوة الرابعة:
مما يؤدي إلى ما يلي …
الخطوة الخامسة:
إذا لم تكن حريصًا على لون الشاشة أو شدتها ، فجرّب القليل من مادة Perspex فوق الجزء العلوي - على سبيل المثال …
الخطوة 6: التحكم في العرض
في هذه المرحلة ، ستحتاج إلى ورقة بيانات ورقة البيانات. كما رأيت سابقًا ، تعد كتابة النص أمرًا بسيطًا للغاية - ما عليك سوى استخدام وظائف.print. ومع ذلك ، قد ترغب في إرسال أحرف فردية ، بالإضافة إلى أوامر خاصة للتحكم في جوانب العرض. تم توضيحها في ورقة البيانات - راجع جداول "أوامر البرنامج" و "خطوط الأحرف".
إذا كنت بحاجة إلى إرسال أوامر فردية - على سبيل المثال "clear display" وهي 0x0E ، فاستخدم أمر كتابة. ، مثل:
VFD.write (0x0E) ؛ // عرض واضح
توجد بعض الأوامر في تنسيق رموز الهروب (تذكر تلك؟) لذلك تحتاج إلى إرسال ESC ثم البايت التالي ، على سبيل المثال لتغيير السطوع إلى 50٪:
VFD.write (0x1B) ؛ // ESC VFD.write (0x4C) ؛ // السطوع VFD.write (0x40) ؛ // 50٪ سطوع
مسلحًا بهذه المعرفة وأوراق البيانات ، يمكنك الآن تنفيذ جميع الأوامر. وفقًا لصحيفة البيانات ، من الممكن تغيير الخطوط ، ولكن بغض النظر عن نوع الجهاز أو الأمر الذي جربناه ، فلن يتزحزح عن خط katakana الياباني. قد تختلف شاشتك. إذا كنت تستخدم وظيفة "كتابة أولوية الشاشة" ، فعليك الانتباه إلى ورقة البيانات فيما يتعلق بوقت "الانشغال" الممتد عن طريق تأخير عمليات الكتابة اللاحقة على الشاشة بمقدار مللي ثانية.
الخطوة 7: وضع كل ذلك معًا
بدلاً من شرح كل أمر ممكن ، قمت بوضع الأوامر الشائعة داخل الوظائف الموثقة في الرسم التوضيحي أدناه ، والذي يتبعه مقطع فيديو سريع للرسم أثناء التشغيل.
// العمل مع وحدات Noritake Itron VFD - موديل CU40026SCPB-T20A // John Boxall 2013
#يشمل
SoftwareSerial VFD (6 ، 7) ؛ // rx، tx
الإعداد باطل()
{VFD.begin (19200) ؛ // ضبط السرعة للمنفذ التسلسلي للبرنامج resetVFD () ؛ VFDclearsceen () ، // VFD.write (0x12) ؛ // وضع التمرير العمودي (تشغيل)}
إعادة تعيين باطل VFD ()
// يقوم بإعادة تعيين البرنامج على وحدة تحكم VFD {VFD.write (0x1B) ؛ // ESC VFD.write (0x49) ؛ // إعادة تعيين البرنامج}
VFDnewline () باطلة
// يحرك المؤشر لبدء السطر التالي {VFD.write (0x0D) ؛ // حرف إرجاع VFD.write (0x0A) ؛ // سطر تغذية }
باطل VFDclearsceen ()
// يحرك المؤشر إلى أعلى اليسار ويمسح العرض {VFD.write (0x0E) ؛ // مسح عرض VFD.write (0x0C) ؛ // تغذية النموذج - المؤشر لأعلى اليسار}
سطوع VFD باطلة (كمية int)
// يعين سطوع VFD - 25/50/75/100٪ // يستخدم تسلسلات ESC {switch (amount) {case 25: VFD.write (0x1B) ؛ // ESC VFD.write (0x4C) ؛ // السطوع VFD.print (0) ؛ // 25٪ كسر سطوع ؛ الحالة 50: VFD.write (0x1B) ؛ // ESC VFD.write (0x4C) ؛ // السطوع VFD.write (0x40) ؛ // 50٪ كسر سطوع ؛ الحالة 75: VFD.write (0x1B) ؛ // ESC VFD.write (0x4C) ؛ // السطوع VFD.write (0x80) ؛ // 75٪ كسر سطوع ؛ الحالة 100: VFD.write (0x1B) ؛ // ESC VFD.write (0x4C) ؛ // السطوع VFD.write (0xC0) ؛ // 100٪ سطوع}}
VFDchars باطلة ()
// تشغيل عبر الأحرف للخط المحدد {لـ (int i = 21 ؛ i <256 ؛ i ++) {VFD.write (0x16) ؛ // تسطير المؤشر خارج VFD.write (i) ؛ تأخير (100) ؛ }}
تحرك باطل (موضع بايت)
// يحرك المؤشر - الصف العلوي هو 0 ~ 39 ، الصف السفلي 40 ~ 79 // يجب إيقاف وضع التمرير العمودي إذا تم استخدامه {VFD.write (0x1B) ؛ // ESC VFD.write (0x48) ؛ // حرك المؤشر VFD.write (الموضع) ؛ // موقعك }
حلقة فارغة()
{VFD.write (0x16) ؛ // ضع خط تحت المؤشر خارج VFD.print ("مرحبًا ، العالم - السطر الأول.") ؛ // يمكنك تفجير تأخير النص (1000) ؛ VFDnewline () ، VFD.print ("مرحبًا ، العالم - السطر الثاني.") ؛ تأخير (1000) ؛ VFDclearsceen () ، VFDbrightness (25) ؛ VFD.print ("*** 25٪ سطوع ***") ؛ تأخير (1000) ؛ VFDclearsceen () ، VFDbrightness (50) ؛ VFD.print ("*** 50٪ سطوع ***") ؛ تأخير (1000) ؛ VFDclearsceen () ، VFDbrightness (75) ؛ VFD.print ("*** 75٪ سطوع ***") ؛ تأخير (1000) ؛ VFDclearsceen () ، VFDbrightness (100) ؛ VFD.print ("*** 100٪ سطوع ***") ؛ تأخير (1000) ؛ VFDclearsceen () ،
VFDchars () ،
VFDclearsceen () ،
لـ (int i = 0 ؛ i <80 ؛ i ++) {VFD.write (0x16) ؛ // تسطير المؤشر قبالة moveCursor (i) ؛ VFD.print ("X") ؛ تأخير (100) ؛ moveCursor (i) ؛ VFD.print ("") ؛ } VFDclearsceen () ، }
نأمل أن تكون قد وجدت هذا ممتعًا ومفيدًا.
هذا المنشور مقدم من pmdway.com - كل شيء للصانعين وعشاق الإلكترونيات ، مع التوصيل المجاني في جميع أنحاء العالم.
موصى به:
وحدات البكسل الحية - تخيل أن التكنولوجيا لها حياة: 4 خطوات (بالصور)
Living Pixels - Imagine Technology Has Life: نظرًا لأن منتجات المنزل الذكي أكثر شيوعًا في حياتنا ، فقد بدأت بالتفكير في العلاقة بين الأشخاص وهذه المنتجات. إذا أصبحت منتجات المنزل الذكي يومًا ما جزءًا لا غنى عنه في حياة الجميع ، فما المواقف التي يجب أن نتخذها
استخدام وحدات ساعة الوقت الحقيقي DS1307 و DS3231 مع Arduino: 3 خطوات
استخدام وحدات الساعة في الوقت الفعلي DS1307 و DS3231 مع Arduino: نستمر في تلقي طلبات حول كيفية استخدام وحدات الساعة في الوقت الحقيقي DS1307 و DS3231 مع Arduino من مصادر مختلفة - لذلك هذا هو أول برنامج تعليمي من جزأين حول كيفية استخدامها. في هذا البرنامج التعليمي من Arduino ، لدينا وحدتان للساعة في الوقت الفعلي لنا
استخدام وحدات التحكم الدقيقة لتشغيل ومراقبة نظام الري عن بعد: 4 خطوات
استخدام وحدات التحكم الدقيقة لتشغيل ومراقبة نظام الري عن بعد: المزارعون ومشغلو الدفيئة من أجل نظام ري آلي منخفض التكلفة. في هذا المشروع ، ندمج مستشعر رطوبة التربة الإلكتروني مع متحكم دقيق لري النباتات تلقائيًا عندما تكون التربة جافة جدًا دون تدخل بشري
كيفية استخدام وحدات التحكم غير المدعومة بجهاز IOS 9.3.5: 23 خطوة
كيفية استخدام وحدات التحكم غير المدعومة مع جهاز IOS 9.3.5: المواد المطلوبة: وحدة تحكم PlayStation 4 كابل شحن خفيف للكمبيوتر المحمول يعمل بنظام Windows 10 iPod Touch من الجيل الخامس
كيفية استخدام Mac Terminal ، وكيفية استخدام الوظائف الرئيسية: 4 خطوات
كيفية استخدام Mac Terminal ، وكيفية استخدام الوظائف الرئيسية: سنعرض لك كيفية فتح محطة MAC. سنعرض لك أيضًا بعض الميزات داخل Terminal ، مثل ifconfig وتغيير الأدلة والوصول إلى الملفات و arp. سيسمح لك Ifconfig بالتحقق من عنوان IP الخاص بك وإعلان MAC الخاص بك