2. Rangkaian Simulasi [kembali]
3. Flowchart [kembali]
4. Listing Program [kembali]
#include <mega128.h> // Library atmega 128
#include <delay.h> // Libaray delay
#include <alcd.h> // Library LCD
int pin[]={1,2,4,8}; //
Deklarasi pin digunakan
int i; //
Deklarasi nilai I;
void putar() //
Fungsi putar
{
for( i=4;i>0;i--) // Perulangan
{
lcd_gotoxy(1,1); //
Posisi tulisan pada LCD
lcd_putsf("Putar"); // Mencetak tulisan pada LCD
delay_ms(50); //
Delay selama 50 ms
lcd_clear(); // Membersihkan
/reset LCD
PORTD= pin[i]; //
Menjalankan motor sesuai biner
}
}
void keypad()
{
PORTE=0b1111011; //
PORTE sebagai keypad
delay_ms(1); //
Delay selama 1 ms
if (PINE.4 == 0) //
Jika PINE.4 ditekan dengan aktif low
{
lcd_gotoxy(1,0); // Posisi kata yang
tampil pada LCD
lcd_putsf("Anda Tekan 1"); //
Menulis kata pada LCD
putar(); // Memanggil fungsi putar
}
}
void main(void) //
Fungsi utama dalam program
{
PORTD=0x00; //
PORTD dengan kondisi awal aktif low
DDRD=0xff; // PORTD
ditetapkan sebagai ouput
PORTF=0x00; //
PORTF dengan kondisi awal aktif low
DDRF=0x00; // PORTF
ditetapkan sebagai input
PORTE=0xff; //
PORTE dengan kondisi awal aktif high
DDRE=0x0f; // PORTE
ditetapkan sebagai input dan output
lcd_init(16); //
Inisialisasi tipe LCD yang digunakan
while(1) //
Looping dalam program
{
keypad(); //
Fungsi keypad
if (PINB.0 == 1) //
Jika PINF.0 aktif high saat ditekan
{
putar(); //
Memanggil fungsi putar
}
}
}
Tidak ada komentar:
Posting Komentar