自由口通信中数据位与数据停止位如何理解?

在自由口通信设置中,数据位7位 这可以在SM30中设置,可是有的仪表要求数据位要求7位,可是仪表还要求停止位为2位,这在自由口设置中如何设置?

 另外:停止位在自由口通信中起到什么作用?

问题补充:
自由口通信看过S7 200手册,也做过几个简单的例子,可是还是不太明白这个停止位是起什么作用?
 停止位为1位,是1Bit还是1Byte?
 停止位的设置在自由口通信中编程中,为什么没体现?
 假如我的数据格式包为:
 * AA 00 CA 00 B8 !
 这也看不到停止位在哪里起作用啊?

最佳答案

S7 200自由口通信是基于RS485电气规范的,在串行通信的学习过程中,有许多人都容易误会的一个概念就是字节和数据包的概念,初学者容易将他们画上等号;
 字节:字节是在串行设备中定义的一个数据格式,1个字节为8位,可以表示在设备中的ASC字符或者特殊字符
 串行数据包:就是串行设备之间通信所定义的一个数据格式包,它是基于设置的串行数据参数,如波特率,数据位,校验位,停止位,支持串行通信的设备首先根据波特率来计算每个位的传输时间,根据这个时间来读取每个位的0或者1

 举个简单的例子:
 如果定义传输一个字符A,ASC码为 0100 0001

 你在SM30中定义通信设置:波特率9.6BPS,数据位8位 偶校验,1停止位

 在程序中你将字符A赋值给自己定义的串行通信区,并且调用xmt发送

 LD SM0.1
 MOVB 16#49,SMB30
 MOVB 1,VB100
 MOVB 16#41,VB101 
 LD I0.1
 EU
 XMT VB100,0

 也就是说在程序中你只要将A赋值就OK,剩下的工作就是串口根据你的串行设置来打包一个串行通信数据包,如下:

 串行通信数据包格式:
 8数据位   1校验位   1停止位
 0100 0001   0                 1     

 这是发送方根据串行通信设置将字符A打包成的数据包

 上述回答希望能帮到你

提问者对于答案的评价:
谢谢,调试成功一半,仪表接受指令成功,就是返回数据不对,还要继续调试。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc347427.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月4日 下午11:21
下一篇 2021年7月4日 下午11:21

相关推荐

  • DP通讯 帮忙选型

    本人新手,我现在控制两台电机的启停,需要DP通讯与主站连接,请各路大神帮忙选型,谢谢。 最佳答案 西门子200plc不支持profibus dp通讯的主站,只能做dp通讯…

    SIMATIC S7-200 2017年6月18日
  • PID指令

    S7-200的PID指令,P.I.D值能更改吗,如何更改呢,用触摸屏能给P.I.D付值吗 最佳答案 P、I、D的值可以修改的。将PID的地址,与触摸屏关联起来就可以了。通过在屏上设…

    SIMATIC S7-200 2017年12月7日
  • 谁有MODBUS的测试软件呢?

    谁有modbus的测试软件呢?最好是Modscan32的,也可以告诉我好一点的下载地方。多谢了。 问题补充:我要测试的是S7200的MODBUS程序,用这个软件也可以做的到吗?怎么…

    SIMATIC S7-200 2021年7月5日
  • TP277触摸屏的声音

    TP277触摸屏幕的声音,怎么不象其他型号的,触摸有声音呢?是在哪里设置?谢谢 问题补充:TP277-6的Control Panel没有声音设置选项 最佳答案 不具备此功…

    SIMATIC S7-200 2021年7月5日
  • s7200用PPI线连接,设置按200的手册设置好,但还是连接不上;请教大师一个问题,连接不上和电脑32位系统、64位系统有关系吗???

    s7200用PPI线连接,设置按200的手册设置好,但还是连接不上;请教大师一个问题,连接不上和电脑32位系统、64位系统有关系吗???我的电脑装的是64位系统。编程软件是200的…

    SIMATIC S7-200 2017年5月31日
  • s7200的掉电保持

    我首先在系统块设置了M0到M13为掉电保持,然后通过网站上的库指令写入30个V区到EEPROM,有写入成功标志,但是我断电重新上电后不止V区全部变成0,掉电保持的M区也变成了0,如…

    SIMATIC S7-200 2020年10月31日
  • 求STEP7最新编程软件

    求STEP7最新编程软件中文版,最好在网盘里 钻石用户推荐最佳答案 https://pan.baidu.com/s/1AHgEq6hsgGXbqXWh-VtOaw &nb…

    SIMATIC S7-200 2021年7月5日
  • 模拟量输入em231

    使用em231,选择单极性,0-5v电压量程,测温度时,读进AIW0中的数是不是要右移3位,然后在使用 最佳答案 1、选择单极性,0-5v电压量程,测温度时,读进AIW0中的数是不…

    SIMATIC S7-200 2020年10月31日
  • 200 AI8 模拟量输入

    请教一下,我8输入模拟量模块接收0-10模拟量信号,0-10v电压来自于电位器,电位器电源来自于开关电源,这样就导致我A-B-C-D-E-F-G-H-统一接到了开关电源的0v上,请…

    SIMATIC S7-200 2017年5月31日
  • PPI网络读写问题

    PPI网络读写,传送一个位地址的方法。比如传送主站的M1.0到从站的M1.0,他的数据地址应该怎么写啊。M1.0就是MB8吗??B不是代表一个字节吗???谢谢。。。。 最佳答案 1…

    SIMATIC S7-200 2017年12月21日

发表回复

登录后才能评论