у вас отладчик работает ? что в регистре статуса уарта после записи байта в THR ?
и зачем это :
maskPIO = pPIO->PIO_OSR | (1 << 6) | (1 << 22);
pPIO->PIO_OER = maskPIO; //output USART
?
вот моя последовательность запуска уарта (IAR):
Код
AT91C_BASE_PMC->PMC_PCER = (1 << self->USART_ID);
/* Reset and disable receiver */
self->USART->US_CR = AT91C_US_RSTRX | AT91C_US_RSTTX;
/* Disable interrupts */
self->USART->US_IDR = 0xFFFFFFFF;
self->USART->US_MR = AT91C_US_MAX_ITER | AT91C_US_CLKS_CLOCK | AT91C_US_NBSTOP_1_BIT | AT91C_US_PAR_NONE | AT91C_US_CHRL_8_BITS;
self->USART->US_BRGR = 320;
AT91F_US_EnableTx(self->USART);
AT91F_US_EnableRx(self->USART);
/* Disable the RX and TX PDC transfer requests */
self->USART->US_PTCR = AT91C_PDC_RXTDIS;
self->USART->US_PTCR = AT91C_PDC_TXTDIS;
Сообщение отредактировал _dem - Sep 5 2007, 09:43