#include #include //? #define signalBOTHFORWARD 'E' #define signalBOTHBACK 'D' #define signalRIGHTFORWARD 'W' #define signalRIGHTBACK 'S' #define signalLEFTFORWARD 'Q' #define signalLEFTBACK 'A' #define signalRightForwardLeftBack 'R' #define signalLeftForwardRightBack 'F' char recieve; void setupPorts(){ //PD2-7 Send & PD0 DDRD=0b11111110; } void Reset(){ PORTD = 0B00000000; } void signalHandler(char rxd){ switch (rxd){ case 'D': //QW PORTD = 0b10011100; Reset(); break; case 'E': //AS PORTD = 0b11110000; Reset(); break; case 'S': PORTD = 0b10000100; Reset(); break; case 'W': PORTD = 0b11000000; Reset(); break; case 'A': PORTD = 0b00011000; Reset(); break; case 'Q': PORTD = 0b00110000; Reset(); break; case 'R': //QS PORTD =0b11011000; Reset(); break; case 'F': //AW PORTD =0b10110100; Reset(); break; case 'O': //STANNA PORTD =0b00000000; Reset(); break; default: Reset(); break; } } char USART_Init(void){ s //USART Baud Rate Register (UBRR) // USART set to Asynchronous Normal Mode UBRRH = 0; UBRRL = 51; // enabled //UCSRB: USART Control and Status Register B (8-bit) //UCSRC: USART Control and Status Register C (8-bit) UCSRB = 0b00010000; UCSRC = 0b00000110; } char USART_Recieve(void){ while(!(UCSRA & (1<