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

استخدام وحدات Noritake Itron VFD الأقدم: 7 خطوات
استخدام وحدات Noritake Itron VFD الأقدم: 7 خطوات

فيديو: استخدام وحدات Noritake Itron VFD الأقدم: 7 خطوات

فيديو: استخدام وحدات Noritake Itron VFD الأقدم: 7 خطوات
فيديو: Noritake VFD Display - Model: CU20026CPB-S25A 2024, شهر نوفمبر
Anonim
استخدام وحدات Noritake Itron VFD الأقدم
استخدام وحدات Noritake Itron VFD الأقدم
استخدام وحدات Noritake Itron VFD الأقدم
استخدام وحدات Noritake Itron VFD الأقدم
استخدام وحدات Noritake Itron VFD الأقدم
استخدام وحدات Noritake Itron VFD الأقدم

بين الحين والآخر تصادف أجزاء مثيرة للاهتمام على موقع ئي باي ، من الأصدقاء أو مجرد التجذير في المتاجر المستعملة. أحد الأمثلة على ذلك كان عرضًا ضوئيًا ضخمًا من نوع 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 - كل شيء للصانعين وعشاق الإلكترونيات ، مع التوصيل المجاني في جميع أنحاء العالم.

موصى به: