一种消除航空电子设备rs232串口干扰的方法

文档序号:6385715阅读:976来源:国知局
专利名称:一种消除航空电子设备rs232串口干扰的方法
技术领域
本发明属于嵌入式系统领域,具体涉及到一种消除航空电子设备RS232串口干扰的方法。
背景技术
目前,航空电子设备软件一般采用Boot+VxWorks的工作模式,其中Boot是操作系统引导程序,同时具有调试维护功能,Boot程序通过RS232串口接收调试维护命令。Vxfforks是一种嵌入式操作系统,航空领域应用非常广泛,RS232串口作为其控制台使用。RS232串口是航空电子设备中非常重要的调试维护接口,但航空电子设备正常工作时并不使用它。随着航空设计技术水平提高,航空飞行器设计越来越复杂,航空电子设备所处的电磁环境也越来越恶劣。RS232串口很容易受到干扰,产生“异常”的输入字符。VxWorks控制台收到“异常”字符后,花费大量的时间处理,降低了航空电子设备的工作性能。Boot程序收到“异常”字符后,进入调试维护模式,导致航空电子设备不工作。航空飞行器的结构非常复杂,需要进行大量的实验论证,才能找到RS232串口干扰的根源。实验论证的过程会消耗大量的财力、人力,而有些时候找到根源也没有太好的方法解决。现有技术一般通过改动硬件来消除航空电子设备RS232串口干扰。然而正式交付的航空电子设备的RS232串口接收脚断开,不具备接收能力,当航空电子设备需要维护升级时,将RS232串口接收脚连接,这种方法不仅需要增加额外的硬件开销,而且会降低航空电子设备的可维护性。

发明内容
本发明的目的提供一种消除航空电子设备RS232串口干扰的方法,从而在不需要额外硬件开销条件下,可以保证硬件状态在正常工作和调试维护时一致,降低了航空电子设备潜在的风险,提高了航空电子设备的可维护性。本发明是通过以下技术方案实现的一种消除航空电子设备RS232串口干扰的方法,包括以下步骤步骤a. Boot程序弓I导VxWorks操作系统运行在已有的操作系统引导程序Boot中,增加一个RS232串口使能模块,该模块判断RS232串口输入的字符是否与模块中预置的一致,如果一致,Boot程序认为收到调试维护使能命令,使能RS232串口接收,等待接收调试维护命令,不引导VxWorks操作系统运行;如果不一致,Boot程序认为收到“异常”字符,正常引导VxWorks操作系统运行;步骤b. Vxfforks操作系统中RS232串口干扰消除在已有的VxWorks操作系统中,增加一个RS232串口使能模块,该模块判断RS232串口输入的字符是否与模块中预置的一致;如果一致,Vxfforks操作系统认为收到控制台使能命令,使能RS232串口接收,等待控制台命令的输入;如果不一致,VxWorks操作系统认为收到“异常”字符,不接收控制台命令的输入。所述步骤a中,RS232串口使能模块位于Boot程序自动引导VxWorks操作系统的命令之前,只执行一次。所述步骤b中,判断RS232串口输入字符与预置字符是否一致的方法是输入字符串匹配,条件不满足,一次匹配结束,同时能够多次输入控制台使能命令。所述的消除航空电子设备RS232串口干扰的方法,其步骤a的Boot程序引导Vxfforks操作系统的操作过程能细分如下步骤301 :设备上电,Boot程序开始运行;步骤302:Boot程序运行到RS232串口使能模块,执行步骤401 ;步骤401 :判断规定时间内有无字符输入,如果有,执行步骤402 ;如果无,执行步骤 304 ;步骤402 :将收到的第一个字符与预置的第一个字符比较,如果相同,执行步骤403 ;如果不同,认为收到“异常”字符,执行步骤304 ;步骤403 :判断规定时间有无第二个字符输入,如果有,执行步骤404 ;如果无,执行步骤304 ;步骤404:将收到的第二个字符与预置的第二个字符比较,如果相同,执行步骤405 ;如果不同,认为收到“异常”字符,执行步骤304 ;步骤405 :判断规定时间有无第三个字符输入,如果有,执行步骤406 ;如果无,执行步骤304 ;步骤406 :将收到的第三个字符与预置的第三个字符比较,如果相同,执行步骤303 ;如果不同,认为收到“异常”字符,执行步骤304 ;步骤303 :规定时间内收到的字符与预置的字符都一致,RS232串口使能,Boot程序进入调试维护模式;步骤304 Boot程序引导VxWorks操作系统。所述的消除航空电子设备RS232串口干扰的方法,其步骤b的VxWorks操作系统中RS232串口干扰消除的过程能细分如下步骤305 = VxWorks操作系统启动;步骤306 =VXworks操作系统中RS232串口使能模块运行,执行步骤501 ;步骤501 :保存已输入的字符;步骤502:已保存的字符长度与预置字符串长度比较,如果大于,认为收到“异常”字符,执行步骤503 ;如果不大于,执行步骤504 ;步骤503 :放弃此次字符串匹配,丢弃已接收的字符,退出RS232串口使能模块;步骤504:收到的字符与预置字符串的结尾字符比较,如果不相等,执行步骤505 ;如果相等,执行步骤506 ;步骤505 :退出RS232串口使能模块;步骤506 :已保存的输入字符串与预置字符串比较,如果不相等,执行步骤507 ;如果相等,执行步骤307 ;步骤507 :此次字符串匹配失败,丢弃已接收的字符。退出RS232串口使能模块;
步骤307 =Vxfforks操作系统控制台使能。执行步骤503、步骤505、步骤507之后,如果有字符输入,会再次进入步骤306。本发明的有益效果本发明可应用于采用不同Boot和操作系统的产品,当由于RS232串口受到干扰,影响Boot和操作系统正常运行时,在Boot和操作系统合适位置添加RS232串口使能模块,可以有效消除该问题。本发明尤其适用于硬件已经大批量生产的情况,通过软件升级,消除RS232串口干扰,避免硬件改动,提高产品性能和可维护性。


