Paparan tujuh segmen adalah unit paparan penting dalam Elektronik dan digunakan secara meluas untuk memaparkan nombor dari 0 hingga 9. Ia juga dapat memaparkan beberapa huruf huruf seperti A, B, C, H, F, E dll. Dalam tutorial ini, kita akan belajar cara menyambungkan paparan segmen 7 dengan mikrokontroler 8051. Kami menggunakan mikrokontroler AT89S52 dari siri 8051.
Sebelum berinteraksi, kita harus belajar mengenai paparan 7 segmen. Ini adalah unit paling mudah untuk memaparkan nombor dan watak. Ini hanya terdiri daripada 8 LED, setiap LED digunakan untuk menerangi satu segmen unit dan LED ke- 8 digunakan untuk menerangi DOT dalam paparan 7 segmen. Kita dapat merujuk setiap segmen sebagai LINE, seperti yang kita lihat ada 7 baris dalam unit, yang digunakan untuk menampilkan angka / karakter. Kita boleh merujuk setiap baris / segmen "a, b, c, d, e, f, g" dan untuk watak titik kita akan menggunakan "h". Terdapat 10 pin, di mana 8 pin digunakan untuk merujuk a, b, c, d, e, f, g dan h / dp, kedua pin tengah adalah anod / katod biasa dari semua LEDnya. Anod / katod biasa ini dipendekkan secara dalaman sehingga kita perlu menyambungkan hanya satu pin COM.
Terdapat dua jenis paparan segmen 7: Common Anode dan Common Cathode:
Biasa Anode: Dalam ini semua terminal Negatif (katod) dari semua 8 LED disambungkan bersama (lihat rajah di bawah), dinamakan sebagai COM. Dan semua terminal positif dibiarkan begitu sahaja.
Common Cathode: Dalam ini semua terminal positif (Anod) dari semua 8 LED disambungkan bersama, dinamakan sebagai COM. Dan semua termal negatif dibiarkan begitu sahaja.
Diagram Litar dan Expalation Kerja
Di sini kita menggunakan anod jenis segmen 7 yang biasa kerana kita perlu menyambungkan LED secara terbalik. Seperti yang kita ketahui bahawa mikrokontroler tidak memberikan daya yang cukup untuk menyalakan LED jadi kita perlu menyambungkan katod LED ke pin mikrokontroler dan anod LED ke bekalan kuasa. Anda dapat memahami konsep logik negatif ini dalam artikel ini "LED Interfacing with 8051 Microcontroller". Anda juga harus membaca artikel ini untuk memahami sambungan asas mikrokontroler seperti kristal dan litar semula.
Seperti yang ditunjukkan di atas rajah litar untuk antara muka paparan 7 segmen dengan mikrokontroler 8051, kita telah menghubungkan a, b, c, d, e, f, g, h ke pin 2.0 hingga 2.7 bermaksud kita menghubungkan 7 segmen ke port 2 mikrokontroler. Sekarang andaikan kita mahu memaparkan 0, maka kita perlu menyalakan semua LED kecuali LED yang termasuk dalam garis "g" (lihat rajah di atas), jadi pin 2.0 hingga 2.6 harus berada pada 0 (harus 0 hingga MENYALAHKAN LED sebagai per logik negatif) dan pin 2.7 dan 2.8 harus berada di 1 (semestinya 1 untuk MENGHIDUPKAN LED mengikut logik negatif). Oleh itu, LED yang disambungkan ke pin 2.0 hingga 2.6 (a, b, c, d, e, f) akan ON dan LED yang disambungkan ke 2.7 dan 2.8 (g dan h) akan MATI, yang akan menghasilkan "0" dalam 7 segmen. Oleh itu, kita memerlukan corak bit 11000000 (Pin 8 adalah bit tertinggi sehingga bermula dari P2.7 hingga P2.0), dan kod HEX untuk binari 11000000 adalah "C0". Begitu juga kita dapat mengira semua digit. Di sini kita harus perhatikan bahawa kita menjaga "dot / h" selalu MATI,jadi kita perlu memberikan LOGIK "1" kepadanya setiap masa. Jadual telah diberikan di bawah untuk semua nombor semasa menggunakan segmen Common Anode 7.
Digit untuk Paparan |
hgfedcba |
Kod hex |
0 |
11000000 |
C0 |
1 |
11111001 |
F9 |
2 |
10100100 |
A4 |
3 |
10110000 |
B0 |
4 |
10011001 |
99 |
5 |
10010010 |
92 |
6 |
10000010 |
82 |
7 |
11111000 |
F8 |
8 |
10000000 |
80 |
9 |
10010000 |
90 |
Penjelasan Kod
Kami telah membuat fungsi ms_delay untuk memberikan kelewatan dalam milisaat, kelewatan ini biasanya diberikan dalam program mikrokontroler sehingga mikrokontroler dapat menyelesaikan operasi internalnya.
Kemudian kami telah membuat susunan kod hex untuk 0 hingga 9 (lihat jadual di atas), dan akhirnya kami telah menghantar kod hex ke port 2, yang dihubungkan ke segmen anod 7 biasa. Jadi dengan cara ini nombor ditunjukkan pada paparan 7 segmen.
Sekarang kita hanya mempunyai 4 port dalam mikrokontroler dan bagaimana jika kita mahu menunjukkan data di lebih dari empat 7 segmen ?? Untuk menyelesaikan masalah ini, teknik Multiplexing menjadi gambaran. Kita perlu melipatgandakan berbilang 7 unit segmen. Baca juga antara muka paparan 7 segmen dengan mikrokontroler AVR.