|
предупреждаю сразу. всё спаяно нормально и работает приём и передача без прерывания. unsigned char uart_flag; INTERRUPT( SIG_UART_RECV ) int main(void) // init UART // init LED while(1) return 0;
E-mail:
info@telesys.ru
а вот такая програмка не хочет пахать. в чём траблы не могу понять.
компилиться это дело под ATmega8. Програмка должна по приёму байта инвертировать светодиод.
-----------------------------------
#include
#include
#include
unsigned char tmp;
{
tmp = UDR;
uart_flag = 1;
}
{
uart_flag = 0;
tmp = 0;
UBRRL = 51; /* 9600 Bd at 8MHz */
UCSRB |= _BV(RXEN)|_BV(RXCIE);
DDRB |= (1<
{
if( uart_flag == 1)
{
uart_flag = 0;
PORTB ^= (1<
}
}
-------------------------------------
Ответы