文章来源:网络作者:薇糖发布时间:2026-08-18 23:07:29
西门子S7-200PLC是一款编程软件软件,今天带来的是一篇自由口初始化的详细介绍,为大家演示了西门子S7-200PLC自由口初始化的详细介绍,一起来看看吧~
西门子S7-200PLC自由口初始化的详细介绍

应用自由口通信首先要把通信口定义为自由口模式,同时设置相应的通信波特率和上述通信格式。用户程序通过特殊存储器SMB30(对端口0)、SMB130(对端口1)控制通信口的工作模式。
CPU通信口工作在自由口模式时,通信口就不支持其他通信协议(比如PPI),此通信口不能再与编程软件Micro/WIN通信。CPU停止时,自由口不能工作,Micro/WIN就可以与CPU通信。
通信口的工作模式,是可以在运行过程中由用户程序重复定义的。如果调试时需要在自由口模式与PPI模式之间切换,可以使用SM0.7的状态决定通信口的模式;而SM0.7的状态反映的是CPU运行状态开关的位置(在RUN时SM0.7="1",在STOP时SM0.7="0")
自由口通信的核心指令是发送(XMT)和接收(RCV)指令。在自由口通信常用的中断有“接收指令结束中断”、“发送指令结束中断”,以及通信端口缓冲区接收中断。
初始化自由口;SMB30(对于端口0)和SMB130(对于端口1)被用于选择波特率和校验类型。SMB30和SMB130可读可写;程序如下:


发送数据:
发送指令XMT能够发送一个字节或多个字节的缓冲区,最多为255个。使用边沿触发。
发送缓冲区格式:第一个字节为字符个数,其后为发送的信息字符。
示例:如果PLC连续发送2个字符16#55和16#EE,程序如下图4.:

接收指令RCV能够接收一个字节或多个字节的缓冲区,最多为255个。使用边沿触发或第一个扫描周期触发。
接收缓冲区格式:第一个字节表示接收的字符个数,其后为接收的信息字符。
RCV使能会将TBL缓冲区中的字符个数清零

接收状态字节。SMB86(port0),SMB186(port1)。
当接收状态字节为0,表示接收正在进行。
当接收状态字节不为0,表示接收指令未被激活或者已经被中止
接收指令起始和结束条件
接收指令使用接收信息控制字节(SMB87或SMB187)中的位来定义信息起始和结束条件。必须为接收信息功能操作定义一个起始条件和一个结束条件(最大字符数)。


起始字符检测
当接收到SMB88/188指定起始字符后,接收信息功能将起始字符作为信息的第一个字符存入接收缓冲区。
起始字符之前的字符被忽略,起始字符和其后的所有字符存入接收缓冲区。
示例:PLC接收的起始条件定义为起始字符检测(设置SMB87中的il=0,sc=1,bk=0,起始字符SMB88=16#55);接收的结束条件定义为最大字符个数SMB94=4

7接收指令结束条件
接收指令支持以下一种或几种组合的结束条件:
结束字符检测
在起始条件之后,接收指令检查接收的所有字符,如果检测到结束字符,则将其存入缓冲区,结束接收。
示例:PLC接收的结束条件定义为结束字符检测(设置SMB87中的ec=1,定义结束字符SMB89=16#55),接收起始条件定义为起始字符检测(起始字符16#AA)。
以上就是小编给大家带来的全部内容,大家都学会了吗?

禁地之战(乾马金龙专属)
超变传奇996传奇
乾马金龙专属 全新三职业神器,上线领豪礼,爽玩!

王者霸业(王斩切割爆爆爆)
超变传奇
王斩切割爆爆爆 上线即送自动拾取、自动回收

烈焰之怒(骷髅超变日送10万...
超变传奇996传奇
骷髅超变日送10万 上线免费送刀刀绿毒刀刀冰冻自动回收,无条件登录就送10万充值货币!

铸兵之王(百亿直购送充爆)
超变传奇996传奇
百亿直购送充爆 自动拾取 自动回收 攻速全满 直升10000级 六大终极装备

江湖我最牛(GM狂送真充超超...
超变传奇996传奇
GM狂送真充超超变 全新超变几率触发GM手机,狂送真充红包

斗转武林(竹火百锻默爆)
超变传奇996传奇
竹火百锻默爆 上线福利:自动拾取、自动回收、更多豪礼在线相送!!

战影破穹(百亿送充神技觉醒...
超变传奇996传奇
百亿送充神技觉醒 上线即送自动回收、自动拾取等!

苍穹之剑2(帝煞古兵专属)
超变传奇996传奇
帝煞古兵专属 上线即送自动拾取、自动回收

摸金之路(无限超变天天送百...
超变传奇996传奇
无限超变天天送百万 超爽直购币白漂版本,天天送百万直购币!

国战来了(3.5折免费版)
策略
3.5折免费版 3.5折免费,每天送100限时代金券

《逆战:未来》张杰福利放送:杰...