最近在调试6670的uart程序,为了使程序更灵活,修改了例程中的代码:

可是现在我测试发现,只能使用115200的波特率,要是改成其他的波特率就会出现乱码,请问这是怎么回事呢?
dennis wu:
串口另一端(比如使用的是串口调试助手)的波特率设置与DSP端的是否一致?
应该是很小的问题,不一定哪个地方你没有注意到导致的。
产生乱码还可能的原因是UART的输入时钟有问题。比如6670和6678的就不同。此时由波特率计算分频器参数时使用的宏定义会不同。
Kun Lee:
回复 dennis wu:
非常感谢你的回答。
波特率我两端是设置一直的,我在初始化函数中根据用户的参数来选择调用不同的宏。
我在想是不是115200跟19200或者9600配置参数还有其他的区别。
dennis wu:
回复 Kun Lee:
串口的波特率设置没那么复杂,这你可以放心。
建议你设断点进去看看,是不是switch一直进的是default。
还有,那几个宏的值是多少?怎么得到的?你是否清楚?
你的CPU主频是多少?
TI中文支持网