Kamis, 28 September 2017
-membuat
rangkaian Seven Segment menggunakan mikrokontroler ATMega8535 dengan software
compiler BASCOM AVR
-
Dot Matrix
-
Switch
-
LCD
-
Mikrokontroler ATMega8535
-
Button
-
Crystal
3.1
Pengertian Dot Matrix
LED Dot
Matrix ini
memiliki 35 LED yang disusun dalam matriks 5 kolom 7 baris (5x7 LED), dengan terminal katoda pada kolom dan terminal anoda
pada baris / cathode
shared column, anode shared row. Ukuran (sisi terpanjang) dari komponen elektronika
ini adalah 0,7" dengan dimensi
keseluruhan sebesar 17,8 x 12 x 6 mm.
Untuk mengendalikan tampilan pada komponen ini, terapkan algoritma
pemindaian iteratif (iterative
scanning algorithm) di mana masing-masing titik LED ditentukan nyala / tidaknya
dengan mengatur kondisi pada 2 pin terkait (pin baris dan pin kolom, lihat
diagram pada konfigurasi pin yang terlampir di bawah), dilanjutkan dengan titik
LED berikutnya, demikian berulang-ulang. Apabila proses ini dilakukan cukup
cepat, mata manusia akan menangkap cahaya dari LED-LED ini sebagai cahaya yang
berkesinambungan. Setiap LED memiliki tegangan maju / forward voltage sebesar 2,1 Volt
dengan konsumsi arus ±20 mA per LED pada intensitas optimum.
3.2
Prinsip Kerja Dot Matrix
Bagian pin yang
digunakan sebagai input atau output tergantung pada kondisi posisi Anoda/katoda
LED yang terpasang didalamnya. Jika Anoda dari LED terpasang pada bagian kolom
maka semua pin pada bagian kolom merupakn tempat masuknya arus (input) dan
bagian baris merupakan tempat keluarnya arus(output). Led dot matrix yang
digunakan pada prakltikum ini adalah led dot matrix 5x7. 5 pin kolom
dihubungkan ke anoda melalui port A mikrokontroler sekaligus sebagai input, dan
7 pin baris dihubungkan ke port C mikrokontroler sebagai output. Apabila bagian
kolom diberi arus atau diberi data 1 (high) maka kolom tersebut aktif atau LED
pada kolom tersebut siap menyala. LED yang menyala akan tergantung pada bagian
baris yang diberi data 0 (low).
5. Listing Program
[kembali]
$regfile = "m8535.dat" 'memanggil library ATmega 8535
$crystal = 16000000 'menentukan kecepatan crystal
Config Portc = Output 'PORTC sebagai output
Config Porta = Output 'PORTA sebagai output
Ddrb = &B0000 'PORTD sebagai input
Do 'fungsi utama
If Pinb.0 = 1 Then 'pemilihan kondisi pada PORTB
Portc = &B0000000 'PORTC mati
Porta = &B00001 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0110110 'keluaran pada PORTC
Porta = &B00010 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0110110 'keluaran pada PORTC
Porta = &B00100 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0110110 'keluaran pada PORTC
Porta = &B01000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0110110 'keluaran pada PORTC
Porta = &B10000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Elseif Pinb.1 = 1 Then 'pemilihan kondisi pada PORTB
Portc = &B0111111 'keluaran pada PORTC
Porta = &B10000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00001 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111111 'keluaran pada PORTC
Porta = &B00010 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111111 'keluaran pada PORTC
Porta = &B00100 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111111 'keluaran pada PORTC
Porta = &B01000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111111 'keluaran pada PORTC
Porta = &B10000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Elseif Pinb.2 = 1 Then 'pemilihan kondisi pada PORTB
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00001 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111110 'keluaran pada PORTC
Porta = &B00010 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111110 'keluaran pada PORTC
Porta = &B01000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111110 'keluaran pada PORTC
Porta = &B00100 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00001 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0000000 'keluaran pada PORTC
Porta = &B10000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Elseif Pinb.3 = 1 Then 'pemilihan kondisi pada PORTB
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00001 'keluaran pada PORTA
Else
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00000 'keluaran pada PORTA
End If 'pemilihan kndisi selesai
Loop 'fungsi utama
End 'program selesai
$regfile = "m8535.dat" 'memanggil library ATmega 8535
$crystal = 16000000 'menentukan kecepatan crystal
Config Portc = Output 'PORTC sebagai output
Config Porta = Output 'PORTA sebagai output
Ddrb = &B0000 'PORTD sebagai input
Do 'fungsi utama
If Pinb.0 = 1 Then 'pemilihan kondisi pada PORTB
Portc = &B0000000 'PORTC mati
Porta = &B00001 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0110110 'keluaran pada PORTC
Porta = &B00010 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0110110 'keluaran pada PORTC
Porta = &B00100 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0110110 'keluaran pada PORTC
Porta = &B01000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0110110 'keluaran pada PORTC
Porta = &B10000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Elseif Pinb.1 = 1 Then 'pemilihan kondisi pada PORTB
Portc = &B0111111 'keluaran pada PORTC
Porta = &B10000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00001 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111111 'keluaran pada PORTC
Porta = &B00010 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111111 'keluaran pada PORTC
Porta = &B00100 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111111 'keluaran pada PORTC
Porta = &B01000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111111 'keluaran pada PORTC
Porta = &B10000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Elseif Pinb.2 = 1 Then 'pemilihan kondisi pada PORTB
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00001 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111110 'keluaran pada PORTC
Porta = &B00010 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111110 'keluaran pada PORTC
Porta = &B01000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0111110 'keluaran pada PORTC
Porta = &B00100 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00001 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Portc = &B0000000 'keluaran pada PORTC
Porta = &B10000 'keluaran pada PORTA
Waitms 0.1 'delay 0.1 ms
Elseif Pinb.3 = 1 Then 'pemilihan kondisi pada PORTB
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00001 'keluaran pada PORTA
Else
Portc = &B0000000 'keluaran pada PORTC
Porta = &B00000 'keluaran pada PORTA
End If 'pemilihan kndisi selesai
Loop 'fungsi utama
End 'program selesai
7. Video
File simulasi rangkaian =>>DOWNLOAD
File video rangkaian =>>DOWNLOAD
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar