Pada sesi ini kita akan mendesain tampilan LED 8x8 dengan matriks LED 8x8 dan mikrokontroler ATmega8 yang dapat menampilkan huruf atau nama. Matriks led 8x8 tipikal ditunjukkan di bawah ini:
Matriks LED 8x8 berisi 64 LED (Light Emitting Diodes) yang disusun dalam bentuk matriks, maka dinamakan matriks LED. Matriks ini dapat dibuat dengan mengitari 64 LED; namun proses tersebut memakan waktu. Sekarang hari mereka tersedia dalam bentuk kompak seperti yang ditunjukkan pada gambar. Modul ringkas ini tersedia dalam berbagai ukuran dan warna. Seseorang dapat memilihnya berdasarkan kenyamanan.
Biaya modul sama dengan biaya 64 LED, jadi untuk hobbyist ini paling mudah dikerjakan. Konfigurasi PIN modul seperti yang ditunjukkan pada gambar. PIN harus diberi nomor persis seperti yang ditunjukkan pada gambar untuk menghindari kesalahan. Kami akan membahas konfigurasi rangkaian internal modul secara rinci dalam uraian.
Komponen
Perangkat keras: ATMEGA8, Power supply (5v), AVR-ISP PROGRAMMER, kapasitor 100 uF (terhubung melintasi catu daya), resistor 1KΩ (8 buah).
Perangkat lunak: Atmel studio 6.1, progisp atau flash magic.
Diagram Sirkuit dan Bekerja
Hubungan yang dilakukan antara modul ATMEGA8 dan matriks LED ditunjukkan pada gambar di bawah ini.
PORTD, PIN0 ------------------ PIN13 dari modul LED
PORTD, PIN1 ------------------ PIN03 dari modul LED
PORTD, PIN2 ------------------ PIN04 dari modul LED
PORTD, PIN3 ------------------ PIN10 dari modul LED
PORTD, PIN4 ------------------ PIN06 dari modul LED
PORTD, PIN5 ------------------ PIN11 dari modul LED
PORTD, PIN6 ------------------ PIN15 dari modul LED
PORTD, PIN7 ------------------ PIN16 modul LED
PORTB, PIN0 ------------------ PIN09 dari modul LED
PORTB, PIN1 ------------------ PIN14 dari modul LED
PORTB, PIN2 ------------------ PIN08 dari modul LED
PORTB, PIN3 ------------------ PIN12 dari modul LED
PORTC, PIN0 ------------------ PIN01 dari modul LED
PORTC, PIN1 ------------------ PIN07 dari modul LED
PORTC, PIN2 ------------------ PIN02 dari modul LED
PORTC, PIN3 ------------------ PIN05dari modul LED
The diagram rangkaian display 8x8 LED matriks ditunjukkan pada gambar di bawah.
Ada 64 LED yang disusun dalam bentuk matriks. Jadi kami memiliki 8 kolom dan 8 baris seperti yang ditunjukkan pada gambar. Di atas baris dan kolom tersebut, semua terminal positif dalam satu baris disatukan. Untuk setiap baris, ada satu terminal positif umum untuk semua 8 LED di baris itu. Itu ditunjukkan pada gambar di bawah ini,
Jadi untuk 8 baris kita memiliki 8 terminal positif yang sama, perhatikan baris pertama. Seperti terlihat pada gambar, LED dari D1 ke D8 memiliki terminal positif yang sama dan dikeluarkan dari MODUL LED sebagai PIN9.
Harus dilihat bahwa semua hal positif yang umum dari baris tidak dibawa keluar dari MODUL LED dengan cara yang teratur. Ada sangat ketidakteraturan di terminal umum dalam setiap kasus. Seseorang harus mengingat hal ini saat menghubungkan terminal.
Katakanlah jika kita ingin salah satu atau semua LED di ROW matriks pertama menjadi ON, maka kita harus menyalakan PIN9 dari LED MATRIX MODULE bukan PIN0.
Katakanlah jika kita ingin satu atau semua LED di baris ketiga matriks ON, maka kita harus menyalakan PIN8 dari LED MATRIX MODULE bukan PIN2.
Jadi, setiap kali kita ingin satu atau semua LED dalam BARIS menyala, pin yang sesuai dari MODUL LED akan dinyalakan.
Ini belum berakhir dengan hanya membiarkan kekuatan ROWS tidak menghasilkan apa-apa. Kita perlu membumikan ujung lainnya. Kami akan membahasnya di bawah ini.
Sekarang untuk contoh ini kita mengabaikan baris positif umum dan fokus pada kolom negatif umum.
Jadi dalam modul itu semua terminal negatif dari kolom pertama disatukan ke PIN13. Ini ditunjukkan pada gambar di bawah ini.
Disini juga terdapat kejanggalan pada PIN OUTAGE modul. Kolom pertama LED negatif umum ditampilkan di PIN13. Kolom kedua LED negatif umum ditampilkan di PIN3.
Seseorang harus memperhatikan pin saat menghubungkan. Sekarang jika salah satu atau semua LED di kolom pertama akan di-ground, PIN13 dari MATRIX MODULE harus di-ground. Cara ini berlaku untuk tujuh kolom negatif umum lainnya. Ketika kedua kasing disatukan, kami menemukan sirkuit seperti yang ditunjukkan di bawah ini,
Rangkaian di atas adalah diagram internal lengkap dari MODUL LED. Katakanlah jika kita ingin menyalakan LED D10 dalam matriks, kita perlu memberi daya pada modul PIN14 dan membumikan modul PIN3. Dengan ini D10 akan ON. Ini ditunjukkan pada gambar di bawah. Ini harus menjadi pemeriksaan pertama MATRIX untuk mengetahui semuanya secara berurutan.
Katakanlah jika kita ingin menghidupkan D1, kita perlu memberi daya PIN9 matriks dan membumikan PIN13. Dengan itu LED D1 akan menyala. Arah arus untuk kasus ini ditunjukkan pada gambar di bawah ini.
Sekarang untuk bagian yang sulit, pertimbangkan kita ingin mengaktifkan D1 dan D10 sekaligus. Jadi kami memberi daya pada PIN9, PIN14 dan membumikan keduanya PIN13, PIN3. Dengan itu kita akan memiliki D2 dan D9 ON bersama dengan D1 dan D10. Itu karena mereka berbagi terminal yang sama. Jadi jika kita ingin menyalakan LED sepanjang diagonal, kita akan dipaksa untuk menyalakan semua LED di sepanjang jalan. Ini ditunjukkan pada gambar di bawah ini.
Jadi untuk menghilangkan masalah ini kami hanya akan menyalakan satu led pada satu waktu. Katakanlah pada t = 0m SEC, LED D1 disetel ON. Pada t = 1m SEC, LED D1 disetel OFF dan LED D2 dinyalakan. Sekali lagi pada t = 2 m SEC, LED D2 dimatikan dan LED D1 dihidupkan. Ini terus berlanjut.
Triknya sekarang, mata manusia tidak bisa menangkap frekuensi lebih dari 30 HZ. Itu jika LED menyala dan mati terus menerus dengan kecepatan 30Hz atau lebih. Mata melihat LED menyala terus menerus. Namun tidak demikian halnya. LED akan terus menyala dan mati. Teknik ini disebut multiplexing.
Dengan menggunakan multiplexing, kita hanya akan memutar satu baris dalam satu waktu, dan akan ada siklus di sekitar 8 baris tersebut secara terus menerus. Ini divisualisasikan sebagai matriks AKTIF sepenuhnya untuk mata telanjang.
Sekarang katakanlah kita ingin menampilkan “A” pada matriks.
Seperti yang diceritakan, kami akan MENGAKTIFKAN satu baris dalam sekejap, Pada t = 0m SEC, PIN09 disetel TINGGI (saat ini pin BARIS lain RENDAH), saat ini PIN3, PIN4, PIN10, PIN6, PIN11, PIN15 diarde (pin KOLOM lain TINGGI saat ini)
Pada t = 1m SEC, PIN14 disetel TINGGI (saat ini pin BARIS lain RENDAH), saat ini PIN13, PIN3, PIN4, PIN10, PIN6, PIN11, PIN15, PIN16 diarde (pin KOLOM lainnya TINGGI saat ini)
Pada t = 2m SEC, PIN08 disetel TINGGI (saat ini pin BARIS lain RENDAH), PIN13, PIN3, PIN15, PIN16 diarde (pin KOLOM lain TINGGI saat ini)
Pada t = 3m SEC, PIN12 disetel TINGGI (saat ini pin BARIS lain RENDAH), PIN13, PIN3, PIN15, PIN16 diarde (pin KOLOM lain TINGGI saat ini)
Pada t = 4m SEC, PIN01 disetel TINGGI (saat ini pin BARIS lain RENDAH), saat ini PIN13, PIN3, PIN4, PIN10, PIN6, PIN11, PIN15, PIN16 diarde (pin KOLOM lainnya TINGGI saat ini)
Pada t = 5m SEC, PIN07 disetel TINGGI (saat ini pin BARIS lain RENDAH), saat ini PIN13, PIN3, PIN4, PIN10, PIN6, PIN11, PIN15, PIN16 diarde (pin KOLOM lain TINGGI saat ini)
Pada t = 6m SEC, PIN02 disetel TINGGI (saat ini pin BARIS lainnya RENDAH), PIN13, PIN3, PIN15, PIN16 diarde (pin KOLOM lain TINGGI saat ini)
Pada t = 7m SEC, PIN05 disetel TINGGI (saat ini pin BARIS lain RENDAH), PIN13, PIN3, PIN15, PIN16 diarde (pin KOLOM lain TINGGI saat ini)
Pada kecepatan ini, tampilan akan terlihat terus menerus menampilkan karakter "A". Itu ditunjukkan pada gambar.
Beginilah cara semua karakter ditampilkan di layar. Setelah menghubungkan rangkaian dengan cara yang benar, seperti yang ditunjukkan pada diagram rangkaian. Kami dapat langsung memberikan instruksi kepada pengontrol untuk melakukan multiplexing secara berurutan agar nama ditampilkan.