AT91C_BASE_US0->US_IER = AT91C_US_RXRDY; // 1 AT91C_BASE_US0->US_IER = AT91C_US_RXBUFF; // 2
1. Как я понял это прерывание срабатывает при появлении данных 2. А это при заполнении буфера
Если обмен данных идет по другому usart, то при первом случае прерывание не срабатывает, пока не закончится обмен. А при втором, прерывание вызывается всегда, даже когда нет обмена с этим usartом.
Мне нужно организовать передачу по 4 usartам. 1)По одному идет обмен с устройством. Для него должен быть минимальный приоритет. 2)По второму обмен с датчиком. При срабатывании датчика, должен происходить обмен с ним. У него максимальный приоритет. 3)По последним двум проводится ретрансляция данных.
Забыл написать контроллер Atmel At91sam9g20.
|