[发明专利]一种CAN-LonWorks协议转换逻辑的编程方法有效
申请号: | 201710374389.X | 申请日: | 2017-05-24 |
公开(公告)号: | CN107247678B | 公开(公告)日: | 2020-04-03 |
发明(设计)人: | 杨玉钊;周峰;包演生;王飞;郑良广 | 申请(专利权)人: | 宁波中车时代传感技术有限公司 |
主分类号: | G06F13/40 | 分类号: | G06F13/40 |
代理公司: | 宁波诚源专利事务所有限公司 33102 | 代理人: | 张一平;王莹 |
地址: | 315021 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 can lonworks 协议 转换 逻辑 编程 方法 | ||
1.一种CAN-LonWorks协议转换逻辑的编程方法,其特征在于包括以下步骤:
步骤一、定义运算符并定义各运算符的优先级;
步骤二、定义协议变量对应的唯一的数字编码;
步骤三、根据CAN-LonWorks协议转换需求,使用操作数和运算符,并通过运算符规则编制各协议变量的显式赋值表达式,所述操作数包括十进制数值、十六进制数值以及协议变量,所述赋值表达式为:协议变量=转换表达式;
步骤四、对显式赋值表达式进行压缩转换,从而将显式赋值表达式编码为隐式赋值表达式,所述显式赋值表达式的压缩转换是对各协议变量用字符‘X’和协议变量对应的数字编码的字符组合进行替换,编码成隐式赋值表达式;
步骤五、对隐式赋值表达式进行检查,所述隐式赋值表达式的检查方法是将转换表达式中的操作数用数字替代,并执行隐式转换表达式的解析方法,解析无误则检查通过并在赋值表达式末尾追加一行结束标识“END”。
2.根据权利要求1所述的CAN-LonWorks协议转换逻辑的编程方法,其特征在于:所述隐式转换表达式的解析方法为:
扫描隐式赋值表达式所存储的内存,根据换行符‘\n’分解出每条赋值表达式,并依次解析、执行转换表达式,运算得到目标协议的协议变量的值,隐式赋值表达式的解析和执行流程如下:
步骤5.1、系统程序访问隐式转换表达式所在的存储区,指针指向隐式转换表达式的首地址;
步骤5.2、从指针位置依次遍历地址,直到遇到换行符‘\n’,遍历的内容即为一条隐式赋值表达式,然后指针指向换行符下一地址;
步骤5.3、根据赋值表达式的等号‘=’,将表达式拆分为协议变量和转换表达式;
步骤5.4、解析并运行转换表达式,解析无误则将运算结果赋值到协议变量;
步骤5.5、返回步骤5.1直到遇到结束标识。
3.根据权利要求2所述的CAN-LonWorks协议转换逻辑的编程方法,其特征在于:解析并运行转换表达式的方法为:对构成转换表达式的字符逐个进行解析;
设计两个堆栈,一个为用于存放运算符的运算符堆栈,另一个为存放操作数的数值堆栈;
将转换表达式中的运算符存入到运算符堆栈中,将转换表达式中的操作数存入到数值堆栈中;
逐个读取转换表达式的字符,并根据字符的类型分别进入运算符处理子流程和操作数字符运算子流程,运算符堆栈为空,数值堆栈仅有一个值时,数值堆栈中的值即为运算结果,如此完成一条转换表达式的正确解析和运算。
4.根据权利要求1所述的CAN-LonWorks协议转换逻辑的编程方法,其特征在于:所述协议变量包括CAN标识符、LonTalk消息编码或网络变量选择器、CAN数据、LonTalk数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于宁波中车时代传感技术有限公司,未经宁波中车时代传感技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710374389.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种转换装置和电子设备
- 下一篇:数据传输系统及方法