Вы находитесь на странице: 1из 4

#include <avr/io.

h>

#include <avr/io.h>

#define F_CPU 8000000

#include <util/delay.h>

#include <avr/interrupt.h>

#include "lcd.h"

#define voice1_of PORTD|=(1<<PD7)

#define voice2_of PORTD|=(1<<PD6)

#define voice3_of PORTD|=(1<<PD5)

#define voice4_of PORTD|=(1<<PD4)

#define voice1_on PORTD&=~(1<<PD7)

#define voice2_on PORTD&=~(1<<PD6)

#define voice3_on PORTD&=~(1<<PD5)

#define voice4_on PORTD&=~(1<<PD4)

int main(void)

DDRD=0xf0;
DDRB=0xff;

DDRC=0X00;

InitLCD(0);

_delay_ms(50);

LCDWriteStringXY(0,0,"INITIALISING...");

_delay_ms(3000);

PORTD=0XFF;

while(1)

LCDWriteStringXY(0,0,"Welcome to ");

LCDWriteStringXY(0,1,"KHAMMAM BUS STOP");

if ((PINC&(1<<PC0))==0x00)

if ((PIND&(1<<PD0))==0x01)

LCDClear();

LCDWriteStringXY(0,0,"BUS Arriving");

LCDWriteStringXY(0,1,"From HYD PF:2");

voice1_on;

_delay_ms(100);

voice1_of;

_delay_ms(5000);

if ((PIND&(1<<PD0))==0x00)

LCDClear();
LCDWriteStringXY(0,0,"BUS LEAVING");

LCDWriteStringXY(0,1,"To HYD PF:1");

voice2_on;

_delay_ms(100);

voice2_of;

_delay_ms(5000);

if ((PINC&(1<<PC1))==0x00)

if ((PIND&(1<<PD1))==0x02)

LCDClear();

LCDWriteStringXY(0,0,"BUS Arriving");

LCDWriteStringXY(0,1,"From VJWD PF:1");

voice3_on;

_delay_ms(100);

voice3_of;

_delay_ms(5000);

if ((PIND&(1<<PD1))==0x00)

LCDClear();
LCDWriteStringXY(0,0,"BUS LEAVING");

LCDWriteStringXY(0,1,"To VJWD PF:2");

voice4_on;

_delay_ms(100);

voice4_of;

_delay_ms(5000);

Вам также может понравиться