SlideShare a Scribd company logo
Membuat program Running LED menggunakan CV-AVR
6 Februari 2015 handril satryan purnama learningcvavr, program, tutorial
Buat temen-temen yang ingin belajar mikrokontroller terutama yang berbasis AVR,
pada postingan kali ini saya ingin memberikan tutorial penggunaan
software CodeVision AVR untuk menjalankan program Running LED, beserta
dengan langkah-langkah pembuatan project baru, dan penggunaan software proteus
sebagai alat untuk simulasi program. Namun program ini juga bisa langsung di
download ke board minimum system AVR anda.
Berikut adalah langkah-langkah pembuatan project baru pada CV-AVR :
 Pada menu bar file Click New file, kemudian akan muncul halaman berikur.
 Pilih project, kemudian pilih yes pada form konfirmasi.
 Kemudian akan muncul Form berikut untuk memilih Tipe chip yang akan digunakan.
Disini kita akan menggunakan tipe chip ATmega.
 Disini kita akan menggunakan chip atmega16 dengan crystal sebesar 16.000 Mhz
 Langkah selanjutnya adalah dengan mengatur Port I/O yang akan kita gunakan. Disini
kita akan menggunakan PORT B sebagai input untuk meberikan masukan berupa push
button untuk mengendalikan pergerakan LED nantinya.
 Kemudian kita akan mengatur PORT C sebagai keluaran untuk menyalakan LED, maka
kita akan melakukan settingan sebagai berikut.
 Langkah selanjutnya ialah dengan menyimpan program yang telah dibaut dalam satu
folder yang sama, dengan melakukan generate, save and exit. Kemudian simpan file
tersebut dengan nama yang sama sebanyak 3 kali. Seperti langkah berikut ini.
Setelah melakukan langkah-langkah tersebut maka pogram akan membuat file dan
folder khusus secara otomatis.
Selanjutnya kita akan mengetikkan program untuk membuat animasi running led
seperti yang telah saya janjikan kemarin
Berikut adalah script program untuk membuat animasi running LED:
/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.0 Standard
Automatic Program Generator
© Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com
Project : Running Led / blinking Led
Version : V0.1
Date : 05/10/2014
Author : Handril Sartriyan Purnama
Company : RELiF.Inc
Comments: More program at http://Relifline.wordpress.com
Chip type : ATmega16
Program type : Application
AVR Core Clock frequency: 8,000000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 256
*****************************************************/
#include <mega16.h>
#include <delay.h>
#define led PORTC
#define tombol PINA.7
// Declare your global variables here
int data=0b10000000,data2=0b00000001,data3,data4,x=0b00010000,y=0b1000,z;
void animasi1()
{
led=~data; //data di not kan lalu dicopy ke led (PORTA)
delay_ms(100);
data=data>>1; // data digeser ke kanan 1 x
if(data<0b00000001)data=0b10000000;
}
void animasi2()
{
led=~data2; //data2 di not kan lalu dicopy ke led
delay_ms(100);
data2=data2<<1; //data2 digeser ke kiri 1 x
if(data2>0b10000000)data2=0b00000001;
}
void animasi3()
{
led=~data;
delay_ms(100);
if(data3==1)data=data<<1; //jika data3 bernilai 1 maka data digeser ke kiri 1 x
if(data3==0)data=data>>1; //jika data3 bernilai 0 maka data digeser ke kanan 1 x
if(data>=0b10000000)data3++;
if(data<=0b00000001)data3++;
if(data3>1)data3=0;
}
void animasi5()
{
led=~data2;
delay_ms(100);
data2=data2*2; // data2 dikalikan 2
if(data2>0b10000000)data2=0b00000001;
}
void animasi6()
{
led=~data;
delay_ms(100);
data=data/2; // data2 dibagi 2
if(data<0b00000001)data=0b10000000;
}
void animasi7()
{
z=x|y; // x di OR kan dengan y lalu di copy ke z
led=~z; // z di not kan lalu dicopy ke led
delay_ms(100);
x=x>>1; // z digeser ke kanan 1 x
y=y<<1; // y digeser ke kiri 1 x
if(y>0b10000000)y=0b00010000;
if(x<0b0001)x=0b1000;
}
void animasi4()
{
if(tombol==0){data4++; delay_ms(100);} //jika tombol ditekan maka data4
bertambah 1 diberi tunda 100ms
if(data4>5)data4=0; //jika data4 nilainya lebih dari 3 maka data4 kembali bernilai 0
if(data4==0)animasi1(); //jika data4 bernilai 0 maka jalankan sub animasi1()
if(data4==1)animasi2(); //jika data4 bernilai 1 maka jalankan sub animasi2()
if(data4==2)animasi3(); //jika data4 bernilai 2 maka jalankan sub animasi3()
if(data4==3)animasi5();
if(data4==4)animasi6();
if(data4==5)animasi7(); //jika data4 bernilai 3 maka jalankan sub animasi7()
}
void main(void)
{
PORTA=0xFF;
DDRA=0x00;
PORTB=0x00;
DDRB=0x00;
PORTC=0xFF;
DDRC=0xFF;
PORTD=0x00;
DDRD=0x00;
while (1)
{
// Place your code here
animasi4();
}
}
//More program at : Relifline.wordpress.com
*********************************************************/
Buat kalian yang belum mengerti tentang penulisan program dengan menggunakan
bahasa C, kalian bisa membaca posingan sebelumnya yaitu Dasar pemrograman
bahasa C dengan CodeVision AVR.
Kemudian untuk Simulasi Bisa kita gunakan software proteus ISIS, berikut adalah
rangkaian simulasinya ;
Sekian dulu ya postingan ini, semoga bermanfaat.

