Berikut adalah contoh sederhana blinking led menggunakan AVR. Bahasa pemograman yang di gunakan adalah bahasa C, sedangkan software yang di pakai adalah CodeVisionAVR. AVR yang kami gunakan adalah AVR ATMEGA8535.
#include<mega8535.h>
#include<delay.h>
#include<stdio.h>
void main()
{
while(1)
{
DDRA=0xff; /* PORTA bit 0 s/d bit 7 di set menjadi output */
PORTA=0xff; /* Pin-pin PORTA (kaki-kaki IC AtTmega8535 no.40 s/d no.33) di beri nilai high (1) */
delay_ms(500); /* delay 0.5 detik */
PORTA=0; /* Pin-pin PORTA (kaki-kaki IC AtTmega8535 no.40 s/d no.33) di beri nilai low (0) */
delay_ms(500); /* delay 0.5 detik */
}
}
Hardware interfacing
Hardware interfacing untuk blinking led di atas dapat di lihat pada gambar di bawah ini.

Penjelasan program
Mula-mula semua led mati, karena kaki-2 IC ATmega8535 no.40 s/d 33 di set high (1) (bit 0 s/d bit 7) pada program (PORTA = 0xff;). Setelah itu microcontroller menjalankan instruksi delay_ms(500) yang merupakan fungsi delay yang sudah di sediakan oleh codevision yang di deklarasikan di header delay.h. Sehingga kita tidak perlu membuat fungsi delay lagi. delay_ms(500) artinya waktu delay di set 500 mili detik atau 0.5 detik. Setelah 0.5 detik kemudian microcontroller menjalankan instruksi PORTA=0;, artinya semua kaki-kaki pin IC ATmega no.40 s/d 33 (bit 0 s/d bit 7) di set low (0). Karena kaki-kaki tersebut di set low (0), maka led akan menyala. Kemudian microcontroller membaca instruksi delay_ms(500), sehingga membuat led menyala sekitar 0.5 detik. Program akan looping secara terus menurus, dengan demikian led akan nyala-mati dalam selang wakyu 0.5 detik dan akan mati jikapower supply microcontroller di off.
Similar articles














Comments
pertanyaan saya :
minta tolong berikan list program code vision avr untuk pergerakan lampu led yang akan terbaca di tampilan lcd. jadi misal : jika push button pd.1 ditekan maka lampu led dapat berjalan ke arah kiri, kemudian akan terbaca di LCD dengan tampilan lampu led bergerak kekiri.
sekiranya bapak bisa membantu saya untuk pertanyaan saya ini.
email saya ada di tardohamonangan @yahoo.com
mohon balasannya kembali.
terima kasih.
RSS feed for comments to this post