Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

#include <mega328p.

h>
#include <delay.h>
void main(void)
{
// Crystal Oscillator division factor: 1
#pragma optsize-
CLKPR=(1<<CLKPCE);
CLKPR=(0<<CLKPCE) | (0<<CLKPS3) | (0<<CLKPS2) |
(0<<CLKPS1) | (0<<CLKPS0);
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif
DDRB=0b00010010;
DDRC=0b00000010;
DDRD=0b00110000;
PORTD.7=1;
PORTD.6=1;
PORTC.0=1;
PORTC.2=1;
PORTB.0=1;
PORTB.2=1;
PORTB.3=1;

while (1)
{
if (PIND.7==0) {PORTB.1=1;
PORTC.1=1;delay_ms(500);PORTB.1=0;PORTC.1=0;
delay_ms(500);} else {
if (PINC.0==0) {PORTB.1=1; delay_ms(500);PORTB.1=0;
delay_ms(500);} else
{
if (PINB.2==0) {PORTC.1=1; delay_ms(500);PORTC.1=0;
delay_ms(500);}
}}
if ((PINC.2==0)||(PINB.0==0)) PORTB.4=1; else
PORTB.4=0;
if (PINB.0==0)
{
if (PIND.6==0) {PORTD.4=1;PORTD.5=0;} else
{ PORTD.5=1; if (PINB.3==0) PORTD.4=1; else
PORTD.4=0;}
} else
{ PORTD.5=0; if (PINB.3==0) PORTD.4=1; else
PORTD.4=0;}
}

You might also like