Motor DC dengan AT Mega
20.211. Rangkaian Simulasi [kembali]
Prinsip kerja rangkaian :
Rangkaian terdiri dari LCD, driver motor L293D, keypad, dan 2 switch dengan menggunakan mikrokontroller Atmega 128. Dimana LCD terhubung pada PORT A, switch terhubung pada PORT B dengan switch 1 pada pin 0 ddan switch 2 pada pin 6. Dan juga driver motor terhubung pada PORT D dan keypad terhubung pada PORT E. untuk menjalankan simulasi klik tombol PLAY. untuk memulai operasi maka ditekan tombol RESET terlebih daulu. setelah itu, apabila tombol 1 pada keypad ditekan, maka motor stepper akan berputar. dan apabila switch 1 diaktifkan, maka motor stepper akan berputar juga
2. Flowchart [kembali]
3. 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
}
}
}
4. Video [kembali]