湖南西门子交换机代理商
湖南西门子交换机代理商湖南西门子交换机代理商湖南西门子交换机代理商
菏泽回收西门子触摸屏河南回收西门子触摸屏
郑州回收西门子触摸屏开封回收西门子触摸屏洛阳回收西门子触摸屏
平顶山回收西门子触摸屏焦作回收西门子触摸屏鹤壁回收西门子触摸屏
新乡回收西门子触摸屏
1、寄存器设定
编写程序之前我们先看看对应的特殊位寄存器应该如何设置。
SMB30 = 2#00001001=16#9
图1-1
1) 自由口模式。第0、1位。SM30.0=1、SM30.1=0
2) 通讯速率9600bps。第2、3、4位。SM30.2=0、SM30.3=1、SM30.4=0
3) 每个字符的数据位是8位。第5位。SM30.5=0
4) 不选用奇偶效验。第6、7位。SM30.6=0、SM30.7=0
SMB87 = 2#10011100 =16#9C
图1-2
1) 不使用中断条件作为检测信息的开始。第1位。SM87.1=0
2) 当SMW92中的定时时间超出时终止接收。第2、位。SM87.2=1
3) 定时器是信息定时器。第3位。SM87.3=1
4) 使用SMW90的值检测空闲状态。第4位。SM87.4=1
5) 不检测结束字符。第5位。SM87.5=0
6) 不检测起始字符。第6位。SM87.6=0
7) 允许信息接收功能。第7位。SM87.7=1
注:第0位为无效位不使用,**为0。
SMW90 = 4
将SMW90设定成4表示报文间空闲时间大于4ms后接收的个字符是新信息的开始。
SMW92 = 6
由于我们设定SM87.3为1确定使用固定报文长度方式,假设报文长度为6个字符,那么在9600bps通讯速率下1个字符(10个位)的接收需要1.04ms,6个字符的接收就需要6.24ms,因此将SMW92设定成6表示从接收到个字符开始后6ms停止接收信息,同时空闲4ms后(SMW90 = 4)接收到的个字符是新信息的开始。
SMB94 = 255
SMB94定义接收缓冲区大小,此处定义为大255字节。(注:接收缓冲区是用来存放接收到的数据的区域,大255字节,大家可以根据通讯情况自由定义。)
2、程序编写
图2-1
图2-2
以上就是固定报文长度方式下接收数据的程序,此处我们设定的报文长度是6个字符,下面我们通过串口调试软件给PLC发送7个字符长度(AA 11 22 BB 23 45 C1)的一个报文看看会发生什么情况。
图2-3
图 2-4
由图 2-4状态表监控结果我们可以发现我们只能接收到6个字符,第7个字符C1并没有接收到。
湖南西门子,交换机代理商,DP电缆,电源模块,触摸屏湖南西门子,交换机代理商,DP电缆,电源模块,触摸屏湖南西门子,交换机代理商,DP电缆,电源模块,触摸屏湖南西门子,交换机代理商,DP电缆,电源模块,触摸屏湖南西门子,交换机代理商,DP电缆,电源模块,触摸屏湖南西门子,交换机代理商,DP电缆,电源模块,触摸屏湖南西门子,交换机代理商,DP电缆,电源模块,触摸屏
SIEMENS | 模块 | 6ES7231-5PD32-0XB0 |
Siemens | 模块 | 6ES7223-1PL32-0XB0 |
Siemens | 模块 | 6ES7522-1BL01-0AB0 |
Siemens | 模块 | 6ES7960-1AA08-0XA0 |
SIEMENS | 模块 | 6ES7132-6BF01-0AA0 |
Siemens | 电缆 | 6ES7288-6EC01-0AA0 |
Siemens | 模块 | 6GK7543-1AX00-0XE0 |
SIEMENS | 存储卡 | 6ES7954-8LL03-0AA0 |
SIEMENS | 交换机 | 6GK5216-0BA00-2AC2 |
SIEMENS | 交换机 | 6GK5208-0BA00-2AC2 |
Siemens | 模块 | 6ES7521-1BL00-0AB0 |
Siemens | 模块 | 6ES7288-1CR60-0AA0 |
Siemens | 模块 | 6ES7288-2DT08-0AA0 |
Siemens | 水晶接头 | 6GK1901-1BB10-2AB0 |
Siemens | 模块 | 6ES7134-6GD01-0BA1 |
联系方式
- 地址:上海 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
- 邮编:201600
- 电话:15021292620
- 销售:颜娟
- 手机:15021292620
- 传真:021-33556143
- 微信:X15021292620
- QQ:2799536152
- Email:2799536152@qq.com