图1是本发明中RS232串口使能模块在Boot程序中的位置示意图;图2是本发明中RS232串口使能模块在VxWorks操作系统中的位置示意图;图3是本发明应用于一种航空电子设备的系统启动运行流程图;图4是Boot程序中RS232串口使能模块工作流程图;图5是VxWorks操作系统中RS232串口使能模块工作流程图。
具体实施例方式下面结合附图及实施例对本发明做进一步描述,但不对本发明做限定。请参阅图1,在原有的Boot程序中,加入RS232串口使能模块。Boot程序运行顺序由上往下,在执行Boot程序引导模块之前,执行RS232串口使能模块处理串口的“异常”字符。请参阅图2,在原有的VxWorks操作系统串口处理模块中,加入RS232串口使能模块。Vxfforks操作系统串口处理模块在有字符输入的时候运行,RS232串口使能模块随之处理串口的“异常”字符。请结合图3、图4和图5,使用本发明的航空电子设备启动运行有如下步骤步骤301 :设备上电,Boot程序开始运行;步骤302:Boot程序运行到RS232串口使能模块,执行步骤401 ;步骤401 :判断规定时间内有无字符输入,如果有,执行步骤402 ;如果无,执行步骤 304 ;步骤402 :将收到的第一个字符与预置的第一个字符比较,如果相同,执行步骤403 ;如果不同,认为收到“异常”字符,执行步骤304 ;步骤403 :判断规定时间有无第二个字符输入,如果有,执行步骤404 ;如果无,执行步骤304 ;步骤404:将收到的第二个字符与预置的第二个字符比较,如果相同,执行步骤405 ;如果不同,认为收到“异常”字符,执行步骤304 ;步骤405 :判断规定时间有无第三个字符输入,如果有,执行步骤406 ;如果无,执行步骤304 ;步骤406 :将收到的第三个字符与预置的第三个字符比较,如果相同,执行步骤303 ;如果不同,认为收到“异常”字符,执行步骤304 ;步骤303 :规定时间内收到的字符与预置的字符都一致,RS232串口使能,Boot程序进入调试维护模式;
步骤304 =Boot程序弓I导VxWorks操作系统;步骤305 = VxWorks操作系统启动;步骤306 =VXworks操作系统中RS232串口使能模块运行,执行步骤501 ;步骤501 :保存已输入的字符;步骤502:已保存的字符长度与预置字符串长度比较,如果大于,认为收到“异常”字符,执行步骤503 ;如果不大于,执行步骤504 ;步骤503 :放弃此次字符串匹配,丢弃已接收的字符,退出RS232串口使能模块;步骤504:收到的字符与预置字符串的结尾字符比较,如果不相等,执行步骤505 ;如果相等,执行步骤506 ;步骤505 :退出RS232串口使能模块;步骤506 :已保存的输入字符串与预置字符串比较,如果不相等,执行步骤507 ;如果相等,执行步骤307 ;步骤507 :此次字符串匹配失败,丢弃已接收的字符。退出RS232串口使能模块;步骤307 :VxWorks操作系统控制台使能。需要指出的是,Vxfforks操作系统中RS232串口使能模块是在有字符输入的时候执行,原因在于该模块包含在VxWorks操作系统串口处理模块之中,而VxWorks操作系统串口处理模块在字符输入才执行。因此,执行步骤503、步骤505、步骤507之后,如果有字符输入,会再次进入步骤306。当执行步骤307后,Vxfforks操作系统RS232串口使能模式将不再执行。在Boot引导程序中,RS232串口使能模块比较输入字符,对每次字符输入都有时间规定,消除突发的RS232串口干扰;比较三次特定的预置字符,消除持续的RS232串口干扰。在VxWorks操作系统中,RS232串口使能模块比较输入字符串,首先通过比较字符串长度,消除持续的RS232串口干扰;如果输入字符串长度符合要求,则比较字符串,消除突发的RS232串口干扰。由于设备正常工作之后,Vxfforks操作系统始终运行,所以RS232串口使能模块在RS232串口有输入的时候就进行处理,及时消除RS232串口干扰。本发明提出的解决方法可以在嵌入式系统中广泛应用,由于采用的是软件方法,可以对已经定型的硬件进行软件升级,提高嵌入式系统的稳定性、可靠性。以上所述仅为本发明的较佳实时例,并不用以限制本发明。应当指出,对于本领域的普通技术人员来说,凡是在本发明原理上所作的任何修改、替换或改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种消除航空电子设备RS232串口干扰的方法,其特征在于,包括如下步骤 步骤a. Boot程序引导VxWorks操作系统运行 在已有的操作系统引导程序Boot中,增加一个RS232串口使能模块,该模块判断RS232串口输入的字符是否与模块中预置的一致,如果一致,Boot程序认为收到调试维护使能命令,使能RS232串口接收,等待接收调试维护命令,不引导VxWorks操作系统运行;如果不一致,Boot程序认为收到“异常”字符,正常引导VxWorks操作系统运行; 步骤b. Vxfforks操作系统中RS232串口干扰消除 在已有的VxWorks操作系统中,增加一个RS232串口使能模块,该模块判断RS232串口输入的字符是否与模块中预置的一致;如果一致,VxWorks操作系统认为收到控制台使能命令,使能RS232串口接收,等待控制台命令的输入;如果不一致,VxWorks操作系统认为收到“异常”字符,不接收控制台命令的输入。
2.根据权利要求1所述的消除航空电子设备RS232串口干扰的方法,其特征在于,所述步骤a中,RS232串口使能模块位于Boot程序自动引导VxWorks操作系统的命令之前,只执行一次。
3.根据权利要求1所述的消除航空电子设备RS232串口干扰的方法,其特征在于,所述步骤b中,判断RS232串口输入字符与预置字符是否一致的方法是输入字符串匹配,条件不满足,一次匹配结束,同时能够多次输入控制台使能命令。
4.根据权利要求2所述的消除航空电子设备RS232串口干扰的方法,其特征在于, 步骤a的Boot程序引导VxWorks操作系统的操作过程能细分如下 步骤301 :设备上电,Boot程序开始运行; 步骤302: Boot程序运行到RS232串口使能模块,执行步骤401 ; 步骤401 :判断规定时间内有无字符输入,如果有,执行步骤402 ;如果无,执行步骤304 ; 步骤402 :将收到的第一个字符与预置的第一个字符比较,如果相同,执行步骤403 ;如果不同,认为收到“异常”字符,执行步骤304 ; 步骤403 :判断规定时间有无第二个字符输入,如果有,执行步骤404 ;如果无,执行步骤 304 ; 步骤404 :将收到的第二个字符与预置的第二个字符比较,如果相同,执行步骤405 ;如果不同,认为收到“异常”字符,执行步骤304 ; 步骤405 :判断规定时间有无第三个字符输入,如果有,执行步骤406 ;如果无,执行步骤 304 ; 步骤406 :将收到的第三个字符与预置的第三个字符比较,如果相同,执行步骤303 ;如果不同,认为收到“异常”字符,执行步骤304 ; 步骤303 :规定时间内收到的字符与预置的字符都一致,RS232串口使能,Boot程序进入调试维护模式; 步骤304 Boot程序引导VxWorks操作系统。
5.根据权利要求3所述的消除航空电子设备RS232串口干扰的方法,其特征在于,步骤b的VxWorks操作系统中RS232串口干扰消除的过程能细分如下 步骤305 = VxWorks操作系统启动;步骤306 =VXworks操作系统中RS232串口使能模块运行,执行步骤501 ; 步骤501 :保存已输入的字符; 步骤502 :已保存的字符长度与预置字符串长度比较,如果大于,认为收到“异常”字符,执行步骤503 ;如果不大于,执行步骤504 ; 步骤503 :放弃此次字符串匹配,丢弃已接收的字符,退出RS232串口使能模块; 步骤504:收到的字符与预置字符串的结尾字符比较,如果不相等,执行步骤505 ;如果相等,执行步骤506 ; 步骤505 :退出RS232串口使能模块; 步骤506 :已保存的输入字符串与预置字符串比较,如果不相等,执行步骤507 ;如果相等,执行步骤307 ; 步骤507 :此次字符串匹配失败,丢弃已接收的字符。退出RS232串口使能模块; 步骤307 :VxWorks操作系统控制台使能。
6.根据权利要求5所述的消除航空电子设备RS232串口干扰的方法,其特征在于,执行步骤503、步骤505、步骤507之后,如果有字符输入,会再次进入步骤306。
全文摘要
本发明属于嵌入式系统领域,具体涉及到一种消除航空电子设备RS232串口干扰的方法。本发明在已有的操作系统引导程序Boot中,增加一个RS232串口使能模块,判断输入的字符是否与模块中预置的一致,如果一致,使能RS232串口接收;如果不一致,引导VxWorks操作系统运行。在已有的VxWorks操作系统中,增加一个RS232串口使能模块,判断输入的字符是否与模块中预置的一致;如果一致,使能RS232串口接收;如果不一致,不接收控制台命令的输入。本发明可以消除航空电子设备RS232串口干扰,保证硬件状态在正常工作和调试维护时一致,降低了航空电子设备潜在的风险,提高了航空电子设备的可维护性。
文档编号G06F9/445GK103064751SQ20121058008
公开日2013年4月24日 申请日期2012年12月27日 优先权日2012年12月27日
发明者张锋, 李国超, 王星岛 申请人:中航(苏州)雷达与电子技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1