各位大侠你们好!
今天调试串口通讯问题?出现以下问题!
这个是我时钟配置:使用外部谐振器8M晶振
CLK_ECKR=0x01; //外部时钟使能打开
CLK_SWCR=0x02; //主时钟切换使能
CLK_CKDIVR=0x03; //时钟8分频后CPU时钟为1M
CLK_SWR=0xB4; //主时钟切换寄存器 选择HSE为主时钟源
while (!(CLK_SWCR & 0x08));
CLK_CSSR=0x01; //时钟安全系统寄存器
这个是程序串口配置:
//波特率为 9600;8位数据;一个停止位;没有校验位;接收使能;
UART1_BRR2=0x01;
UART1_BRR1=0x34;
UART1_CR3=0x00;
UART1_CR2=0x2C;
UART1_CR1=0x00;
__enable_interrupt();
现在问题出现通讯的数据不对! 如果我时钟配置的时候不分频就(CLK_CKDIVR=0x00; )就可以通讯数据正确! 请问资料上面写着是Fmaster/9600的! 我现在怎么去判别! 请指教啊! 等.......... |