238 dengan vcc power supply atau logika tinggi. Apabila menggunakan seven
segment jenis common cathode yaitu kebalikan dengan common anode. Pengaturan port mikrokontroler sebagai keluaran pada pemrograman
untuk menyalakan seven segment dapat menggunakan tabel dibawah ini. Tabel 1. Data pembentuk karakter pada seven segment.
ANGKA Common Anode
Active Low Common Cathode
Active High Hexa
Biner Hexa
Biner
0xC0 0b11000000
0x3F 0b00111111
1 0xF9
0b11111001 0x06
0b00000110 2
0xA4 0b10100100
0x5B 0b01011011
3 0xB0
0b10110000 0x4F
0b01001111 4
0x99 0b10011001
0x66 0b01100110
5 0x92
0b10010010 0x6D
0b01101101 6
0x83 0b10000011
0x7D 0b01111101
7 0xF8
0b11111000 0x07
0b00000111 8
0x80 0b10000000
0x7F 0b01111111
9 0x98
0b10011000 0x6F
0b01101111 Seven segment dapat dinyalakan sesuai dengan data hexa atau
bier seperti pada tabel diatas. Pada tabel diatas dp tidak dinyalakan, data diatas dapat digunakan untuk bilangan saja seperti pada ribuan, pecahan,
desimal dan lain-lain.
b. Menyusun Rangkaian Seven Segment
Seven Segmen dapat dinyalakan secara tunggal maupun secara banyak, adapun cara menyalakan seven segment dapat dilihat pada
gambar dibawah ini.
239 Gambar 3. Seven Segment yang disambung pada PORTC ATMEGA 32
Gambar 3 diatas merupakan cara penyalaan seven segment tunggal, yaitu cara penyalaan seven segment dengan cara tiap pin seven
segment dihubungkan dengan salah satu PORT pada mikrokontroller. Pin yang terubung pada PORTC adalah jalur data, jalur data yaitu jalur yang
digunakan untuk mengirim angka heksa maupun biner yang bertujuan untuk membentuk angka yang dikendaki. Pada penyalaan 2 seven
segment atau lebih terdapat juga jalur kontrol, jalur kontrol adalah jalur yang digunakan untuk memilih seven segment yang akan dihidupkan dan
yang tidak. Jalur kontrol berisi digit yang akan dikirimkan ke kaki common sevent segment. Cara penyalaan seven segment dua atau lebih dapat
dilakukan dengan cara memanfaatkan salah satu PORT mikrokontroller sebagai jalur data, dan menggunakan PORT mikrokontroler yang lain
sebagai jalur kontrol. Contoh penyalaan seven segment lebih dari satu dapat dilihat pada Gambar 4 berikut ini.
Gambar 4. Teknik penyalaan seven segment lebih dari satu Teknik Penyalaan seven segment lebih dari satu dapat dinyalakan
keduanya dengan cara memberikan jalur data dan jalur kontrol secara bergantian dengan program yang sesuai. Penyalaan dua seven segment
juga menggunakan teknik SCANNING, yaitu teknik penyalaan yang bergantian antar seven segment dengan waktu pergantian yang sangat
cepat sehingga mata manusia tidak bisa mengikutinya.
240
c.
Komunikasi Serial dari Mikrokontroller
Prinsip komunikasi serial pada Mikrokontroller adalah pengiriman data secara berurutan dengan menggunakan karakter-karakter didalam
ASCII. Karakter ini yang nantinya akan dirubah menjadi signal digital oleh hardware transmitter Tx, dan akan dterjemahkan lagi menjadi data
karakter oleh hardware receiver Rx. Komunikasi serial mikrokontroler sangatlah sederhana, dikarenakan sudah memiliki instruksi-instruksi
pemrograman yang standart. Berikut instruksi yang sering digunakan dalam komunikasi serial mikrokontroler.
printf“………..”;
digunakan untuk mencetak atau mengeluarkan data string
katakalimat ke jalur komunikasi serial mikrokontroler.
putchar‘…’; atau putcharno_char; digunakan untuk mencetak atau mengeluarkan data char karakter
ke jalurkomunikasi serial mikrokontroler
puts.....;
digunakan untuk mencetak atau mengeluarkan data char karakter berwujud array ke jalur komunikasi serial mikrokontoler.
scanfvaribel_penyimpan;
digunakan untuk membacamenerima data stringchar dari jalur komunikasi serial mikrokontroler.
getchar;
digunakan untuk membacamenerima data char karakter dari jalur
komunikasi serial mikrokontroler. F. Langkah Kerja
1. Rangkailah modul sistem minimum mikrokontroller PORTD ke modul bluetooth HC-05, lalu hubungkan PORT A dan PORT B sistem
minimum ke bagian jalur data dan jalur kontrol dot matriks. Sedangkan, jalur data modul seven segment dihungkan ke PORT C, dan jalur
kendali modul seven segment masing-masing ke PORT D.5 dan PORT D.6. Perhatikan Gambar 5 berikut ini
241
PORT A PORT B
- 1
2 3
4 5
6 7
+
MIKROKONTROLLER ATMEGA32
- 1
2 3
4 5
6 7
+ -
1 2
3 4
5 6
7 +
PORT D
HC-05
VCC Tx
Rx GND
Rx Tx
- 7
6 5
4 3
2 1
+
PORT C JALUR
KENDALI JALUR
DATA MODUL DOT
MATRIKS
c a
b
d e
f g
a b
d e
f g
c Common Anode
c a
b
d e
f g
a b
d e
f g
c
PORT D.5 PORT D.6
Common Anode
1 2
Gambar 5. Rangkaian Modul Dot Matriks, Seven Segment dan Sistem Minimum.
2. Pada job 4 ini kita akan membuat program pengendalian 1 seven segment
3. Sebelum membuat program mikrokontroller, Gambar 6 berikut adalah algoritma dalam bentuk flowchart atau diagam alir yang akan dibuat.
START unsigned char
a[30],b[30],c[30],d[30],e[30]; int angka,animasi;
unsigned char data[11]={0xC0,0xF9,0xA4,0xB0,0x99,0
x92,0x82,0xF8,0x80,0x90}; Baca data:
scanfd d s s s s s,angka,animasi,a,b,c,d,e
;
END
Y N
Animasi==7? PORTD.6=1; PORTC=data[angka];
delay_ms2500; PORTD.6=0;
Y N
Animasi==8? PORTD.5=1; PORTC=data[angka];
delay_ms2500; PORTD.5=0;
242 Gambar 6. Flowchart program
4. Pastikan PC atau notebook sudah terpasang driver downloader USBasp, CV AVR dan Prog ISP seperti pada Gambar 7 berikut ini.
a b
c Gambar 7. PC tersudah terpasang driver downloader a, sudah
terpasang CV AVR b, dan sudah ada software ProgISP c 5. Buka software CV AVR anda dengan cara double klik pada shortcut
yang ada di desktop laptop anda. 6. Setelah codevision AVR, pada main toolbar, klik pada bagian menu bar
klik file kemudian klik New.
Gambar 8. Pilihan menu bar File-New
243 7. Kemudian akan muncul tampilan Create New File, pada bagian File
Type Source atau Project . Pilih Project lalu klik OK.
Gambar 9. Project baru CodeVision AVR 8.
Maka akan muncul pertanyaan “Do you want to use the CodeWizard AVR
”, klik Yes.
Gambar 10. Pertanyaan untuk menggunakan CodeWizardAVR 9. Kemudian pilih tipe chip yang akan dipakai, ATmega 32 termasuk
kategori pilihan yang atas.
Gambar 11. Pemilihan Chip 10. Maka akan muncul tampilan CodeWizardAVR, sesuaikan atur chip dan
frekuensi xtal yang digunakan, ATmega32 dengan xtal 12.000 MHz
244 Gambar 12. Pengaturan Chip
11. Kemudian pada bar USART untuk mengatur komunikasi serial
mikrokontroller.
Gambar 13. Pengaturan USART 12. Kemudian atur PORT A, PORT B, PORT C, PORT D5, dan PORT D6
sebagai output.
245 Gambar 14. Pengaturan PORT
13. Lalu Klik tombol Generate program, save and exit seperti dibawah ini, maka akan muncul dialog box Save c Compiler Source File.
246 Gambar 15. Proses setelah pengaturan selesai dan akan menyimpan
program 14. Beri nama yang sama pada 3 tahap penyimpanan, yaitu file dalam
format C compiler file .c, Project File.prj, CodeVisionWizardAVR files .cwp. misalkan “JOB4”.
Gambar 16. Proses penyimpanan program 15. Tambahkan header pada bagian awal program seperti pada Gambar
berikut ini
Gambar 17. Header program
247 16. Deklarasikan variabel yang digunakan untuk menerima data tipe
stringkalimat yang nantinya perlu diubah menjadi variabel kode dan angka pada mikrokontroller, sehingga akan menggunakan fungsi
scanfvariabel_penyimpanan; untuk membaca dari aplikasi.
Sehingga perlu menambahkan beberapa variabel seperti berikut ini untuk memilih animasi, angka maupun teks.
17. Tambahakan juga array data yang digunakan untuk menampung sejumlah angka heksa yang membentuk karakter angka pada seven
segment berikut ini.
unsigned char
data[11]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90} ;
18. Kemudian buatlah contoh program seperti dibawah ini. while
1 {
animasi=angka=0; scanf
d d s s s s s
,angka,animasi,a,b,c,d,e; if
animasi== 7 {
PORTD.6=1; PORTC=data[angka];
delay_ms2500; PORTD.6=0;
}
else if
animasi== 8 {
PORTD.5=1; PORTC=data[angka];
delay_ms2500; PORTD.5=0;
} }
19. Setelah membuat program, lalu compile program mikrokontroller
dengan menekan tombol “Build” pada CV-AVR, atau dengan menekan tombol “shift+F9” pada keyboard.
248 Gambar 18. Menu Build program
20. Hubungkan kabel power ke sumber tegangan AC, lalu nyalakan modul dengan cara menekan saklar, sambungkan kabel usb dari modul ke
LaptopPC. 21. Lalu buka software PROG ISP 1.72 untuk download program yang
sudah di-build
ke mikrokontroller. Klik tombol “Load Flash”, lalu masukkan program .hex dalam folder yang kalian buat tadi, kemudian
klik OK. Setelah itu klik tombol “Auto” untuk memulai proses download.
Gambar 19. Proses download program ke mikrokontroller 22. Setelah itu, buka aplikasi DotMatriksApp dan hubungkan dengan
mikrokontroller. Cara
penghubungan dan
pengoperasian DotMatriksApp terdapat pada manual operation DotMatriksApp yang
terlampir pada Jobsheet ini.
1
2
249 23. Amati kinerja mikrokontroller, jika terdapat masalah lakukan trouble
shooting. Trouble shooting yang sering terjadi:
a. Pastikan hanya ada satu perangkat Android yang terhubung dengan HC-05.
b. Jika Aplikasi tidak dapat terhubung dengan HC-05, kemungkinan masih terhubung dengan perangkat lain. Tutup lalu buka kembali
aplikasi. Lakukan juga restart pada HC-05 dengan cara mematikan lalu menghidupkan lagi modul bluetooth melalui saklar, kemudian
coba hubungkan lagi. c. Jika Aplikasi telah terhubung dengan HC-05 namun mikrokontroller
tidak bekerja berdasarkan input dari aplikasi, coba perika lagi apakah program mikrokontroller sudah benar atau belum.
G. PETUNJUK KHUSUS
Untuk menunjang kelancaran teknis dan pelaksanaan kegiatan belajar anda, perhatikan petunjuk berikut :
a. Rangkailah tanpa tegangan terlebih dahulu. Jika rangkaian dirasa sudah benar baru pasangkan tegangan.
b. Tanyakan kepada guru terlebih dahulu apabila rangkaian ingin dicoba supaya tidak terjadi sesuatu yang diinginkan.
c. Jauhkan peralatan yang tidak diperlukan dari meja kerja. d. Perhatikan semua Langkah Kerja Jobsheet.
e. Keterangan lebih lanjut, konsultasikan dengan guru pembimbing pada saat kegiatan belajar.
H. SOAL LATIHAN
a. Buatlah program untuk menerima karakter angka seperti pada program diatas, tanpa menggunakan array.
I. LAMPIRAN
250
Jobsheet 5 A. Kompetensi Dasar
Mengoperasikan rangkaian pengendalian dengan menggunakan mikrokontroller.
B. Sub Kompetensi
Mengendalikan 2 seven segment dengan gerakan penjumlahan maupun pengurangan.
C. Tujuan
Setelah menyelesaikan praktik siswa diharapkan dapat : 1. mengetahui
cara mengendalikan
rangkaian pengendalian
menggunakan mikrokontroller melalui aplikasi android, 2. membuat program mikrokontroller yang mengendalikan rangkaian
pengendalian melalui aplikasi android, 3. mengetahui
cara membuat
program mikrokontroller
yang mengendalikan rangkaian pengendalian melalui aplikasi android
memanfaatkan fungsi, 4. mengembangkan pemrograman mikrokontroller pada rangkaian
pengendalian.
D. Alat dan Bahan
1. Sistem minimum Mikrokontroller 1 unit
2. PCLaptop 1 unit
3. Smartphone Android 1 unit
4. Module Bluetooth HC-05 1 unit
5. Modul Seven Segment 1 unit
6. Modul Dot Matriks 1 unit
7. Kabel USB 1 buah
8. Kabel Jumper 10 Pin 4 buah
E. Dasar Teori a. Seven Segment
Seven Segment pada dasarnya terdiri dari tujuh buah led yang disusun menjadi satu agar membentuk seperti angka-angka. Seven
Segment kemudian dikembangakan dengan menambahkan satu buah
251 led pada dp dot point. Adapun bentuk seven segment dapat dilihat pada
gambar dibawah ini.
b b
Gambar 1. a Bentuk fisik seven segment b Konfigurasi penamaan masing-masing segment
Seven segment terdapat 2 jenis atau tipe yang tersedia dipasaran, yaitu Common Anode dan Common Cathode. Common berarti
“bersama” yang berarti salah satu kaki dari seven segment dihubungkan menjadi satu, atau dapat dikatakan satu kaki 7-seg dipakai bersama
dengan jenis kutup yang sejenis. Mengetahui perbedaan common bertujuan untuk cara menghidupkan seven segment yaitu active high atau
active low. Adapun rangkaian dari seven segment dapat dilihat dibawah ini.
common cathode
a b c d e f g dp
common anode a b c d e f g dp
a b
Gambar 2. a seven segment common cathode, b seven segment common anode
Cara merangkai seven segment yang benar adalah apabila menggunakan common anode adalah kaki common dihubungkan dengan
kutub negatif power supply sedangkan kaki a, b, c hingga dp dihubungkan