Isi kandungan:
- Langkah 1:
- Langkah 2:
- Langkah 3:
- Langkah 4:
- Langkah 5:
- Langkah 6: Mengawal Paparan
- Langkah 7: Menggabungkan Semuanya
Video: Menggunakan Modul VFD Noritake Itron yang Lebih Lama: 7 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:09
Berkali-kali anda menjumpai bahagian menarik di ebay, dari rakan atau hanya mencari di kedai terpakai. Salah satu contohnya ialah paparan pendarfluor vakum watak Noritake Itron 40 x 2 yang besar dari tahun 1994 (atau lebih awal) yang diteruskan dari pelanggan.
Pada asalnya kelihatan agak rumit, namun setelah meluangkan masa lembaran data dijumpai dan didapati mempunyai antara muka bersiri yang ringkas - dan dengan sedikit kerja, kami berjaya, jadi baca jika anda berminat dengan VFD klasik atau mempunyai unit yang serupa.
Langkah 1:
Kadar baud antara muka bersiri ditentukan oleh jumper pad pada PCB.
Langkah 2:
Oleh itu, membandingkan jadual di atas dengan penerjun pada modul kami memberi kami kelajuan data 19200 bps tanpa pariti. Hebat - kita boleh membuat hubungan seperti ini dengan pengawal mikro dengan output bersiri dan tahap logik 5V; untuk contoh kami, kami akan menggunakan papan serasi dengan Arduino.
Langkah 3:
Pemasangan VFD adalah mudah - lihat pelompat putih berlabel CN2 seperti yang ditunjukkan sebelumnya. Pin 1 berukuran 5V (anda memerlukan bekalan luaran yang dapat menawarkan hingga 700 mA), pin 2 ke pin digital Arduino 7, dan pin 3 ke Arduino dan bekalan kuasa GND.
Kami menggunakan Arduino D7 dengan siri perisian dan bukannya TX sehingga paparan tidak menampilkan sampah ketika lakaran sedang dimuat naik. Oleh itu, hanya sekadar menghantar teks ke paparan, contohnya adalah lakaran demonstrasi ringkas:
// Bekerja dengan modul Noritake Itron VFD - model CU40026SCPB-T20A #masuk perisianSerial VFD (6, 7); // RX, TX
persediaan tidak sah ()
{VFD.begin (19200); }
gelung kosong ()
{VFD.print ("Hello, world. Ini adalah Noritake VFD"); // Anda boleh mengeluarkan teks {} sambil (1); }
Langkah 4:
Yang menghasilkan dengan yang berikut …
Langkah 5:
Sekiranya anda tidak berminat dengan warna atau intensiti paparan, cubalah beberapa Perspex di atas - contohnya…
Langkah 6: Mengawal Paparan
Pada ketika ini anda memerlukan lembaran data lembaran data. Seperti yang anda lihat sebelumnya, menulis teks sangat mudah - hanya gunakan fungsi.print. Walau bagaimanapun, anda mungkin ingin menghantar watak individu, serta arahan khas untuk mengawal aspek paparan. Ini dijelaskan dalam lembaran data - lihat tabel "Perintah Perisian" dan "Font Karakter".
Sekiranya anda perlu mengirim satu perintah - misalnya "jelas paparan" yang 0x0E, gunakan perintah.write, seperti:
VFD.write (0x0E); // paparan yang jelas
Beberapa arahan dalam format kod pelarian (ingat?) Jadi anda perlu menghantar ESC kemudian bait berikut, misalnya untuk mengubah kecerahan menjadi 50%:
VFD.write (0x1B); // ESC VFD.write (0x4C); // kecerahan VFD.write (0x40); // Kecerahan 50%
Dengan berbekalkan pengetahuan dan lembaran data anda kini dapat melaksanakan semua perintah. Menurut lembaran data adalah mungkin untuk menukar fon namun tidak kira apa jumper perkakasan atau perintah yang kami cuba tidak akan berubah dari fon katakana Jepun. Skrin anda mungkin berbeza. Jika anda menggunakan fungsi "tulis prioritas layar", perhatikan lembaran data berkenaan dengan waktu "sibuk" yang diperpanjang dengan menunda penulisan berikutnya ke paparan satu milisaat.
Langkah 7: Menggabungkan Semuanya
Daripada menjelaskan setiap perintah yang mungkin, saya telah meletakkan yang biasa di dalam fungsi yang didokumentasikan dalam lakaran demonstrasi di bawah, yang diikuti oleh video ringkas lakaran yang sedang beroperasi.
// Bekerja dengan modul Noritake Itron VFD - model CU40026SCPB-T20A // John Boxall 2013
#sertakan
SoftwareSerial VFD (6, 7); // rx, tx
persediaan tidak sah ()
{VFD.begin (19200); // tetapkan kelajuan untuk tetapan semula port siri perisianVFD (); VFDclearsceen (); // VFD.write (0x12); // mod tatal menegak (aktif)}
kekosongan semula VFD ()
// melakukan tetapan semula perisian pada pengawal VFD {VFD.write (0x1B); // ESC VFD.write (0x49); // tetapan semula perisian}
batal VFD Talian Baru ()
// menggerakkan kursor ke permulaan baris seterusnya {VFD.write (0x0D); // carriage return VFD.write (0x0A); // suapan baris}
batal VFDclearsceen ()
// menggerakkan kursor ke kiri atas dan membersihkan paparan {VFD.write (0x0E); // paparan jelas VFD.write (0x0C); // suapan borang - kursor ke kiri atas}
kekosongan VFDbrightness (jumlah int)
// menetapkan kecerahan VFD - 25/50/75/100% // menggunakan urutan ESC {suis (jumlah) {kes 25: VFD.write (0x1B); // ESC VFD.write (0x4C); // kecerahan VFD.print (0); // Jeda kecerahan 25%; kes 50: VFD.write (0x1B); // ESC VFD.write (0x4C); // kecerahan VFD.write (0x40); // Jeda kecerahan 50%; kes 75: VFD.write (0x1B); // ESC VFD.write (0x4C); // kecerahan VFD.write (0x80); // 75% penembusan kecerahan; kes 100: VFD.write (0x1B); // ESC VFD.write (0x4C); // kecerahan VFD.write (0xC0); // 100% kecerahan}}
batal VFDchars ()
// jalankan watak untuk font yang dipilih {untuk (int i = 21; i <256; i ++) {VFD.write (0x16); // garis bawah kursor dari VFD.write (i); kelewatan (100); }}
kekosongan bergerakKursor (kedudukan bait)
// menggerakkan kursor - baris atas adalah 0 ~ 39, baris bawah adalah 40 ~ 79 // mod tatal menegak mesti dimatikan jika digunakan {VFD.write (0x1B); // ESC VFD.write (0x48); // gerakkan kursor VFD.write (kedudukan); // lokasi}
gelung kosong ()
{VFD.write (0x16); // garis bawah kursor dari VFD.print ("Hello, world - line one."); // Anda boleh melancarkan kelewatan teks (1000); Talian Baru VFD (); VFD.print ("Hello, world - baris kedua."); kelewatan (1000); VFDclearsceen (); VFDbrightness (25); VFD.print ("*** 25% kecerahan ***"); kelewatan (1000); VFDclearsceen (); VFDbrightness (50); VFD.print ("*** 50% kecerahan ***"); kelewatan (1000); VFDclearsceen (); VFDbrightness (75); VFD.print ("*** 75% kecerahan ***"); kelewatan (1000); VFDclearsceen (); VFDbrightness (100); VFD.print ("*** 100% kecerahan ***"); kelewatan (1000); VFDclearsceen ();
VFDchars ();
VFDclearsceen ();
untuk (int i = 0; i <80; i ++) {VFD.write (0x16); // gariskan kursor off moveCursor (i); Cetakan VFD ("X"); kelewatan (100); moveCursor (i); VFD.print (""); } VFDclearsceen (); }
Kami harap anda dapati ini menarik dan bermanfaat.
Catatan ini disampaikan kepada anda oleh pmdway.com - semuanya untuk pembuat dan peminat elektronik, dengan penghantaran percuma ke seluruh dunia.
Disyorkan:
Neopixel Attiny Bintang Krismas yang Lebih Besar dan Lebih Baik85: 3 Langkah (dengan Gambar)
Neopixel Attiny Bintang Krismas yang Lebih Besar dan Peningkatan85: Tahun lalu saya membuat bintang Krismas bercetak 3D kecil, lihat https://www.instructables.com/id/Christmas-Star-LE..Pada tahun ini saya membuat bintang yang lebih besar dari helai daripada 50 Neopixels (5V WS2811). Bintang yang lebih besar ini mempunyai lebih banyak corak (saya masih menambah dan memperbaiki
Lebih Selamat Lebih Baik: Menjadikan Stesen Keretapi Lebih Selamat: 7 Langkah
Lebih Selamat Lebih Baik: Menjadikan Stesen Kereta Api Lebih Selamat: Banyak stesen kereta api hari ini tidak selamat kerana kekurangan keselamatan, halangan, dan amaran kereta api masuk. Kami melihat perlunya diperbaiki. Untuk menyelesaikan masalah ini, kami membuat Safer Better. Kami menggunakan sensor getaran, sensor gerakan, dan
Nafas Kehidupan Baru Ke Papan Kekunci Komputer Din yang Lebih Lama: 5 Langkah (dengan Gambar)
Nafas Kehidupan Baru Ke Papan Kekunci Komputer Din yang Lebih Lama: Hai, ini adalah arahan pertama saya. Setelah menyelesaikannya, saya menyedari betapa sukar dan memakan masa untuk membuat sesuatu seperti ini. Oleh itu, terima kasih kepada semua orang di luar sana yang sudi melalui semua masalah untuk berkongsi pengetahuan anda dengan yang lain
DIY Pengecas USB Tahan Lama yang Lebih Cekap atau APA-APA Pengecas: 6 Langkah
DIY Pengecas USB Tahan Lama yang Lebih Cekap atau APA-APA Pengecas: Dalam tutorial ini saya akan membimbing anda untuk menjadikan salah satu pengecas USB tahan lama yang paling berkesan di luar sana. Pada masa ini terdapat dua jenis pengecas di luar sana. Pengecas pertama mengambil voltan yang lebih tinggi dan mengurangkan voltan sehingga menghasilkan haba, saya
Jadikan Shock Kereta RC Anda Lebih pendek untuk Pengendalian yang Lebih Baik pada Kelajuan Tinggi: 5 Langkah
Jadikan Shock Kereta RC Anda Lebih pendek untuk Pengendalian yang Lebih Baik pada Kelajuan Tinggi: Dalam Instruksional ini, saya akan menunjukkan kepada anda cara memendekkan kejutan anda sehingga anda dapat membawa kereta anda lebih dekat ke tanah sehingga anda dapat mengambil putaran kelajuan yang lebih tinggi tanpa mengepakkan. Saya akan menggunakan Instruksional lain mengenai cara melakukan penyelenggaraan kejutan pada kereta anda sehingga