串口通信测试方法

串口通信测试方法

ID:38913453

大小:89.51 KB

页数:6页

时间:2019-06-21

串口通信测试方法_第1页
串口通信测试方法_第2页
串口通信测试方法_第3页
串口通信测试方法_第4页
串口通信测试方法_第5页
资源描述:

《串口通信测试方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、串口通信测试方法1关于串口通信的一些知识:RS-232C是目前最常用的串行接口标准,用来实现计算机和计算机之间、计算机和外设之间的数据通信。在PC机系统中都装有异步通信适配器,利用它可以实现异步串行通信。而且MCS-51单片机本身具有一个全双工的串行接口,因此只要配以电平转换的驱动电路、隔离电路就可以组成一个简单可行的通信接口。由于MCS-51单片机的输入和输出电平为TTL电平,而PC机配置的是RS-232C标准串行接口,二者电气规范不一致,因此要完成PC机与单片机的数据通信,必须进行电平转换。注明:3)RS-232C上传送的数字量

2、采用负逻辑,且与地对称逻辑1:-3~-15V  逻辑0:+3~+15V 所以与单片机连接时常常需要加入电平转换芯片:2实现串口通信的三个步骤:(1)硬件连接    51单片机有一个全双工的串行通讯口,所以单片机和计算机之间可以方便地进行串口通讯。进行串行通讯时要满足一定的条件,比如计算机的串口是RS232电平的,而单片机的串口是TTL电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232进行转换。我们采用了三线制连接串口,也就是说和计算机的9针串口只连接其中的3根线:第5脚的GND、第2脚的RXD、第3脚的TXD。电

3、路如下图所示,MAX232的第10脚和单片机的11脚连接,第9脚和单片机的10脚连接,第15脚和单片机的20脚连接。使用MAX232串口通信电路图(9孔串口接头)(2)串行通信程序设计①通信协议的使用    通信协议是通信设备在通信前的约定。单片机、计算机有了协议这种约定,通信双方才能明白对方的意图,以进行下一步动作。假定我们需要在PC机与单片机之间进行通信,在设计过程中,有如下约定:    0x31:PC机发送0x31,单片机回送0x01,表示选择本单片机;0x**:PC机发送0x**,单片机回送0x**,表示选择单片机后发送数据

4、通信正常;    在系统工作过程中,单片机接收到PC机数据信息后,便查找协议,完成相应的操作。②串行通信程序设计主要有微机发送接收程序和单片机发送接收程序,微机上的发送和接收程序主要采用计算机高级语言编写,如C语言,因为了能够在计算机端看到单片机发出的数据,我们必须借助一个WINDOWS软件进行观察,这里利用如下图标的一个免费计算机串口调试软件,故而这一块计算机通信的程序可不写!在单片机上主要用汇编或C编写,在使用串口之前,必须先对串口进行初始化,主要是设置产生波特率的定时器1、串口控制和中断控制。具体步骤如下:(1)确定定时器1的

5、工作方式——编程TMOD寄存器(设置波特率);(2)确定串口的控制——编程SCON;(3)串口的中断方式,必须开CPU和源中断——编写IE寄存器;(4)计算定时器1的初值——装载TH1,TL1;(5)启动定时器1——编程TCON中的TR1位。为何串行口的工作方式选择方式1,这是针对于我们平常最常用的,单纯一块板对应于我们的私人电脑,所以就无须考虑是哪一块板发来的信息,即无须分清是数据帧还是地址帧。因为此时属于直通方式,所以无须考虑的。方式1为波特率可变的10位异步通讯接口方式,发送或接收一帧信息,包括1个起始位0,8个数据位和一个停

6、止位1,。其中的起始位和停止位在发送时自动插入的。输出:当单片机执行一条指令将数据写入发送缓冲SBUF且TI=0时,就启动发送。串行数据从TXD引脚输出,发送完一帧数据后,就有硬件置位TI。输入:在(REN)=1时,串行口采样RXD引脚,当采样到1到0的跳变时,确认是串行发送来的一帧数据的开始位0,从而开始接收一帧数据。在接收到附加的第9位数据后,当满足(1)RI=0(2)SM2=0或接收到的第9位数据为1时,第9位数据(停止位)才进入RB8,8位数据才能进入接收寄存器,并由硬件置位中断标志RI.否则信息丢失。所以在方式1接收时,应

7、先用软件清零RI和SM2标志。通常串行接口以方式1工作时,SM2置为0.而我们现实中需要的是一个机器中多块板进行显示和读取数据,所以这里不得不采取SM2=1的多机通信,而且我们一般采取的方式为方式3,TB8发送数据位,在模式2和3是要发送的第9位。该位可以用软件根据需要置位或清除,通常这位在通信协议中做奇偶位,在多处理机通信中这一位则用于表示是地址帧还是数据帧。这里就可以根据地址判断出我们需要选取的板是不是方位监测板。注明:如果用C语言来写的话,无论你是先发地址帧,然后数据帧,还是只发数据帧,最后显示的都是一样的内容,而汇编语言是不

8、行的。SM2:多机通信控制位,仅用于方式2和方式3.接收状态时,当串行口工作于方式2或3时,以及SM2=1时,只有当接收到的第九位数据为1时,才把接收到的前8位数据送入SBUF,且置位RI发出中断申请,否则会将接收到的数据丢弃。而当S

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。