More Related Content

Similar to Membuat program running led menggunakan

Modul dasar-mikrokontroler-bab-ii-kebutuhan-hardware-at mega16
Modul dasar-mikrokontroler-bab-ii-kebutuhan-hardware-at mega16Modul dasar-mikrokontroler-bab-ii-kebutuhan-hardware-at mega16
Modul dasar-mikrokontroler-bab-ii-kebutuhan-hardware-at mega16Beny Abdurrahman
 
PS2 Mouse Interfacing dengan pemrograman bahasa C
PS2 Mouse Interfacing dengan pemrograman bahasa CPS2 Mouse Interfacing dengan pemrograman bahasa C
PS2 Mouse Interfacing dengan pemrograman bahasa CJosephine Prasetya
 
Walking robot bergerak maju berhenti menggunakan atmega16
Walking robot bergerak maju berhenti menggunakan atmega16Walking robot bergerak maju berhenti menggunakan atmega16
Walking robot bergerak maju berhenti menggunakan atmega16Teguh Wiratama
 
Rancang Walking Robot Dengan Mikrokontroler Atmega16
Rancang Walking Robot Dengan Mikrokontroler Atmega16Rancang Walking Robot Dengan Mikrokontroler Atmega16
Rancang Walking Robot Dengan Mikrokontroler Atmega16thoriqdzulfikar
 
Buku tutorial visual basic 6
Buku tutorial visual basic 6Buku tutorial visual basic 6
Buku tutorial visual basic 6Nie Andini
 
Octave dan Mikrokontroller Communication
Octave dan Mikrokontroller CommunicationOctave dan Mikrokontroller Communication
Octave dan Mikrokontroller CommunicationLusiana Diyan
 
Traffic Light Berbasis ATMega32A
Traffic Light Berbasis ATMega32ATraffic Light Berbasis ATMega32A
Traffic Light Berbasis ATMega32AAmmazizzaky Tarigan
 
Pembuatan Walking Robot Motor DC Dengan Program ATmega Maju Berhenti
Pembuatan Walking Robot Motor DC Dengan Program ATmega Maju BerhentiPembuatan Walking Robot Motor DC Dengan Program ATmega Maju Berhenti
Pembuatan Walking Robot Motor DC Dengan Program ATmega Maju BerhentiYazid98
 
PID Implementation on Octave
PID Implementation on OctavePID Implementation on Octave
PID Implementation on OctaveLusiana Diyan
 
Menampilkan Karakter pada Lcd dengan Mikrokontroler ATMEGA16
Menampilkan Karakter pada  Lcd dengan Mikrokontroler ATMEGA16Menampilkan Karakter pada  Lcd dengan Mikrokontroler ATMEGA16
Menampilkan Karakter pada Lcd dengan Mikrokontroler ATMEGA16University of Lampung
 
