Part I – 需求概要
发送字符查询传感器当前状态,并对返回数据进行切片处理,提取有效数据位,并转换相应数字。
发送数据:1*#M
对应十六进制0x312A234D;
返回数据1:OK,500,69,70#
4F 4B 2C 35 30 30 2C 36 39 2C 37 30 23
返回数据2:NG,500,69,70#
4E 47 2C 35 30 30 2C 36 39 2C 37 30 23
Part II – 流程实现
截取字符原理示意
Part III – 硬件组态
-
串行硬件端口
-
串口配置
-
通讯配置(默认:9600,8偶1)
Part IV - 逻辑编程
Part V - 登录调试
输入测试数据,如:OK,500,69,70#,长度:13(字节)
观察字符阶段结果为:500、69、70,其中OK和NG输出为100ms脉冲波。
接收测试1(长度:78):
OK,00,11,22,33,44,55,66,77,88,09,00,11,22,33,44,55,66,77,88,19,00,11,22,33,44#
返回数据1:
接收测试2(长度:66):
NG,0011,2233,4455,6677,8809,0011,2233,4455,6677,8819,0011,2233,44#
返回数据2:
使用串口调试助手,可检查硬件接线是否正确
附录:
- 样例程序(见附件)
- ASCII码表(见附件)