at mega 32 dot matrix 8x8
DESCRIPTION
Laporan Praktikum Hardware Software II‘DOT MATRIX 8x8’ Disusun Oleh : KHUSNI MUBAROK 11.11.4985 / 11-S1TI-05STIMIK AMIKOM YOGYAKARTA 20121PRAKTIKUM IV DOT MATRIX 8x8 Dot matrix merupakan salah satu penampil yang pada dasarnya tersusun dari led (dot) yang disusun berbentuk baris dan kolom(matrix). Hampir sama dengan seven segment dan hanya susunan led/segment yang berbeda. Banyak jenis/ukuran dot matix yang dijual dipasaran akan tetapi dalam praktikum kali ini kita akan menggunakan dot mTRANSCRIPT
1
Laporan Praktikum
Hardware Software II
‘DOT MATRIX 8x8’
Disusun Oleh :
KHUSNI MUBAROK
11.11.4985 / 11-S1TI-05
STIMIK AMIKOM YOGYAKARTA
2012
2
PRAKTIKUM IV
DOT MATRIX 8x8
Dot matrix merupakan salah satu penampil yang pada dasarnya tersusun
dari led (dot) yang disusun berbentuk baris dan kolom(matrix). Hampir sama
dengan seven segment dan hanya susunan led/segment yang berbeda.
Banyak jenis/ukuran dot matix yang dijual dipasaran akan tetapi dalam
praktikum kali ini kita akan menggunakan dot matrix 8x8. Dot matrix 8x8 artinya
dot matrix yang mempunyai dot sebanyak 8 baris medatar dan 8 baris menurun.
Dot matrix lebih fleksibel dibandingkan dengan penampil-penampil yang
lain seperti led dan seven segment, selain dapat menampilkan angka dan huruf dot
matrix juga dapat untuk menampilkan gambar dan karakter/emoticon. Tapi proses
scaning/penampilan tampilan agak sedikit susah. Jika pada seven segment, anda
hanya perlu menghidupkan 8 buah led yang sudah tersusun, namun pada dot
matrix anda harus menentukan tiap baris dan kolomnya.
Gambar 1. Skema rangkaian LED Dot Matrix
3
Gambar diatas menunjukkan bagaimana menampilkan huruf pada dot matrix.
PERALATAN PRAKTIKUM
Mini 32 board
Dot Matrix 8x8
Kabel USB
Kabel Data
Kabel Power (Hitam dan Merah)
PERCOBAAN I
1. Hubungkan Kolom dan Baris Dot Matrix ke PORTA dan PORTC
2. Hubungkan kabel power (merah ke VCC dan Hitam ke Ground) dari mini-
32 ke Dot Matrix Board
3. Buat projek baru pada CodeVisionAVR, kemudian ketikkan program
dibawah ini:
4
4. Build All projek yang telah dibuat dan amati hasilnya, serta tulis hasil
pengamatan anda di
bawah ini!
BARIS KOLOM
TAMPILAN
DOT
MATRIX
1 Lampu Dot Matrix ke – 8
mati, lainnya hidup
Lampu Dot Matrix ke – 1
mati, lainnya hidup
2 Lampu Dot Matrix ke –7
mati, lainnya hidup
Lampu Dot Matrix ke – 2
mati, lainnya hidup
3 Lampu Dot Matrix ke – 6
mati, lainnya hidup
Lampu Dot Matrix ke – 3
mati, lainnya hidup
4 Lampu Dot Matrix ke – 5
mati, lainnya hidup
Lampu Dot Matrix ke – 4
mati, lainnya hidup
5 Lampu Dot Matrix ke – 4
mati, lainnya hidup
Lampu Dot Matrix ke – 5
mati, lainnya hidup
6 Lampu Dot Matrix ke – 3
mati, lainnya hidup
Lampu Dot Matrix ke – 6
mati, lainnya hidup
7 Lampu Dot Matrix ke – 2
mati, lainnya hidup
Lampu Dot Matrix ke – 7
mati, lainnya hidup
8 Lampu Dot Matrix ke – 1
mati, lainnya hidup
Lampu Dot Matrix ke – 8
mati, lainnya hidup
PERCOBAAN II
1. Ketikkan Program dibawah ini:
5
2. Deskripsikan apa hasil yang tampil pada Dot Matrix, setelah program
diflash ke mini-32
- Lampu Dot Matrix tersebut membentuk Huruf B yang lampunya dalam
keadaan mati.
3. Ganti program yang didalam perulangan while(1){ -------- }, dengan
program dibawah ini. Kemudian diskripsikan bagaimana tampilan
program pada dot matrix.
6
- Lampu Dot Matrix tersebut membentuk Huruf B yang lampunya dalam
keadaan menyala.
Tugas
1. Buatlah tampilan pada dot matrix huruf ‘S’!
2. Buatlah tampilan pada dot matrix huruf ‘K’!
3. Buatlah tampilan pada dot matrix emotion (tersenyum) !
Jawab
1. #include <mega32.h> #include <delay.h>
unsigned char k;
void main(void) {
DDRA = 255; DDRC=255; k=1; while(1) { PORTA=153; PORTC=0b11111110; delay_ms(k); PORTA=8; PORTC=0b11111101; delay_ms(k); PORTA=108; PORTC=0b11111011; delay_ms(k); PORTA=102; PORTC=0b11110111; delay_ms(k); PORTA=102; PORTC=0b11101111; delay_ms(k); PORTA=54; PORTC=0b11011111; delay_ms(k); PORTA=16; PORTC=0b10111111; delay_ms(k);
PORTA=153; PORTC=0b01111111; delay_ms(k); }
}
2. #include <mega32.h> #include <delay.h>
unsigned char k;
void main(void) {
DDRA = 255; DDRC=255;
7
k=1; while(1) { PORTA=0; PORTC=0b11111110; delay_ms(k); PORTA=0; PORTC=0b11111101; delay_ms(k); PORTA=231; PORTC=0b11111011; delay_ms(k); PORTA=195; PORTC=0b11110111; delay_ms(k); PORTA=153; PORTC=0b11101111; delay_ms(k); PORTA=60; PORTC=0b11011111; delay_ms(k); PORTA=126; PORTC=0b10111111; delay_ms(k);
PORTA=255; PORTC=0b01111111; delay_ms(k); }
}
3. #include <mega32.h> #include <delay.h>
unsigned char k;
void main(void) {
DDRA = 255; DDRC=255; k=1; while(1) { PORTA=239; PORTC=0b11111110; delay_ms(k); PORTA=247; PORTC=0b11111101; delay_ms(k); PORTA=155; PORTC=0b11111011; delay_ms(k); PORTA=253; PORTC=0b11110111; delay_ms(k); PORTA=253; PORTC=0b11101111; delay_ms(k); PORTA=155; PORTC=0b11011111; delay_ms(k); PORTA=247; PORTC=0b10111111; delay_ms(k);
PORTA=239; PORTC=0b01111111; delay_ms(k); }
}