Membuat traffic light dengan codevision AVR (2)
Okey setelah kemaren kita nyoba bikin 4 buah traffic light dengan bantuan simulator isis, sekarang kita nyoba bikin countdown timer untuk traffic lightnya, seperti kita tahu countdown timer berfungsi agar para pengendara bermotor bisa bersiap2 menunggu giliran melaju di persimpangan.
Nah kali ini kita belajar membuat countdown timer untuk 1 traffic light saja, (mana ada traffic light 1 doang? minimal kan tiga???) yah namanya juga buat belajar dulu, satu aja dulu, besok dua n besoknya lagi deh baru buat pertigaan/perempatan, sementara itu kita nyoba memahami dulu cara kerjanya.
Kendali traffic light dengan countdown timer, memiliki dua fungsi yaitu menampilkan nyala lampu merah kuning hijau dan menampilkan countdown untuk nyala hijau dan merah. Biasanya kuning hanya ditampilkan karakter kotak, atau mati.
Berikut adalah kode programnya
#include <mega16.h>
#include <delay.h>
unsigned char bil[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
int kanan=9;
int kiri=9;
void main (void)
{
DDRC=0xff;
DDRD=0xff;
{
while(1)
{
for(kanan=9;kanan>-1;kanan–)
{
PORTD=0x02;
PORTC=bil[kanan];
delay_ms(100);
}
for(kiri=9;kiri>-1;kiri–)
{
PORTD=0x01;
PORTC=bil[kiri];
delay_ms(100);
}
PORTC=0x00;
PORTD=0x04;
delay_ms(100);
}
}
}
Untuk rangkaiannya dapat dilihat pada gambar berikut
selamat mencoba
Priyo Harjiyono errornya Invalid expression. ketika saya double click di message error. for(kanan=9;kanan>-1;kanan-)
Dalam Simulasi Untuk menampilkan Angka Countdown nya pake device apa ya?? #Proteus
Priyo Harjiyono iya tetep bener salah mas soalnya harusnya for(kanan=9;kanan>=1;kanan–) Kalo yg sperti datas error muncul invalid expression.