Tutorial training revisi
Tutorial training revisiTutorial training revisi
Tutorial training revisiIrma Violetha
 
Smart trash can using arduino uno with lab view
Smart trash can using arduino uno with lab viewSmart trash can using arduino uno with lab view
Smart trash can using arduino uno with lab viewBrisaAmelia40
 
Smart Trash Can using Arduino Uno with LabVIEW
Smart Trash Can using Arduino Uno with LabVIEWSmart Trash Can using Arduino Uno with LabVIEW
Smart Trash Can using Arduino Uno with LabVIEWDindaAinunQolbi17
 
LED Flip-flop dengan Atemega16
LED Flip-flop dengan Atemega16LED Flip-flop dengan Atemega16
LED Flip-flop dengan Atemega16ibna mauladany
 
UAS_INTERNET OF THINGS_NAMA_HENDRO GUNAWAN_NIM 200401072103_KELAS IT602.pdf
UAS_INTERNET OF THINGS_NAMA_HENDRO GUNAWAN_NIM 200401072103_KELAS IT602.pdfUAS_INTERNET OF THINGS_NAMA_HENDRO GUNAWAN_NIM 200401072103_KELAS IT602.pdf
UAS_INTERNET OF THINGS_NAMA_HENDRO GUNAWAN_NIM 200401072103_KELAS IT602.pdfHendroGunawan8
 
Tutorial membuat project termometer dan jam digital menggunakan codevision av...
Tutorial membuat project termometer dan jam digital menggunakan codevision av...Tutorial membuat project termometer dan jam digital menggunakan codevision av...
Tutorial membuat project termometer dan jam digital menggunakan codevision av...Muhammad Kennedy Ginting
 
Praktikum iii lcd, servo motor, dan keypad dengan proteus
Praktikum iii lcd, servo motor, dan keypad dengan proteusPraktikum iii lcd, servo motor, dan keypad dengan proteus
Praktikum iii lcd, servo motor, dan keypad dengan proteusFarichah Riha
 

Similar to Membuat program running led menggunakan (20)

Bahasa assemler
Bahasa assemlerBahasa assemler
Bahasa assemler
 
Modul dasar-mikrokontroler-bab-ii-kebutuhan-hardware-at mega16
Modul dasar-mikrokontroler-bab-ii-kebutuhan-hardware-at mega16Modul dasar-mikrokontroler-bab-ii-kebutuhan-hardware-at mega16
Modul dasar-mikrokontroler-bab-ii-kebutuhan-hardware-at mega16
 
PS2 Mouse Interfacing dengan pemrograman bahasa C
PS2 Mouse Interfacing dengan pemrograman bahasa CPS2 Mouse Interfacing dengan pemrograman bahasa C
PS2 Mouse Interfacing dengan pemrograman bahasa C
 
Walking robot bergerak maju berhenti menggunakan atmega16
Walking robot bergerak maju berhenti menggunakan atmega16Walking robot bergerak maju berhenti menggunakan atmega16
Walking robot bergerak maju berhenti menggunakan atmega16
 
Rancang Walking Robot Dengan Mikrokontroler Atmega16
Rancang Walking Robot Dengan Mikrokontroler Atmega16Rancang Walking Robot Dengan Mikrokontroler Atmega16
Rancang Walking Robot Dengan Mikrokontroler Atmega16
 
Buku tutorial visual basic 6
Buku tutorial visual basic 6Buku tutorial visual basic 6
Buku tutorial visual basic 6
 
Octave dan Mikrokontroller Communication
Octave dan Mikrokontroller CommunicationOctave dan Mikrokontroller Communication
Octave dan Mikrokontroller Communication
 
Microcontroller
MicrocontrollerMicrocontroller
Microcontroller
 
Traffic Light Berbasis ATMega32A
Traffic Light Berbasis ATMega32ATraffic Light Berbasis ATMega32A
Traffic Light Berbasis ATMega32A
 
Pembuatan Walking Robot Motor DC Dengan Program ATmega Maju Berhenti
Pembuatan Walking Robot Motor DC Dengan Program ATmega Maju BerhentiPembuatan Walking Robot Motor DC Dengan Program ATmega Maju Berhenti
Pembuatan Walking Robot Motor DC Dengan Program ATmega Maju Berhenti
 
PID Implementation on Octave
PID Implementation on OctavePID Implementation on Octave
PID Implementation on Octave
 
Menampilkan Karakter pada Lcd dengan Mikrokontroler ATMEGA16
Menampilkan Karakter pada  Lcd dengan Mikrokontroler ATMEGA16Menampilkan Karakter pada  Lcd dengan Mikrokontroler ATMEGA16
Menampilkan Karakter pada Lcd dengan Mikrokontroler ATMEGA16
 
Tutorial training revisi
Tutorial training revisiTutorial training revisi
Tutorial training revisi
 
Ona anisa
Ona anisaOna anisa
Ona anisa
 
Smart trash can using arduino uno with lab view
Smart trash can using arduino uno with lab viewSmart trash can using arduino uno with lab view
Smart trash can using arduino uno with lab view
 
Smart Trash Can using Arduino Uno with LabVIEW
Smart Trash Can using Arduino Uno with LabVIEWSmart Trash Can using Arduino Uno with LabVIEW
Smart Trash Can using Arduino Uno with LabVIEW
 
LED Flip-flop dengan Atemega16
LED Flip-flop dengan Atemega16LED Flip-flop dengan Atemega16
LED Flip-flop dengan Atemega16
 
UAS_INTERNET OF THINGS_NAMA_HENDRO GUNAWAN_NIM 200401072103_KELAS IT602.pdf
UAS_INTERNET OF THINGS_NAMA_HENDRO GUNAWAN_NIM 200401072103_KELAS IT602.pdfUAS_INTERNET OF THINGS_NAMA_HENDRO GUNAWAN_NIM 200401072103_KELAS IT602.pdf
UAS_INTERNET OF THINGS_NAMA_HENDRO GUNAWAN_NIM 200401072103_KELAS IT602.pdf
 
Tutorial membuat project termometer dan jam digital menggunakan codevision av...
Tutorial membuat project termometer dan jam digital menggunakan codevision av...Tutorial membuat project termometer dan jam digital menggunakan codevision av...
Tutorial membuat project termometer dan jam digital menggunakan codevision av...
 
Praktikum iii lcd, servo motor, dan keypad dengan proteus
Praktikum iii lcd, servo motor, dan keypad dengan proteusPraktikum iii lcd, servo motor, dan keypad dengan proteus
Praktikum iii lcd, servo motor, dan keypad dengan proteus
 

