s7-200通讯的编程步骤---通讯的编程步骤---自由口通讯

s7-200通讯的编程步骤---通讯的编程步骤---自由口通讯

ID:34956481

大小:762.55 KB

页数:13页

时间:2019-03-15

s7-200通讯的编程步骤---通讯的编程步骤---自由口通讯_第1页
s7-200通讯的编程步骤---通讯的编程步骤---自由口通讯_第2页
s7-200通讯的编程步骤---通讯的编程步骤---自由口通讯_第3页
s7-200通讯的编程步骤---通讯的编程步骤---自由口通讯_第4页
s7-200通讯的编程步骤---通讯的编程步骤---自由口通讯_第5页
资源描述:

《s7-200通讯的编程步骤---通讯的编程步骤---自由口通讯》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、S7S7S7-S7---200200200通讯的编程步骤200通讯的编程步骤------自由口通讯---自由口通讯S7-200自由口通讯是基于RS485通讯基础的半双工通讯,因此,发送和接收指令不能同时执行。自由口通讯使用SMB30(口0)和SMB130(口1)来定义通讯口的工作模式。SMB30/SMB130各位的定义如下:图1:通讯口工作模式寄存器使用自有口通讯,SM30.0和SM30.1(SM130.0和SM130.1=0)必须分别为1和0。一一一、一、、、发送指令(((XMT(XMTXMT)XMT)))使用XMT发

2、送指令可以把存于缓冲区中的数据,一次发送一个或1多个字节的数据,最多为255个。发送完最后一个字符后还可以连接到一个发送完中断(端口0为9,端口1位26,见下表)。图2:中断事件表2发送缓冲区的格式如下表所示:图3:发送缓冲区的格式说明:T+0:发送信息的字节个数需要提前定义。T+1~T+255:要发送的数据字节和XMT有关的寄存器:SMB4的SM4.5和SM4.6。SM4.5=1时,口0发送完毕;SM4.6=1时,口1发送完毕。由以上可以看出,有两种方法可以检测端口0或1的数据发送状态:一种是利用中断,一种是利用寄存器

3、SMB4的第5位(口0)和第6位(口1)。二二二、二、、、接收指令(((RCV(RCVRCV)RCV)))使用接收指令(RCV)可以从端口0或1接收一个或多个字节的数据(最多255个),并存于数据缓冲区。接收完最后一个字节后可以连接到一个接收完中断(口0是23,口1是24,见图2所示)。接收缓冲区的格式如下表所示:3图4:接收缓冲区的格式说明::::T+0:接收字符计数,在接收到结束字符时自动清零T+1:起始字符,在SMB88(口0)或SMB188(口1)中定义T+2~T+244:接收到的数据字节T+255:结束字符,在

4、SMB89(口0)或SMB189(口1)中定义和接收有关的寄存器及定义如下表所示:45图5:接收有关寄存器说明::::1、SMB86/SMB186:接收终止状态信息寄存器,含有接收终止原因的信息;2、SMB88/SMB188:信息起始位字节(如发送的信息有起始位,将把此寄存器的内容和接受信息的每一字节相比较来,检测确认后续字节是否是信息。因此,在编程时,需要在通讯初始化时,把信息启动位字节传入SMB88或SMB188);3、SMB89/SMB189:信息停止位字节(如发送的信息有停止位,将把此寄存器的内容和接受信息的每一

5、字节相比较来,检测确认信息是否已传送完毕。因此,在编程时,需要在通讯初始化时,把信息启动位字节传入SMB89或SMB189);4、SMB90/SMB190:信息空闲状态的时间(ms),空闲线时间后接受的第一个字节是信息的开始;5、SMB94/SMB194:接受的最大字符数(1~255)。三三三、三、、、编程步骤编程步骤111、1、、、利用利用SM0.1SM0.1初始化通讯参数SM0.1初始化通讯参数。。。。●使用SMB30(口0)或SMB130(口1)选择自由口通讯模式,并选定自由口通讯的波特率,数据位数和校验方式。●定

6、义通讯口接收格式SMB87(口0)或SMB187(口1)。包括启动信息接收(第7位=1),是否有起始位(第6位),是否有结束位(第5位)以及是否检测空闲状态(第4位)等。●设定起始位(SMB88或SMB188)或结束位(SMB89或SMB189)、空闲时间信息(SMB90或SMB190)及接收的最大字符数(SMB94或SMB194)。●如利用中断,连接接收完(事件23)和发送完(事件9)中断到6中断程序,并且开中断(ENI)。●一般还要利用SMB34定义一个定时中断,来定时发送数据(一般为50ms,即间隔发送数据的时间)

7、。222、2、、、编写主程序编写主程序自由口通讯主程序的任务是把要发送的数据放到送区,并接收数据到接收区,当然此部分也可以用一个子程序来完成。333、3、、、编写编写SMB34SMB34的定时中断程序SMB34的定时中断程序把要发送的数据传送到发送区,一般包括:发送的字节数,发送的数据及结束字符,最后再利用XMT指令启动发送。444、4、、、编写发送完中断和接收完中断子程序编写发送完中断和接收完中断子程序●发送完中断子程序的主要任务是发送完后断开SMB34定时中断,并利用RCV指令准备接收数据。●接收完中断子程序的任务是

8、接收数据完成后重新连接SMB34的定时中断,准备发送数据。四四四、四、、、例程例程本例的主要作用是利用甲机控制乙机的电机星-角起动,乙机控制甲机的电机星-角起动。I/O分配如下所示:发送和接收数据缓冲区的分配如下所示:7甲机(2(2(2号站(2号站)))程序梯形图)程序梯形图::::主程序::::8初始化子程序(((

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

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

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