Friday, May 31, 2013

Traffict Light 2 Arah (AVR Studio 4)

Saya akan mencoba berbagi untuk hasil pemrograman mikrokontroller dengan chip ATmega16 pada aplikasi traffict light 2 arah dengan display LCD 2x16.
Gambar Aplikasi Traffict Light

Lampu traffict light "jalur 1"
 PORTA.4 = LED merah
 PORTA.5 = LED kuning (hijau kecil)
 PORTA.6 = LED hijau besar
 PORTA.7 = LED bening (biru)

Lampu traffict light "jalur 2"
 PORTA.0 = LED merah
 PORTA.1 = LED kuning (hijau kecil)
 PORTA.2 = LED hijau besar
 PORTA.3 = LED bening (biru)

LCD 2x16 (JHD 162A) = PORTC

Listing Pemrograman Dengan AVR Studio4
//======================================================================//
#include <avr/io.h>
#include <util/delay.h>
#include <stdio.h>
#include <stdlib.h>
#include <afh/rif_lcd.h>
#include <avr/pgmspace.h>
#include <avr/interrupt.h>
#include <afh/lcd_lib.h>

int siap, jeda;
int array[]={0x3E,0x5E,0xEE,0xE5,0xE3,0xE5,0xEE,0x5E};

ISR(INT0_vect) //pd2
{
clr();

PORTA=0xBE;
for(jeda=0;jeda<8;jeda++)
{
lcdGotoXY(jeda,0);
lcd_putstring("Darurat");
lcdGotoXY(jeda,1);
lcd_putstring("Jalur 1");
_delay_ms(700);
clr();

}

}

ISR(INT1_vect) //pd3
{
LCDclr();

PORTA=0xEB;
for(jeda=0;jeda<8;jeda++)
{
lcdGotoXY(jeda,0);
lcd_putstring("Darurat");
lcdGotoXY(jeda,1);
lcd_putstring("Jalur 2");
_delay_ms(700);
clr();
}

}

int main(void)
{
DDRC |=_BV(1);

PORTC &=~_BV(1);
PORTC &=~_BV(2);
PORTC &=~_BV(3);
PORTC &=~_BV(4);
PORTC &=~_BV(5);
PORTC &=~_BV(6);
PORTC &=~_BV(7);
PORTA=0xFF;
DDRA=0xFF;
DDRD= 1<<2 | 1<<3;
PORTD=0xFF;
lcd_init(); //init LCD bit, dual line, cursor right
GICR = 1<<INT0 | 1<<INT1; // Enable INT0
MCUCR = 0<<ISC01 | 0<<ISC00 | 0<<ISC11 | 0<<ISC10; // Trigger INT0 on rising edge

sei();
clr();                                                 //clears LCD

while(1)
{
for(siap=0;siap<8;siap++)
{
PORTA=array[siap];
for(jeda=0;jeda<15;jeda++)
{

lcdGotoXY(jeda,0);
lcd_putstring("   Hati-Hati   ");
lcdGotoXY(jeda,1);
lcd_putstring("Taati Peraturan");
_delay_ms(200);
clr();
}
}
}

return 0;
}

//======================================================================//

Carakerja program diatas dapat dilihat melalui video dibawah ini :


wah kayanya perut udah mulai keroncongan nech...... saya tutup sampai disini aja ya, insyalloh untuk bisa share lebih jelasnya bisa posting lewat comment atau email : asyaripudin88@yahoo.com atau datang ke myrobo school of robotic bandung . mohon maaf jika masih banyak kekurangan ya namanya juga sambil belajar......salam hangat......

myrobo
School Of Robotics Bandung
Jl.Purwakarta 124 Antapani Bandung

No comments:

Post a Comment