Membuat program running led menggunakan

  • 1. Membuat program Running LED menggunakan CV-AVR 6 Februari 2015 handril satryan purnama learningcvavr, program, tutorial Buat temen-temen yang ingin belajar mikrokontroller terutama yang berbasis AVR, pada postingan kali ini saya ingin memberikan tutorial penggunaan software CodeVision AVR untuk menjalankan program Running LED, beserta dengan langkah-langkah pembuatan project baru, dan penggunaan software proteus sebagai alat untuk simulasi program. Namun program ini juga bisa langsung di download ke board minimum system AVR anda. Berikut adalah langkah-langkah pembuatan project baru pada CV-AVR :  Pada menu bar file Click New file, kemudian akan muncul halaman berikur.  Pilih project, kemudian pilih yes pada form konfirmasi.
  • 2.  Kemudian akan muncul Form berikut untuk memilih Tipe chip yang akan digunakan. Disini kita akan menggunakan tipe chip ATmega.  Disini kita akan menggunakan chip atmega16 dengan crystal sebesar 16.000 Mhz  Langkah selanjutnya adalah dengan mengatur Port I/O yang akan kita gunakan. Disini kita akan menggunakan PORT B sebagai input untuk meberikan masukan berupa push button untuk mengendalikan pergerakan LED nantinya.
  • 3.  Kemudian kita akan mengatur PORT C sebagai keluaran untuk menyalakan LED, maka kita akan melakukan settingan sebagai berikut.  Langkah selanjutnya ialah dengan menyimpan program yang telah dibaut dalam satu folder yang sama, dengan melakukan generate, save and exit. Kemudian simpan file tersebut dengan nama yang sama sebanyak 3 kali. Seperti langkah berikut ini.
  • 4. Setelah melakukan langkah-langkah tersebut maka pogram akan membuat file dan folder khusus secara otomatis.
  • 5. Selanjutnya kita akan mengetikkan program untuk membuat animasi running led seperti yang telah saya janjikan kemarin Berikut adalah script program untuk membuat animasi running LED: /***************************************************** This program was produced by the CodeWizardAVR V2.05.0 Standard Automatic Program Generator © Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com Project : Running Led / blinking Led Version : V0.1 Date : 05/10/2014 Author : Handril Sartriyan Purnama Company : RELiF.Inc Comments: More program at http://Relifline.wordpress.com Chip type : ATmega16 Program type : Application AVR Core Clock frequency: 8,000000 MHz Memory model : Small External RAM size : 0 Data Stack size : 256 *****************************************************/ #include <mega16.h> #include <delay.h> #define led PORTC #define tombol PINA.7 // Declare your global variables here
  • 6. int data=0b10000000,data2=0b00000001,data3,data4,x=0b00010000,y=0b1000,z; void animasi1() { led=~data; //data di not kan lalu dicopy ke led (PORTA) delay_ms(100); data=data>>1; // data digeser ke kanan 1 x if(data<0b00000001)data=0b10000000; } void animasi2() { led=~data2; //data2 di not kan lalu dicopy ke led delay_ms(100); data2=data2<<1; //data2 digeser ke kiri 1 x if(data2>0b10000000)data2=0b00000001; } void animasi3() { led=~data; delay_ms(100); if(data3==1)data=data<<1; //jika data3 bernilai 1 maka data digeser ke kiri 1 x if(data3==0)data=data>>1; //jika data3 bernilai 0 maka data digeser ke kanan 1 x if(data>=0b10000000)data3++; if(data<=0b00000001)data3++; if(data3>1)data3=0; } void animasi5() { led=~data2; delay_ms(100); data2=data2*2; // data2 dikalikan 2 if(data2>0b10000000)data2=0b00000001;
  • 7. } void animasi6() { led=~data; delay_ms(100); data=data/2; // data2 dibagi 2 if(data<0b00000001)data=0b10000000; } void animasi7() { z=x|y; // x di OR kan dengan y lalu di copy ke z led=~z; // z di not kan lalu dicopy ke led delay_ms(100); x=x>>1; // z digeser ke kanan 1 x y=y<<1; // y digeser ke kiri 1 x if(y>0b10000000)y=0b00010000; if(x<0b0001)x=0b1000; } void animasi4() { if(tombol==0){data4++; delay_ms(100);} //jika tombol ditekan maka data4 bertambah 1 diberi tunda 100ms if(data4>5)data4=0; //jika data4 nilainya lebih dari 3 maka data4 kembali bernilai 0 if(data4==0)animasi1(); //jika data4 bernilai 0 maka jalankan sub animasi1() if(data4==1)animasi2(); //jika data4 bernilai 1 maka jalankan sub animasi2() if(data4==2)animasi3(); //jika data4 bernilai 2 maka jalankan sub animasi3() if(data4==3)animasi5(); if(data4==4)animasi6(); if(data4==5)animasi7(); //jika data4 bernilai 3 maka jalankan sub animasi7() } void main(void) {
  • 8. PORTA=0xFF; DDRA=0x00; PORTB=0x00; DDRB=0x00; PORTC=0xFF; DDRC=0xFF; PORTD=0x00; DDRD=0x00; while (1) { // Place your code here animasi4(); } } //More program at : Relifline.wordpress.com *********************************************************/ Buat kalian yang belum mengerti tentang penulisan program dengan menggunakan bahasa C, kalian bisa membaca posingan sebelumnya yaitu Dasar pemrograman bahasa C dengan CodeVision AVR. Kemudian untuk Simulasi Bisa kita gunakan software proteus ISIS, berikut adalah rangkaian simulasinya ;
  • 9. Sekian dulu ya postingan ini, semoga bermanfaat.