|
本帖最后由 fjian 于 2012-8-30 18:38 编辑
使用内部HSI代码如下,通信是正常的
void clk_init(void)
{
CLK_SYSCLKConfig(CLK_PRESCALER_HSIDIV2);
CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1);
}
切换到外部8M HSE,通信错误
void clk_init(void)
{
CLK_DeInit();
CLK_HSECmd(ENABLE);
while(CLK_GetFlagStatus(CLK_FLAG_HSERDY)==RESET);
while(CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO,
CLK_SOURCE_HSE,
DISABLE,
CLK_CURRENTCLOCKSTATE_DISABLE) == ERROR);
CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1);
}
同样是8M为什么不对,是不是我有什么地方没设置????
串口配置代码:
void uart3_init(void)
{
UART3_DeInit();
UART3_Init((uint32_t)4800, UART3_WORDLENGTH_8D, UART3_STOPBITS_1, UART3_PARITY_NO,
UART3_MODE_TXRX_ENABLE);
UART3_ITConfig(UART3_IT_RXNE,ENABLE);
UART3_Cmd(ENABLE);
} |
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|