Kali ini kita membagikan hasil pembelajaran dari lab Mekatronika bertema tentang LED menggunakan software proteus. Tugas yang saya peroleh tentang membuat rangkaian sistem minimum di proteus dengan 3 push button dan 8 buah LED. Dengan syarat :
-ketika button 1 ditekan, LED menyala dengan urutan (1,2,3,4,5,6,7,8)
-ketika button 2 ditekan, LED menyala dengan urutan (8,7,6,5,4,3,2,1)
-ketika button 3 ditekan, LED menyala dengan urutan(4,5),(3,6),(2,7),(1,8)
Sebelum mengerjakan tugas tersebut, software yang dibutuhkan adalah proteus dan cvavr.
1 Buka proteus, klik ikon schematic capture
2 Kemudian klik component mode, klik icon P,Kemudian tuliskan komponen yang dibutuhkan (Atmega32,Button,LED (Bisa warna terserah anda)) dan cari icon ground.
3 Rangkai Menjadi seperti gambar di bawah ini
4 Kemudian buka aplikasi CVAVR, klik new, kemudian pilih project, yes, AT90, lalu klik program, lalu generate save exit. Jangan lupa simpan gambar sebanyak 3X
5 Dan kita buat codingan
#include <mega32.h>
#include <delay.h>
#include <delay.h>
void main(void)
{
PORTA=0x00; DDRA=0x00;
PORTB=0x00; DDRB=0x00;
PORTC=0xFF; DDRC=0x00;
PORTD=0x00; DDRD=0xFF;
{
PORTA=0x00; DDRA=0x00;
PORTB=0x00; DDRB=0x00;
PORTC=0xFF; DDRC=0x00;
PORTD=0x00; DDRD=0xFF;
TCCR0=0x00; TCNT0=0x00;
OCR0=0x00; TCCR1A=0x00;
TCCR1B=0x00; TCNT1H=0x00;
TCNT1L=0x00; ICR1H=0x00;
ICR1L=0x00; OCR1AH=0x00;
OCR1AL=0x00; OCR1BH=0x00;
OCR1BL=0x00; ASSR=0x00;
TCCR2=0x00; TCNT2=0x00;
OCR2=0x00; MCUCR=0x00;
MCUCSR=0x00; TIMSK=0x00;
UCSRB=0x00; ACSR=0x80;
SFIOR=0x00; ADCSRA=0x00;
SPCR=0x00; TWCR=0x00;
OCR0=0x00; TCCR1A=0x00;
TCCR1B=0x00; TCNT1H=0x00;
TCNT1L=0x00; ICR1H=0x00;
ICR1L=0x00; OCR1AH=0x00;
OCR1AL=0x00; OCR1BH=0x00;
OCR1BL=0x00; ASSR=0x00;
TCCR2=0x00; TCNT2=0x00;
OCR2=0x00; MCUCR=0x00;
MCUCSR=0x00; TIMSK=0x00;
UCSRB=0x00; ACSR=0x80;
SFIOR=0x00; ADCSRA=0x00;
SPCR=0x00; TWCR=0x00;
while (1) {
if (PINC.0==0)
{PORTD=0b00000001; delay_ms(15);
PORTD=0b00000010; delay_ms(15);
PORTD=0b00000100; delay_ms(15);
PORTD=0b00001000; delay_ms(15);
PORTD=0b00010000; delay_ms(15);
PORTD=0b00100000; delay_ms(15);
PORTD=0b01000000; delay_ms(15);
PORTD=0b10000000; delay_ms(15);
} else {
if (PINC.0==0)
{PORTD=0b00000001; delay_ms(15);
PORTD=0b00000010; delay_ms(15);
PORTD=0b00000100; delay_ms(15);
PORTD=0b00001000; delay_ms(15);
PORTD=0b00010000; delay_ms(15);
PORTD=0b00100000; delay_ms(15);
PORTD=0b01000000; delay_ms(15);
PORTD=0b10000000; delay_ms(15);
} else {
if (PINC.1==0)
{PORTD=0b10000000; delay_ms(15);
PORTD=0b01000000; delay_ms(15);
PORTD=0b00100000; delay_ms(15);
PORTD=0b00010000; delay_ms(15);
PORTD=0b00001000; delay_ms(15);
PORTD=0b00000100; delay_ms(15);
PORTD=0b00000010; delay_ms(15);
PORTD=0b00000001; delay_ms(15);
} else {
{PORTD=0b10000000; delay_ms(15);
PORTD=0b01000000; delay_ms(15);
PORTD=0b00100000; delay_ms(15);
PORTD=0b00010000; delay_ms(15);
PORTD=0b00001000; delay_ms(15);
PORTD=0b00000100; delay_ms(15);
PORTD=0b00000010; delay_ms(15);
PORTD=0b00000001; delay_ms(15);
} else {
if (PINC.2==0)
{PORTD=0b00011000; delay_ms(15);
PORTD=0b00100100; delay_ms(15);
PORTD=0b01000010; delay_ms(15);
PORTD=0b10000001; delay_ms(15);
} else {
PORTD=0;}
};
};
{PORTD=0b00011000; delay_ms(15);
PORTD=0b00100100; delay_ms(15);
PORTD=0b01000010; delay_ms(15);
PORTD=0b10000001; delay_ms(15);
} else {
PORTD=0;}
};
};
}
}
}
6 Jangan lupa coba untuk mengetahui apakan codingan yang kita buat bisa menyala atau tidak