فهرست مطالب:

استفاده از ماژول های قدیمی Noritake Itron VFD: 7 مرحله
استفاده از ماژول های قدیمی Noritake Itron VFD: 7 مرحله

تصویری: استفاده از ماژول های قدیمی Noritake Itron VFD: 7 مرحله

تصویری: استفاده از ماژول های قدیمی Noritake Itron VFD: 7 مرحله
تصویری: وقتی شب خواستگاری میری تو اتاق 😁 مچتو میگیرن 2024, جولای
Anonim
استفاده از ماژول های قدیمی Noritake Itron VFD
استفاده از ماژول های قدیمی Noritake Itron VFD
استفاده از ماژول های قدیمی Noritake Itron VFD
استفاده از ماژول های قدیمی Noritake Itron VFD
استفاده از ماژول های قدیمی Noritake Itron VFD
استفاده از ماژول های قدیمی Noritake Itron VFD

بارها و بارها در ebay با قسمت های جالبی روبرو می شوید ، از دوستان یا فقط در فروشگاه های دست دوم. یکی از نمونه های این نمایشگر عظیم فلورسنت خلاء Noritake Itron 40 * 2 از 1994 (یا قبل از آن) بود که از مشتری ارسال شد.

در ابتدا بسیار پیچیده به نظر می رسید ، با این حال پس از مدتی گذراندن داده ها ، مشخص شد که یک رابط سریال ساده وجود دارد - و با کمی کار ما آن را کار کردیم ، بنابراین اگر به VFD های کلاسیک علاقه دارید ، ادامه مطلب را بخوانید. یا واحد مشابهی داشته باشید

مرحله 1:

تصویر
تصویر

سرعت باود رابط سریال توسط پدهای جامپر روی PCB تعیین می شود.

گام 2:

تصویر
تصویر

بنابراین مقایسه جدول بالا با پرش کننده های ماژول ما سرعت داده 19200 bps را بدون برابری به ما می دهد. عالی - ما به راحتی می توانیم چنین ارتباطی را با میکروکنترلر با خروجی سریال و سطح منطقی 5V ایجاد کنیم. برای نمونه های ما از یک برد سازگار با آردوینو استفاده خواهیم کرد.

مرحله 3:

سیم کشی VFD ساده است - پرش کننده های سفید با نشان CN2 را همانطور که قبلاً نشان داده شده است ، ببینید. پین 1 5 ولت است (شما نیاز به منبع خارجی دارید که می تواند تا 700 میلی آمپر ارائه دهد) ، پین 2 به پین دیجیتال آردوینو 7 و پین 3 به آردوینو و منبع تغذیه GND است.

ما از آردوینو D7 با سریال نرم افزاری به جای TX استفاده می کنیم تا هنگام بارگیری طرح ، زباله در صفحه نمایش داده نشود. سپس موضوع فقط ارسال متن به صفحه نمایش است ، به عنوان مثال در اینجا یک طرح نمایشی سریع وجود دارد:

// کار با ماژول های Noritake Itron VFD - مدل CU40026SCPB -T20A #شامل نرم افزارهای سری VFD (6 ، 7) ؛ // RX ، TX

void setup ()

{VFD.begin (19200) ؛ }

حلقه خالی ()

