cortexM0串口初始化时钟使能问题求解!
void UartInit(){
P3_MFP&=~(P31_TXD0|P30_RXD0); //P3.0使能为串口0接收
P3_MFP|=(P31_TXD0|P30_RXD0); //P3.使能为串口发送
UART0_Clock_EN; //串口0时钟使能
UARTClkSource_ex12MHZ; //串口时钟选择为外部晶振
CLKDIV&=~(15<<8); //串口时钟分频为0
IPRSTC2|=UART0_RST; //复位串口0
IPRSTC2&=UART0_RST; //复位结束
UA0_FCR|=TX_RST; //发送FIFO复位
UA0_FCR|=RX_RST; //接收fifo复位
UA0_LCR&=~PBE; //校验位功能取消
UA0_LCR&=~WLS;
UA0_LCR|=WL_8BIT; //8位数据位
UA0_LCR&=NSB_ONE; //1位停止位
UA0_BAUD|=DIV_X_EN|DIV_X_EN; //设置波特率分频
UA0_BAUD|=((unFosc/unBaund)-2);//波特率设置UART_CLK/(A+2)=115200
}
串口0时钟使能和时钟选择为外部晶振的具体函数是什么啊,有经验的,麻烦分享一下,谢谢~! 经过几番周折,终于自己找到了!
APBCLK |= UART0_CLKEN; //使能UART时钟
CLKSEL1 = CLKSEL1 & (~UART_CLK) | UART_12M; //选择外部12M作为UART时钟源
页:
[1]