#include #include #include #include #include #include #include #include #define F_CPU 4000000 #define UART_BAUD_RATE 9600 /* 9600 baud */ #define UART_BAUD_SELECT (F_CPU/(UART_BAUD_RATE*16l)-1) typedef unsigned char u08; typedef char s08; typedef unsigned short u16; typedef short s16; /* uart globals */ static volatile u08 *uart_data_ptr; static volatile u08 uart_counter; static volatile u08 led; SIGNAL(SIG_INTERRUPT0) { if (led == 0) { led = 1; sbi(PORTD, 7); } else { led = 0; cbi(PORTD, 7); } } static void delay(uint16_t us) { while(us) us--; } int main(void) { DDRD = 0x00; PORTD = 0x00; delay(50000); led = 0; MCUCR = ((1<