一种基于自定义脚本的航空显示控制方法技术

技术编号:18165192 阅读:28 留言:0更新日期:2018-06-09 11:14
本发明专利技术揭示了一种基于自定义脚本的航空显示控制方法,将航空显示器作为脚本执行器,先建立脚本文件的组织,脚本文件的组织包括,pdf.c文件、normal.h文件、draw.h文件、declare.h文件、warn.h文件,该航空显示控制方法包括以下步骤,词法分析、语法分析、符号表导入、创建索引目录、脚本导出,脚本最终在嵌入式平台下运行。本发明专利技术将航空显示元素和控制逻辑进行归纳,用户可以直接采用指令设计画面显示内容和控制逻辑,显示器通过逐条解析脚本文件中的指令,实现画面显示和逻辑控制。

An aviation display control method based on custom script

This invention discloses an air display control method based on custom script, which takes the aerial display as the script executor, first establishes the organization of the script file. The organization of the script file includes the pdf.c file, the normal.h file, the draw.h file, the declare.h file, the warn. h text, and the air display control method including the following Steps, lexical analysis, syntax analysis, symbol table import, index catalog creation, script export, and script finally run under the embedded platform. In this invention, the air display elements and control logic are summed up. The user can directly use the instruction design picture to display the content and control logic. The display can realize the picture display and logic control by parsing the instructions in the script file by bar.

【技术实现步骤摘要】
一种基于自定义脚本的航空显示控制方法
本专利技术涉及显示控制方法,尤其涉及一种基于自定义脚本的航空显示控制方法,属于嵌入式画面显示的

技术介绍
目前,国内军用航空领域,机载画面显示控制主要有以下两种形式,一是由显示器软件直接根据外部状态字进行画面显示和控制,二是通过ARINC661等通用标准接口由外部设备直接进行画面控制。第一种方法主机无法自主修改画面,当需要对画面进行完善修改时,首先向显示器承制方提出更改要求,再由显示器承制方按照指定要求进行显示画面更改,更改周期长、成本大,且显示器承制方需要知道画面中所有元素的显示内容和控制原理,不利于制造。第二种方法需要主机厂,按照标准设计控制模型,前期投入成本高、设计周期长、工程量大,对于中小型主机厂,短期内无法形成开发能力。
技术实现思路
本专利技术的目的是解决上述现有技术的不足,传统机载画面显示投入成本高、设计周期长、工程量大的问题,提供一种基于自定义脚本的航空显示控制方法。为了达到上述目的,本专利技术所采用的技术方案为:一种基于自定义脚本的航空显示控制方法,将航空显示器作为脚本执行器,先建立脚本文件的组织,脚本文件的组织包括,pdf.c文件,用于编译画面元素和画面控制逻辑;normal.h文件,用于定义逻辑运算符、取位运算符合属性更改字的关键字的十六进制编码;draw.h文件,用于定义显示控制脚本的关键字的十六进制编码;declare.h文件,用于定义数据缓存区地址对应的关键字的十六进制编码;warn.h文件,用于定义告警字符串、字符串显示格式和显示优先级的十六进制编码;所述航空显示控制方法包括以下步骤,步骤a,词法分析将脚本中的注释行和空行剔除,获取有效的字符串;步骤b,语法分析引入四则运算,用于在脚本中定义数据缓存区地址时计算偏移量;步骤c,符号表导入建立符号表到对应十六进制编码的映射表,将normal.h,draw.h,declare.h,warn.h四个文件中的关键字导入符号表,转换pdf.c文件时,将pdf.c文件中关键字替换为对应的十六进制数值,将整个脚本文本转化为十六进制数据文件;步骤d,创建索引目录pdf.c文件中定义了所有需要显示的画面,区分所有画面的唯一标识符为画面号,在导出脚本文件之前,在脚本文件的前端添加了文件头,对脚本文件的日期、版本和画面索引地址进行相应描述;步骤e,脚本导出转换完成后,生成.dat格式的十六进制数据脚本。本专利技术的有益效果主要体现在:将航空显示元素和控制逻辑进行归纳,用户可以直接采用指令设计画面显示内容和控制逻辑,显示器通过逐条解析脚本文件中的指令,实现画面显示和逻辑控制。附图说明图1是本专利技术中脚本转换的流程图。图2是本专利技术中脚本执行器运行的流程图。具体实施方式本专利技术提供一种基于自定义脚本的航空显示控制方法。以下结合附图对本专利技术技术方案进行详细描述,以使其更易于理解和掌握。一种基于自定义脚本的航空显示控制方法,将显示器作为脚本执行器,所有的画面显示内容和逻辑均通过脚本文件定义,后续画面的更改和优化大多通过修改脚本文件实现,大大减轻了显示器软件维护阶段的工作量。为了提升脚本在嵌入式平台下的执行效率,需要将文本格式的脚本转换为十六进制数据文件格式。具体地,先建立脚本文件的组织,脚本文件的组织包括:pdf.c文件,用于编译画面元素和画面控制逻辑;normal.h文件,用于定义逻辑运算符、取位运算符合属性更改字的关键字的十六进制编码;draw.h文件,用于定义显示控制脚本的关键字的十六进制编码;declare.h文件,用于定义数据缓存区地址对应的关键字的十六进制编码;warn.h文件,用于定义告警字符串、字符串显示格式和显示优先级的十六进制编码。脚本转换即是对以上文件中的内容进行分析,最终形成对应的十六进制数据文件,转换包括以下步骤:步骤a,词法分析词法分析主要是将脚本中的注释行和空行剔除,获取有效的字符串。注释行参考C++相应语法,支持行注释(“//”)后和块注释(“/**/”)两种注释方法,为简化设计难度,规定“#define”字符串、以字母开头且仅包含字母、数字、下划线的字符串以及用英文双引号包括的字符串为合法关键词。步骤b,语法分析为保证专利技术的易用性,本专利技术中仅引入四则运算,主要用于在脚本中定义数据缓存区地址时,便于计算偏移量。步骤c,符号表导入本专利技术需要建立符号表到对应十六进制编码的映射表,将normal.h,draw.h,declare.h,warn.h四个文件中的关键字导入符号表,当最终转换pdf.c文件时,就需要将pdf.c中关键字替换为对应的十六进制数值,将整个脚本文本转化为十六进制数据文件,在符号表导入时,根据关键字对十六进制编码进行分类,并添加标志位对指令、字符。步骤d,创建索引目录pdf.c中定义了所有需要显示的画面,区分所有画面的唯一标识符为画面号,在导出脚本文件之前,为了便于基于画面号进行文件访问,在文件的前端添加了文件头,对脚本文件的日期、版本和画面索引地址进行相应描述。步骤e,脚本导出转换完成后,生成.dat格式的十六进制数据脚本。再进行脚本运行,脚本最终在嵌入式平台下运行,运行时逐条对某一画面下的指令进行解析,完成画面的显示,并根据外部输入数据和按键实现对显示画面的逻辑控制。如图1所示,脚本转换的具体实施步骤说明:步骤201:选择文件,转换工具采用WIN32平台软件,通过选择窗口“打开”选项,映射到GetOpenFileName()函数,调用文件选择窗口;步骤202:获取文件路径,此处通过读取OPENFILENAME结构的成员变量lpstrFile获取当前文件名,并根据“\”位置得到文件路径;步骤203:检测脚本文件是否完整,本专利技术除pdf.c外还必须包含normal.h、declare.h、draw.h和warn.h,此处需要在pdf.c所在路径下检测上述脚本文件是否完整,若完整继续执行步骤204,否则退出;步骤204:初始化符号表,本专利技术需要将“#define”定义的关键字和其十六进制编码对应起来,为了便于检索,采用C++中的map结构,定义了map<string,val>symbolTable符号表,此处需对其进行初始化;步骤205:从normal.h中提取运算符号编码,normal.h文件中定义了逻辑运算符,取位运算符,属性更改字等运算符,本专利技术需要读取此文件中的运算符关键字和其对应的编码,保存到步骤203创建的符号表中;步骤206:从declare.h中提取地址符号编码,大部分指令需要引用地址,实现外部输入到画面显示内容的映射,本专利技术需要读取此文件中的地址符号关键字和其对应的编码,保存到步骤203创建的符号表中;步骤207:从draw.h中提取指令编码,指令是组成脚本的基本元素,本专利技术需要读取此文件中的指令关键字和其对应的编码,保存到步骤203创建的符号表中;步骤208:创建十六进制脚本文件,在脚本文件所在路径下创建.dat文件,并向后跳转0x2000字节目录空间,准备写入脚本文件,脚本文件分为三个部分,第一部分为目录、第二部分为告警字符、第三部分为画面,目录占0x2000固定字节,告警字符和画面连续存储;步骤209:读取warn.h文件,本文档来自技高网...
一种基于自定义脚本的航空显示控制方法

【技术保护点】
一种基于自定义脚本的航空显示控制方法,将航空显示器作为脚本执行器,其特征在于:先建立脚本文件的组织,脚本文件的组织包括,pdf.c文件,用于编译画面元素和画面控制逻辑;normal.h文件,用于定义逻辑运算符、取位运算符合属性更改字的关键字的十六进制编码;draw.h文件,用于定义显示控制脚本的关键字的十六进制编码;declare.h文件,用于定义数据缓存区地址对应的关键字的十六进制编码;warn.h文件,用于定义告警字符串、字符串显示格式和显示优先级的十六进制编码;所述航空显示控制方法包括以下步骤,步骤a,词法分析将脚本中的注释行和空行剔除,获取有效的字符串;步骤b,语法分析引入四则运算,用于在脚本中定义数据缓存区地址时计算偏移量;步骤c,符号表导入建立符号表到对应十六进制编码的映射表,将normal.h,draw.h,declare.h,warn.h四个文件中的关键字导入符号表,转换pdf.c文件时,将pdf.c文件中关键字替换为对应的十六进制数值,将整个脚本文本转化为十六进制数据文件;步骤d,创建索引目录pdf.c文件中定义了所有需要显示的画面,区分所有画面的唯一标识符为画面号,在导出脚本文件之前,在脚本文件的前端添加了文件头,对脚本文件的日期、版本和画面索引地址进行相应描述;步骤e,脚本导出转换完成后,生成.dat格式的十六进制数据脚本。...

【技术特征摘要】
1.一种基于自定义脚本的航空显示控制方法,将航空显示器作为脚本执行器,其特征在于:先建立脚本文件的组织,脚本文件的组织包括,pdf.c文件,用于编译画面元素和画面控制逻辑;normal.h文件,用于定义逻辑运算符、取位运算符合属性更改字的关键字的十六进制编码;draw.h文件,用于定义显示控制脚本的关键字的十六进制编码;declare.h文件,用于定义数据缓存区地址对应的关键字的十六进制编码;warn.h文件,用于定义告警字符串、字符串显示格式和显示优先级的十六进制编码;所述航空显示控制方法包括以下步骤,步骤a,词法分析将脚本中的注释行和空行剔除,获取有效的字符串;步骤b,语法...

【专利技术属性】
技术研发人员:周剑曹峰毛志洋黄星冯宁波
申请(专利权)人:苏州长风航空电子有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1