我在写串口通信程序遇到的坑

我在做基于HC6800的51单片机上,写串口通信程序遇到了许多坑。

一个大坑:为什么HC6800上U转串口不能发送数据。

因为我们向HC6800烧程序都是使用图1所示的软件,所以我想当然地认为可以直接通过HC6800上的U转串进行串口通信,而我的同学信誓旦旦地告诉我可以。坑爹。并且这个软件好像也在提示可以用直接用U转串,进行串口通信(见图2)。但是当我打开串口调试助手的时候(如图3),却发现单片机掉电了(如图4)。其实HC6800上有另一个串口的,我们只要把连接图5黄框处串口。并且在图4中的6处,改变短路帽的接法,使之从USB下载模式转到串口通信模式(请仔细比对图4和图6)。

image

        图1 烧录软件

 

image

图2 软件的暗示

image

图3 打开串口调试助手

image

图4 单片机掉电

 

 

image

图5 黄框是另一个串口

image

图6 串口短路帽正确的接法

在完成了以上步骤之后,基本上我们就完成了串口通信的硬件连接准备。再来设置一下软件的配置。

下面的设置以波特率2400为示例

1、设置单片机内的波特率

image

2、设置串口调试助手的波特率

image

3、设置驱动中的波特率

image

 

image

 

 

注意:

服务器和客户端中波特率一定要一致,不然就收不到消息或收到错误的消息。

posted @ 2013-05-30 15:20  陈哈哈  阅读(879)  评论(0编辑  收藏  举报