перенес проект с меги8 (отлажиный - рабочий) на 64. но нет прерывания по приему в usart1
fuse - запрограм. только SUT0
настройка
// USART1
UCSR1A = 0x00; // U2X нет, MPCM нет
UCSR1B = 0x98; // RXCIE,TXCIE,UDRIE,RXEN,TXEN,UCSZ2,RXB8,TXB8
// 1, 0, 0, 1, 1, 0, 0, 0
// включ. приемник и передач.
UCSR1C = 0x0E; // xxx,UMSEL,UPM1:0:, USBS, UCSZ1:0, UCPOL
// 0, 0, 00, 1, 11, 0
// рез.,ас., без парит., 2 стопа, 8 бит
UBRR1H = 0x00; //URSEL,UBRR11:8:
//
UBRR1L = 0x19; // 19200 bod
преревание
#pragma vector=USART1_RXC_vect
__interrupt void my_USART1_RXC_vect(void)
{
temp=UDR1;
UDR1='s';
my_FLAGS_A.FEF2 = 1;
if (my_FLAGS_A.FRST==0)
{
if (count_res==255)
{count_res=0;}
Resiv(temp);
}//if (my_FLAGS_A.FRST==0)
ответа нет, в прерывание не заходит, но передатчик работает (вставлял переобически посылать байт по прерыванию таймера 1). Флаг по приему выставляется (опять же вставлял код для проверки)
Ни чего не понимаю. Ну чего ей надо?
Хелп...!!!!