{VFD.print ("سلام ، جهان. این یک VFD Noritake است") ؛ // شما می توانید متن را انجام دهید {} while (1)؛ }

مرحله 4:

تصویر
تصویر

که با موارد زیر نتیجه می گیرد…

مرحله 5:

تصویر
تصویر

اگر علاقه ای به رنگ یا شدت صفحه نمایش ندارید ، از Perspex در بالای صفحه استفاده کنید - برای مثال…

مرحله 6: کنترل صفحه نمایش

در این مرحله شما به برگه داده ورق نیاز دارید. همانطور که قبلاً دیدید ، نوشتن متن بسیار ساده است - فقط از توابع.print استفاده کنید. با این حال ممکن است بخواهید کاراکترهای جداگانه و همچنین دستورات ویژه ای را برای کنترل جنبه های نمایشگر ارسال کنید. این موارد در برگه داده نشان داده شده است - جداول "دستورات نرم افزاری" و "قلم های کاراکتر" را ببینید.

در صورت نیاز به ارسال دستورات واحد - برای مثال "Clear display" که 0x0E است ، از دستور.write استفاده کنید ، مانند:

VFD.write (0x0E) ؛ // نمایش روشن

برخی از دستورات در قالب کدهای فرار هستند (آن ها را به خاطر دارید؟) بنابراین باید ESC و سپس بایت زیر را برای مثال برای تغییر میزان روشنایی به 50٪ ارسال کنید:

VFD.write (0x1B) ؛ // ESC VFD.write (0x4C) ؛ // روشنایی VFD.write (0x40) ؛ // 50٪ روشنایی

با داشتن این دانش و برگه های داده ، اکنون می توانید تمام دستورات را اجرا کنید. با توجه به برگه اطلاعات ، امکان تغییر فونت ها وجود دارد ، با این حال ، صرف نظر از اینکه کدام سخت افزار یا فرمان سخت افزاری را امتحان کرده ایم ، از فونت katakana ژاپنی جدا نمی شود. ممکن است صفحه نمایش شما متفاوت باشد. اگر از تابع "نوشتن اولویت صفحه" استفاده می کنید ، با تأخیر در نوشتن های بعدی بر روی صفحه نمایش با یک میلی ثانیه به برگه اطلاعات با توجه به مدت زمان طولانی "مشغول" توجه کنید.

مرحله 7: همه چیز را با هم ترکیب کنید

به جای توضیح هر یک از دستورات ممکن ، من توابع متداول داخل توابع مستند را در طرح نمایشی زیر قرار داده ام ، که به دنبال آن یک فیلم سریع از این طرح در حال انجام است.

// کار با ماژول های Noritake Itron VFD - مدل CU40026SCPB -T20A // جان باکسال 2013

#عبارتند از

SoftwareSerial VFD (6 ، 7) ؛ // rx ، tx

void setup ()

{VFD.begin (19200) ؛ // تنظیم سرعت برای پورت سریال نرم افزار resetVFD ()؛ VFDclearsceen ()؛ // VFD.write (0x12) ؛ // حالت پیمایش عمودی (روشن)}

void resetVFD ()

// تنظیم مجدد نرم افزار را روی کنترل کننده VFD {VFD.write (0x1B) انجام می دهد ؛ // ESC VFD.write (0x49) ؛ // بازنشانی نرم افزار}

void VFDnewline ()

// مکان نما را برای شروع خط بعدی {VFD.write (0x0D) حرکت می دهد ؛ // واگن VFD.write (0x0A) ؛ // خوراک خط}

void VFDclearsceen ()

// مکان نما را به بالا سمت چپ منتقل می کند و صفحه {VFD.write (0x0E) را پاک می کند. // پاک کردن صفحه نمایش VFD.write (0x0C) ؛ // فرم خوراک - مکان نما به بالا سمت چپ}

void VFD روشنایی (مقدار int)

// روشنایی VFD را تنظیم می کند - 25/50/75/100٪ // از توالی های ESC استفاده می کند {سوئیچ (مقدار) {مورد 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٪ روشنایی}}

void VFDchars ()

// از طریق کاراکترهای فونت انتخاب شده {برای (int i = 21؛ i <256؛ i ++) {VFD.write (0x16)؛ // نشانگر زیر خط VFD.write (i)؛ تأخیر (100) ؛ }}

void moveCursor (موقعیت بایت)

// مکان نما را حرکت می دهد - ردیف بالا 0 ~ 39 ، ردیف پایینی 40 ~ 79 // در صورت استفاده حالت اسکرول عمودی باید خاموش شود {VFD.write (0x1B) ؛ // ESC VFD.write (0x48) ؛ // حرکت مکان نما VFD.write (موقعیت) ؛ // محل }

حلقه خالی ()

{VFD.write (0x16) ؛ // نشانگر زیر خط VFD.print ("سلام ، خط جهان اول.") ؛ // می توانید تأخیر متن (1000) را منفجر کنید VFDnewline () ؛ VFD.print ("سلام ، جهان - خط دوم.") ؛ تاخیر (1000) ؛ VFDclearsceen ()؛ VFD روشنایی (25) ؛ VFD.print ("*** 25٪ روشنایی ***") ؛ تاخیر (1000) ؛ VFDclearsceen ()؛ VFD روشنایی (50) ؛ VFD.print ("*** 50٪ روشنایی ***") ؛ تاخیر (1000) ؛ VFDclearsceen ()؛ VFD روشنایی (75) ؛ VFD.print ("*** 75٪ روشنایی ***") ؛ تاخیر (1000) ؛ VFDclearsceen ()؛ VFD روشنایی (100) ؛ VFD.print ("*** 100٪ روشنایی ***") ؛ تاخیر (1000) ؛ VFDclearsceen ()؛

VFDchars () ؛

VFDclearsceen ()؛

برای (int i = 0 ؛ i <80؛ i ++) {VFD.write (0x16) ؛ // underline cursor off moveCursor (i)؛ VFD.print ("X") ؛ تأخیر (100) ؛ moveCursor (i) ؛ VFD.print ("") ؛ } VFDclearsceen ()؛ }

امیدواریم این مطلب برای شما جالب و مفید بوده باشد.

این پست توسط pmdway.com - همه چیز برای سازندگان و علاقمندان به لوازم الکترونیکی ، با ارسال رایگان در سراسر جهان به شما ارائه می شود.

توصیه شده: