Daftar Isi:

Menggunakan Modul PKS Noritake Itron yang Lebih Lama: 7 Langkah
Menggunakan Modul PKS Noritake Itron yang Lebih Lama: 7 Langkah

Video: Menggunakan Modul PKS Noritake Itron yang Lebih Lama: 7 Langkah

Video: Menggunakan Modul PKS Noritake Itron yang Lebih Lama: 7 Langkah
Video: My first encounter with VFD! 2024, Juli
Anonim
Menggunakan Modul PKS Noritake Itron yang Lebih Lama
Menggunakan Modul PKS Noritake Itron yang Lebih Lama
Menggunakan Modul PKS Noritake Itron yang Lebih Lama
Menggunakan Modul PKS Noritake Itron yang Lebih Lama
Menggunakan Modul PKS Noritake Itron yang Lebih Lama
Menggunakan Modul PKS Noritake Itron yang Lebih Lama

Sesekali Anda menemukan bagian menarik di ebay, dari teman atau hanya mencari-cari di toko barang bekas. Salah satu contohnya adalah layar fluorescent vakum karakter Noritake Itron 40 x 2 besar dari tahun 1994 (atau sebelumnya) yang diteruskan dari klien.

Awalnya terlihat cukup rumit, namun setelah menghabiskan beberapa waktu lembar data ditemukan dan ternyata memiliki antarmuka serial yang sederhana – dan dengan sedikit kerja kami membuatnya berfungsi, jadi baca terus jika Anda tertarik dengan VFD klasik atau memiliki unit yang serupa.

Langkah 1:

Gambar
Gambar

Baud rate antarmuka serial ditentukan oleh bantalan jumper pada PCB.

Langkah 2:

Gambar
Gambar

Jadi membandingkan tabel di atas dengan jumper pada modul kami memberi kami kecepatan data 19200 bps tanpa paritas. Hebat – kita dapat dengan mudah membuat koneksi seperti itu dengan mikrokontroler dengan output serial dan level logika 5V; untuk contoh kami, kami akan menggunakan papan yang kompatibel dengan Arduino.

Langkah 3:

Menghubungkan VFD sederhana – lihat jumper putih berlabel CN2 seperti yang ditunjukkan sebelumnya. Pin 1 adalah 5V (Anda memerlukan catu daya eksternal yang dapat menawarkan hingga 700 mA), pin 2 ke pin digital 7 Arduino, dan pin 3 ke Arduino dan catu daya GND.

Kami menggunakan Arduino D7 dengan software serial bukan TX sehingga tampilan tidak menampilkan sampah saat sketsa sedang diunggah. Maka itu hanya masalah mengirim teks ke layar, misalnya berikut ini sketsa demonstrasi cepat:

// Bekerja dengan modul PKS Noritake Itron - model CU40026SCPB-T20A #termasuk SoftwareSerial VFD(6, 7); // RX, TX

batalkan pengaturan()

{ PKS.mulai(19200); }

lingkaran kosong()

{ VFD.print("Halo, dunia. Ini adalah PKS Noritake "); // Anda bisa meledakkan teks do {} while (1); }

Langkah 4:

Gambar
Gambar

Yang hasilnya dengan berikut…

Langkah 5:

Gambar
Gambar

Jika Anda tidak tertarik dengan warna atau intensitas tampilan, cobalah beberapa Perspex di atasnya – misalnya…

Langkah 6: Mengontrol Tampilan

Pada titik ini Anda memerlukan lembar data lembar data. Seperti yang Anda lihat sebelumnya, menulis teks sangat sederhana – cukup gunakan fungsi.print. Namun Anda mungkin ingin mengirim karakter individu, serta perintah khusus untuk mengontrol aspek tampilan. Ini diuraikan dalam lembar data – lihat tabel “Perintah Perangkat Lunak” dan “Font Karakter”.

Jika Anda perlu mengirim satu perintah – misalnya “clear display” yaitu 0x0E, gunakan perintah.write, seperti:

PKS.tulis (0x0E); // hapus tampilan

Beberapa perintah dalam format kode pelarian (ingat itu?) Jadi Anda perlu mengirim ESC kemudian byte berikut, misalnya untuk mengubah kecerahan menjadi 50%:

PKS.tulis (0x1B); // ESC VFD.tulis(0x4C); // kecerahan VFD.tulis (0x40); // 50% kecerahan

Berbekal pengetahuan itu dan lembar data, Anda sekarang dapat menjalankan semua perintah. Menurut lembar data dimungkinkan untuk mengubah font namun tidak peduli apa jumper perangkat keras atau perintah yang kami coba, itu tidak akan bergerak dari font katakana Jepang. Layar Anda mungkin berbeda. Jika Anda menggunakan fungsi "penulisan prioritas layar" perhatikan lembar data sehubungan dengan waktu "sibuk" yang diperpanjang dengan menunda penulisan berikutnya ke tampilan selama satu milidetik.

Langkah 7: Menyatukan Semuanya

Alih-alih menjelaskan setiap dan setiap perintah yang mungkin, saya telah menempatkan yang umum di dalam fungsi yang didokumentasikan dalam sketsa demonstrasi di bawah ini, yang diikuti dengan video singkat dari sketsa yang sedang beroperasi.

// Bekerja dengan modul Noritake Itron VFD - model CU40026SCPB-T20A// John Boxall 2013

#termasuk

Perangkat LunakSerial PKS(6, 7); //rx, tx

batalkan pengaturan()

{ PKS.mulai(19200); // atur kecepatan untuk resetVFD port serial perangkat lunak(); VFDclearsceen(); // PKS.tulis(0x12); // mode gulir vertikal (aktif) }

batalkan resetVFD()

// melakukan reset perangkat lunak pada pengontrol VFD { VFD.write(0x1B); // ESC VFD.tulis (0x49); // setel ulang perangkat lunak }

batalkan baris baru VFD()

// memindahkan kursor ke awal baris berikutnya { VFD.write(0x0D); // carriage return VFD.write(0x0A); // umpan baris }

batal VFDclearsceen()

// memindahkan kursor ke kiri atas dan menghapus tampilan { VFD.write(0x0E); // hapus tampilan VFD.write(0x0C); // form feed - kursor ke kiri atas }

void VFDbrightness (jumlah int)

// mengatur kecerahan PKS - 25/50/75/100% // menggunakan urutan ESC { switch(jumlah) { case 25: VFD.write(0x1B); // ESC VFD.tulis(0x4C); // kecerahan VFD.print(0); // 25% kecerahan istirahat; kasus 50: VFD.tulis (0x1B); // ESC VFD.tulis(0x4C); // kecerahan VFD.tulis (0x40); // 50% kecerahan istirahat; kasus 75: VFD.tulis (0x1B); // ESC VFD.tulis(0x4C); // kecerahan VFD.tulis (0x80); // istirahat kecerahan 75%; kasus 100: VFD.tulis (0x1B); // ESC VFD.tulis(0x4C); // kecerahan VFD.tulis(0xC0); // kecerahan 100% } }

batalkan karakter VFD()

// menjalankan karakter untuk font yang dipilih { for (int i = 21; i < 256; i++) { VFD.write(0x16); // garis bawahi kursor pada VFD.write(i); penundaan(100); } }

void moveCursor(posisi byte)

// menggerakkan kursor - baris atas adalah 0~39, baris bawah adalah 40~79 // mode gulir vertikal harus dimatikan jika digunakan { VFD.write(0x1B); // ESC VFD.tulis (0x48); // pindahkan kursor PKS.tulis(posisi); // lokasi }

lingkaran kosong()

{ PKS.tulis (0x16); // garis bawah kursor pada VFD.print("Halo, dunia - baris satu."); // Anda dapat meledakkan penundaan teks (1000); VFDbaris baru(); VFD.print("Halo, dunia - baris dua."); penundaan (1000); VFDclearsceen(); Kecerahan VFD(25); VFD.print("*** 25% kecerahan ***"); penundaan (1000); VFDclearsceen(); VFDkecerahan(50); VFD.print("*** 50% kecerahan ***"); penundaan (1000); VFDclearsceen(); PKS kecerahan (75); VFD.print("*** 75% kecerahan ***"); penundaan (1000); VFDclearsceen(); Kecerahan VFD(100); VFD.print("*** 100% kecerahan ***"); penundaan (1000); VFDclearsceen();

VFDchars();

VFDclearsceen();

for (int i = 0; i < 80; i++) { VFD.write(0x16); // menggarisbawahi kursor off moveCursor(i); PKS.print("X"); penundaan(100); moveCursor(i); PKS.print(" "); } VFDclearsceen(); }

Kami harap Anda menemukan ini menarik dan bermanfaat.

Posting ini dipersembahkan oleh pmdway.com – semuanya untuk pembuat dan penggemar elektronik, dengan pengiriman gratis ke seluruh dunia.

Direkomendasikan: