Здравствуйте!
Ниже инициализация UART
br = ((Fpclk) / (16 * baud)) /*- 1*/;
PCONP |= pcon_PCUART0; // Power up UART0
PINSEL0 = (1<< 1) | (1<< 3); // Enable RxD0 and TxD0
U0LCR = 0x00000083; /* UART0 8 bits, no parity, 1 stop bit, DLAB */
U0DLL = (unsigned char)(br);
U0DLM = (unsigned char)(br >> 8);
U0LCR = 0x00000003; /* UART0 8 bits, no parity, 1 stop bit*/
U0FCR = SD_FIFO_ENABLE | SD_FIFO_RX_RESET | SD_FIFO_TX_RESET;
Циклически записываю данные в буфер
void TIMER0VectoredIRQ (void) __irq
{
U0THR = 0xA5;
T0IR |= 0x00000001; //Clear match 0 interrupt
VICVectAddr = 0;// Dummy write to signal end of interrupt
}
Не работает. Смущает, что на выводе TxD0 логический ноль. Если передатчик корректно инициализирован,
то на его выходе должна быть логическая единица.
Что я сделал не так?
Заранее благодарен за поддержку!