Langsung saja kita coba membuatnya. Pertama kita buat rangkaiannya seperti berikut.
Rangkaian LED dengan ATmega16
Jika kita telah mempunyai rangkaiannya kita dapat membuat program LED berjalan sederhana ini dengan bahasa C. Program untuk meng-compile dapat menggunakan CVAVR.
Pengaturan CodeWizardAVR
Seperti biasa, buatlah proyek baru New File - Project - OK. Pada contoh ini digunakan ATmega16 dengan clock (Crystal) 11,059200 MHz. Sedangkan keluaran yang dugunakan adalah Port A, setelah itu Generate, Save and Exit. Pada program, jangan lupa menambahkan "#include<delay .h="">" agar dapat memanfaatkan fasilitas delay untuk mengatur rentang waktu tiap eksekusi program dalam hal ini jarak waktu (lamanya) LED menyala.
Program sederhananya, kita dapat memasukkan program berikut pada editor atau di bawah "// Place your code here".
PORTA=0b01111110;
delay_ms(100);
PORTA=0b10111101;
delay_ms(100);
PORTA=0b11011011;
delay_ms(100);
PORTA=0b11100111;
delay_ms(100);
PORTA=0b00000000;
delay_ms(100;
PORTA=0b11100111;
delay_ms(100);
PORTA=0b11011011;
delay_ms(100);
PORTA=0b10111101;
delay_ms(100);
PORTA=0b01111110;
delay_ms(100);
PORTA=0b11111111;
delay_ms(100);
Program di atas menggunakan kode biner untuk mengatur nyala LED pada tiap port mikrokontroler. Berdasarkan rangkaian dan program, angka "1" menunjukkan LED menyala, sedangkan "0" LED dalam keadaan mati. Delay dalam satuan milisecond (delay_ms), dan angka dalam kurung adalah nilainya. Pada contoh di atas menunjukkan "delay_ms (100)" yang berarti jeda selama 100 milisecond atau 0,1 detik.
apa fungsi dan prinsip kerja rangkaiannya, tolong di jelaskan
BalasHapus