为什么测试中波特率貌似只能是19200?

2019-07-15 18:32发布

请大家帮我看看这个问题,谢谢先!

背景:芯片是LPC2138, keil中编写程序,用LPC2000 Flash Utility 通过ISP将程序烧入芯片。
目的:调试uart0数据通讯,主程序中,uC不停地向PC端口发送一个Byte的数据

问题:
无论是程序中的波特率如何设定,在PC端的端口软件的波特率只能设定为19200,那么才能在端口软件中观察到正常的数据。在单片机和PC中间,我使用了一块现成的测试板,为的是将232转为USB,从而和电脑相连。问题可能是在这里吗?
      uC(UART  TX)--》测试板入(UART RX)--》测试板出(232  9针接口)--》PC (usb接口)

在keil的仿真里面,我已经看到uart0的baudrate被设置为比如说9600,但是实测里面,端口软件设置为9600,只能接收到错误数据,只有将其改为19200,才可以接收到正确数据。我还测试了其他的baudrate,也都是如此。

期待大家的指点,谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
2条回答
lante531
2019-07-15 22:36
发现一个新问题
更改了程序,想让它在初始化以后就执行两次UART0输出,每次一个字符。却发现程序运行后,端口软件不断接收到数据,每次一个字符。这是之前调试的程序所达到的效果啊。
难道程序没有烧进去??????LPC2000 Flash Utility 显示一切正常,进度条走到头,下面的信息提示“成功”。

一周热门 更多>