[发明专利]嵌入式软件交互方法有效
| 申请号: | 201810621667.1 | 申请日: | 2018-06-15 |
| 公开(公告)号: | CN108932171B | 公开(公告)日: | 2022-04-01 |
| 发明(设计)人: | 邵腾飞;施彬彬;周雄;黄浩;刘念 | 申请(专利权)人: | 中国航发控制系统研究所 |
| 主分类号: | G06F9/54 | 分类号: | G06F9/54 |
| 代理公司: | 无锡市大为专利商标事务所(普通合伙) 32104 | 代理人: | 屠志力;陈丽丽 |
| 地址: | 214063 江*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 嵌入式 软件 交互 方法 | ||
本发明提供一种嵌入式软件交互方法,上位机根据不同的场景需要,向下位机发出交互请求指令;下位机按交互请求指令进行处理,包括:单次读取指定地址的数据;连续读取指定地址的数据;单次批量读取一个地址范围对应的所有数据;连续批量读取多个指定地址的数据;写权限的密码验证;在指定地址写入指定的值;字长切换;能直接响应键盘上按键功能,如N读下一个数据、P暂停、R返回。本发明使用户获取下位机软件信息的方式更灵活。
技术领域
本发明涉及嵌入式系统,尤其是一种嵌入式软件交互方法。
背景技术
在进行嵌入式系统开发时,需要通过上位机与下位机通讯以获取嵌入式系统的信息。目前,下位机软件与上位机软件的交互是按固定通讯协议发送数据,供上位机软件接收、解析和保存。
通常嵌入式系统监视,通过嵌入式软件通讯发送数据给上位机,通讯协议固定,若观察数据需要变更,则软件需要变更,对于版本控制严格的软件,变更的费效比太大。
发明内容
本发明的目的在于提供一种嵌入式软件交互方法,上位机根据不同的场景需要,向下位机发出交互请求指令;下位机按交互请求指令进行处理;本发明按交互获取和设置信息,使获取下位机软件信息的方式更灵活,能够支撑一些特殊的工作场景,从而实现一些复杂的系统功能,如故障注入、自动化测试、临时获取软件计算的中间数据等。本发明采用的技术方案是:
一种嵌入式软件交互方法,包括以下步骤:
OP1)用户根据需要观察/修改数据的地址,然后输入交互请求指令到上位机软件;
OP2)上位机软件将交互请求指令发送给下位机;
OP3)下位机接收到交互请求指令后,存储在请求信息共享缓冲区内;
OP4)在下位机的控制软件后台任务或前台周期任务中,运行着交互任务;每当交互任务执行时,检查请求信息共享缓冲区中是否有数据,若有数据,则展开解析,若符合指令格式,则运行相应的功能;交互任务将产生的结果存放在响应信息共享缓冲区中;
OP5)控制软件运行周期任务时,检查响应信息共享缓冲区,若有数据,则读取全部或部分发送给上位机。
进一步地,交互任务的过程包括以下步骤:
步骤S1,从交互请求指令的第一个字符开始依次查找,找到分隔符或结束位置为止,将找到的一个部分的数据内容,存为字符串strTmp;
判断字符串strTmp长度是否为规定的地址长度;若为规定的地址长度,然后判断字符串strTmp中每个字符是否为HEX字符,若不是,则报“非法指令,地址错误”;若都是HEX字符,则将字符串strTmp转换为数据格式的临时变量addr;然后判断临时变量addr是否在下位机存储器地址范围内,若不在地址范围内,则报“非法指令,地址溢出”,否则临时变量addr合法,按如下方式处理:
地址变量Addr2 = addr;
若上述判断字符串strTmp长度不为规定的地址长度,则判断strTmp长度是否为规定的命令字长度;若字符串strTmp长度为规定的命令字长度,则跳转到步骤S4;
否则,报“非法指令”;
步骤S2,从步骤S1的查找位置继续向后查找,找到分隔符或结束位置为止,将找到的下一个部分的数据内容,存为字符串strTmp;
判断字符串strTmp长度是否为规定的地址长度;若为规定的地址长度,然后判断字符串strTmp中每个字符是否为HEX字符,若不是,则报“非法指令,第二地址错误”;若都是HEX字符,则将字符串strTmp转换为数据格式的临时变量addr;然后判断临时变量addr是否在下位机存储器地址范围内,若不在地址范围内,则报“非法指令,第二地址溢出”,否则临时变量addr合法,按如下方式处理:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航发控制系统研究所,未经中国航发控制系统研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810621667.1/2.html,转载请声明来源钻瓜专利网。





