# Hack Your Skills! to be Professional Mechatronics
C : Membuat Lampu Berjalan Sederhana ATMEGA16
Bismillah... Yak, ini adalah program pertama dan kedua saya untuk ATMega16, koding perdana :D Sebenernya koding yang kedua dan ketiga sih, sebab yang pertama cuman ngidupin led sebiji, kemudian dilanjut dengan negidupin semua led dan seterusnya dan seterusnya.
Program ini dibuat dengan WinAVR, sebenarnya rada bingung mau pake CodeVision atau WinAVR. Jadi untuk awal saya coba keduanya. Lalu keputusan ketemu setelah mulai koding buat nampilin karakter di LCD. Pada WinAVR, rada ribet kalo misal mau ngakses bit per bit, enakan di CodeVision. Jadi, selanjutnya-selanjutnya kayaknya bakal make CodeVision. :)
Nah, untuk program pertama di bawah ini, ini fungsinya ngidupin led pake switch. Jadi ketika salah satu tombol switch dipencet, maka led salah satu led akan menyala sesuai index (posisi) switch itu berada.
Pada umunya untuk pin pada mikro itu ada tiga bagian yang harus diperhatikan, DDRx, ini berfungsi untuk nentukan pin pada PORTx akan dijadikan input atau ouput. Kemudian PORTx, ini berfungsi sebagai input (setelah diinisialisasi ditentukan oleh DDRx). Kemdian PINx, ini berfungsi ketika pin sebagai inputan (setelah diinisialisasi oleh DDRx).
#include <avr/io.h> #include <avr/delay.h> #define LED PORTB #define DDRLED DDRB #define PORTSWITCH PORTC #define DDRSWITCH DDRC #define SWITCH PINC int main(void){ DDRLED = 0xFF; DDRSWITCH = 0x00; PORTSWITCH = 0xFF; int REF = 0xFF; while(1){ LED = SWITCH; } }
Sedangakan untuk program yang kedua ini, berfungi untuk membuat lampu berjalan (maksudnya bergerak). Eh, maksudnya, nyala lednya bergantian, jadi kalo diliat dari jauh lednya menyala bergantian dari mati, nyala sendirian, nyala berdua, dan seterusnya.
#include <avr/io.h> #include <avr/delay.h> #define LED PORTB #define DDRLED DDRB int main(void){ DDRLED = 0xFF; int REF = 0xFF; while(1){ LED = REF; _delay_ms(100); REF >>= 1; if(REF==0x00){ LED = REF; _delay_ms(100); REF = 0xFF; } } }
Script di atas masih ditulis menggunakan WinAVR. Untuk gambarnya ndak ada. Tulisan ini sebagai catetan saja, soalnya ketika artikel ini ditulis, mikro-nya sudah diisi dengan program lainnya. Jadi kalo mau liat gambarnya, coba saja sendiri. :v
Top Artikel :
Written by ElangSakti
C : Membuat Lampu Berjalan Sederhana ATMEGA16
Bahasan: Bismillah... Yak, ini adalah program pertama dan kedua saya untuk ATMega16, koding perdana :D Sebenernya koding yang kedua dan ketiga sih...
Published at Senin, 31 Maret 2014, Updated at Senin, 31 Maret 2014
Reviewed by dr. on
Rating: 4.7
C : Membuat Lampu Berjalan Sederhana ATMEGA16
Bahasan: Bismillah... Yak, ini adalah program pertama dan kedua saya untuk ATMega16, koding perdana :D Sebenernya koding yang kedua dan ketiga sih...
Published at Senin, 31 Maret 2014, Updated at Senin, 31 Maret 2014
Reviewed by dr. on
Rating: 4.7
Langganan:
Posting Komentar
(
Atom
)
pake proteus aja mas buat tampilannya :)
BalasHapus