Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 0X00 status = red, 0X80 output
- // 0X01 status = yellow towards green, 0X40 output
- // 0X02 status = yellow towards red, 0X40 output
- // 0X03 status = green, 0X20 output
- void main() {
- unsigned char status;
- TRISA = 0XFF;
- TRISC = 0X00;
- status = EEPROM_Read(0x10);
- while(1)
- {
- if(status == 0X00)
- {
- if(PORTA & 0X10)
- {
- PORTC = 0X80;
- }
- if(PORTA & 0X08)
- {
- Delay_10ms;
- Delay_10ms;
- }
- else
- {
- Delay_10ms;
- Delay_1ms;
- Delay_1ms;
- }
- status = 0X01;
- }
- else if(status == 0X01)
- {
- if(PORTA & 0X10)
- {
- PORTC = 0X40;
- }
- if(PORTA & 0X08)
- {
- Delay_5ms;
- }
- else
- {
- Delay_1ms;
- Delay_1ms;
- Delay_1ms;
- }
- status = 0X03;
- }
- else if(status == 0X02)
- {
- if(PORTA & 0X10)
- {
- PORTC = 0X40;
- }
- if(PORTA & 0X08)
- {
- Delay_5ms;
- }
- else
- {
- Delay_1ms;
- Delay_1ms;
- Delay_1ms;
- }
- status = 0X00;
- }
- else
- {
- if(PORTA & 0X10)
- {
- PORTC = 0X20;
- }
- if(PORTA & 0X08)
- {
- Delay_10ms;
- Delay_10ms;
- }
- else
- {
- Delay_10ms;
- Delay_1ms;
- Delay_1ms;
- }
- status = 0X02;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement