|
void UartInit(void)
{
uint32_t regVal;
// UARTCount = 0;
//
NVIC_DisableIRQ(UART_IRQn);
LPC_SYSCON->SYSAHBCLKCTRL |= (1 << 16);
LPC_IOCON->PIO3_0 |= 0x01;
LPC_IOCON->PIO3_1 |= 0x01;
LPC_SYSCON->SYSAHBCLKCTRL &= ~(1<<16);
//ê1ÄüUARTê±Öó
LPC_SYSCON->SYSAHBCLKCTRL |= (1<<12);
LPC_SYSCON->UARTCLKDIV = 0x1;
LPC_UART->TER = 0x00;
LPC_UART->LCR = 0x83;
LPC_UART->DLM = 0x00;
LPC_UART->DLL = 0x11;
LPC_UART->FDR = 0xF8;
LPC_UART->LCR = 0x03;
LPC_UART->FCR = 0x07;
while (( LPC_UART->LSR & (LSR_THRE|LSR_TEMT)) != (LSR_THRE|LSR_TEMT) );
while ( LPC_UART->LSR & LSR_RDR )
{
regVal = LPC_UART->RBR;
}
NVIC_EnableIRQ(UART_IRQn);
LPC_UART->IER = IER_RBR | IER_THRE | IER_RLS;
}
|
|