CN108732967A - 防电磁干扰方法、防断电控制盒、空调器和介质 - Google Patents
防电磁干扰方法、防断电控制盒、空调器和介质 Download PDFInfo
- Publication number
- CN108732967A CN108732967A CN201810478955.6A CN201810478955A CN108732967A CN 108732967 A CN108732967 A CN 108732967A CN 201810478955 A CN201810478955 A CN 201810478955A CN 108732967 A CN108732967 A CN 108732967A
- Authority
- CN
- China
- Prior art keywords
- variable
- flag bit
- main control
- control chip
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
Abstract
本发明公开了一种主控芯片的防电磁干扰方法,包括:在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件;在所述多个标志位状态,所述标志位状态和变量,或所述多个变量,其中任一满足其对应的预设条件时,则控制所述程序进入对应的分支流程,以防止所述主控芯片受到电磁干扰进入其他分支流程。本发明还公开了一种防断电控制盒、空调器和计算机可读存储介质。本发明可以解决现有空调器的防断电控制盒中主控芯片抗干扰能力低,受电磁场干扰而导致程序执行流程错乱,从而无法保证功能有序进行的问题。
Description
技术领域
本发明涉及防电磁干扰技术领域,尤其涉及一种主控芯片的防电磁干扰方法、防断电控制盒、空调器和计算机可读存储介质。
背景技术
目前带有家庭防断电功能的空调器产品,通常是以一个防断电控制盒来检测家庭总电流,以空气开关的额定值或者低于额定值的数值作为判断阈值,当家庭总电流值高于判断阈值时,控制空调器停机;低于判断阈值时,则控制空调器升频。
由于防断电控制盒要安装在家庭电力输入处的电闸盒中,此处有电表、空气开关等设备,走线绕线较复杂,而且会通过强电,因此,存在很强的电磁干扰。防断电控制盒的最核心的主控芯片,若其抗干扰措施做的不到位,很可能受电磁场干扰而导致程序执行流程错乱,从而无法保证功能有序进行。
发明内容
本发明的主要目的在于提供一种主控芯片的防电磁干扰方法、防断电控制盒、空调器和计算机可读存储介质,旨在解决现有空调器的防断电控制盒中主控芯片抗干扰能力低,受电磁场干扰而导致程序执行流程错乱,从而无法保证功能有序进行的问题。
为实现上述目的,本发明提供一种主控芯片的防电磁干扰方法,所述主控芯片的防电磁干扰方法包括以下步骤:
在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件;
在所述多个标志位状态,所述标志位状态和变量,或所述多个变量,其中任一满足其对应的预设条件时,则控制所述程序进入对应的分支流程,以防止所述主控芯片受到电磁干扰进入其他分支流程。
优选地,所述在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件的步骤包括:
在所述主控芯片获取到控制程序进入分支流程的多个标志位状态时,判断所述多个标志位状态是否均相同;
在所述多个标志位状态均相同时,则判定所述多个标志位状态满足对应的预设条件;
在所述多个标志位状态任一不同时,则判定所述多个标志位状态不满足对应的预设条件。
优选地,所述在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件的步骤包括:
在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,判断所述标志位状态和变量是否均处于清零状态,或是否所述标志位处于置位状态,且所述变量处于固定值状态;
若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,则判定所述标志位状态和变量满足对应的预设条件;
若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,则判定所述标志位状态和变量不满足对应的预设条件。
优选地,所述在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件的步骤包括:
在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,获取控制所述程序进入双分支流程中各分支流程的多个标志位状态,以及获取控制所述程序进入多分支流程中各分支流程的多个变量;
统计所述标志位状态处于置位状态的数值;
根据所述多分支流程的数量以及所述数值,计算得到验证变量;
判断所述标志位状态和变量是否均处于清零状态,或是否所述标志位处于置位状态,且所述变量处于固定值状态,以及判断当前变量是否与所述验证变量一致;
若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,且所述当前变量与所述验证变量一致,则判定所述标志位状态和变量满足对应的预设条件;
若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,或所述当前变量与所述验证变量不一致,则判定所述标志位状态和变量不满足对应的预设条件。
优选地,所述在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,获取所述程序的双分支流程的数量和控制所述程序进入所述双分支流程中各分支流程的多个标志位状态,以及获取所述程序的多分支流程的数量和控制所述程序进入所述多分支流程中各分支流程的多个变量的步骤之后还包括:
判断所述多分支流程的数量是否满足预设范围;
若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,所述当前变量与所述验证变量一致,且所述多分支流程的数量满足所述预设范围,则判定所述标志位状态和变量满足对应的预设条件;
若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,或所述当前变量与所述验证变量不一致,或所述多分支流程的数量不满足预设范围,则判定所述标志位状态和变量不满足对应的预设条件。
优选地,所述在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件的步骤包括:
在所述主控芯片获取到控制程序进入分支流程的多个变量时,判断所述多个变量是否均处于固定值状态,或是否均处于清零状态;
若所述多个变量均处于固定值状态,或均处于清零状态,则判定所述多个变量满足对应的预设条件;
若所述多个变量未均处于固定值状态,且未均处于清零状态,则判定所述多个变量不满足对应的预设条件。
优选地,所述在所述多个标志位状态,所述标志位状态和变量,或所述多个变量,其中任一满足其对应的预设条件时,则控制所述程序进入对应的分支流程的步骤之后还包括:
获取所述主控芯片的喂狗周期;
若在所述喂狗周期时间内,所述程序仍未进入对应的分支流程,则控制所述主控芯片复位。
优选地,所述获取所述主控芯片的喂狗周期的步骤之后还包括:
在所述主控芯片获取到所述程序运行中涉及的多个预定参数数据时,对所述多个预定参数数据进行累计取反加1,得到验证数据;
在每个喂狗周期内,判断当前数据变量是否与所述验证数据一致;
若不一致,则控制所述主控芯片复位。
为实现上述目的,本发明还提供所述防断电控制盒包括处理器、存储器和存储在所述存储器上并可在所述处理器上运行的主控芯片的防电磁干扰程序,所述主控芯片的防电磁干扰程序被所述处理器执行时实现如上所述的主控芯片的防电磁干扰方法的步骤。
为实现上述目的,本发明还提供一种空调器,所述空调器包括如上所述的防断电控制盒。
为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有主控芯片的防电磁干扰程序,所述主控芯片的防电磁干扰程序被处理器执行时实现如上所述的主控芯片的防电磁干扰方法的各个步骤。
本发明提供的主控芯片的防电磁干扰方法、防断电控制盒、空调器和计算机可读存储介质,通过在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件,然后在所述多个标志位状态,所述标志位状态和变量,或所述多个变量,其中任一满足其对应的预设条件时,则控制所述程序进入对应的分支流程。如此,可以防止所述主控芯片受到电磁干扰进入其他分支流程,从而提高所述主控芯片的抗干扰能力,进而保证功能有序进行。
附图说明
图1为本发明实施例涉及的防断电控制盒的硬件结构示意图;
图2为本发明主控芯片的防电磁干扰方法第一实施例的流程示意图;
图3为本发明主控芯片的防电磁干扰方法第二实施例的流程示意图;
图4为本发明主控芯片的防电磁干扰方法第三实施例的流程示意图;
图5为本发明主控芯片的防电磁干扰方法第四实施例的流程示意图;
图6为本发明主控芯片的防电磁干扰方法第五实施例的流程示意图;
图7为本发明主控芯片的防电磁干扰方法第六实施例的流程示意图;
图8为本发明主控芯片的防电磁干扰方法第七实施例的流程示意图;
图9为本发明主控芯片的防电磁干扰方法第八实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明实施例方案涉及的是空调器,所述空调器包括防断电控制盒,所述防断电控制盒可以包括:处理器1001,例如CPU,存储器1002,通信总线1003。其中,通信总线1003用于实现这些组件之间的连接通信。
存储器1002可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。如图1所示,作为一种计算机存储介质的存储器1003中可以包括主控芯片的防电磁干扰程序;而处理器1001可以用于调用存储器1002中存储的主控芯片的防电磁干扰程序,并执行以下操作:
在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件;
在所述多个标志位状态,所述标志位状态和变量,或所述多个变量,其中任一满足其对应的预设条件时,则控制所述程序进入对应的分支流程,以防止所述主控芯片受到电磁干扰进入其他分支流程。
进一步的,处理器1001可以用于调用存储器1002中存储的主控芯片的防电磁干扰程序,并执行以下操作:
在所述主控芯片获取到控制程序进入分支流程的多个标志位状态时,判断所述多个标志位状态是否均相同;
在所述多个标志位状态均相同时,则判定所述多个标志位状态满足对应的预设条件;
在所述多个标志位状态任一不同时,则判定所述多个标志位状态不满足对应的预设条件。
进一步的,处理器1001可以用于调用存储器1002中存储的主控芯片的防电磁干扰程序,并执行以下操作:
在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,判断所述标志位状态和变量是否均处于清零状态,或是否所述标志位处于置位状态,且所述变量处于固定值状态;
若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,则判定所述标志位状态和变量满足对应的预设条件;
若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,则判定所述标志位状态和变量不满足对应的预设条件。
进一步的,处理器1001可以用于调用存储器1002中存储的主控芯片的防电磁干扰程序,并执行以下操作:
在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,获取控制所述程序进入双分支流程中各分支流程的多个标志位状态,以及获取控制所述程序进入多分支流程中各分支流程的多个变量;
统计所述标志位状态处于置位状态的数值;
根据所述多分支流程的数量以及所述数值,计算得到验证变量;
判断所述标志位状态和变量是否均处于清零状态,或是否所述标志位处于置位状态,且所述变量处于固定值状态,以及判断当前变量是否与所述验证变量一致;
若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,且所述当前变量与所述验证变量一致,则判定所述标志位状态和变量满足对应的预设条件;
若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,或所述当前变量与所述验证变量不一致,则判定所述标志位状态和变量不满足对应的预设条件。
进一步的,处理器1001可以用于调用存储器1002中存储的主控芯片的防电磁干扰程序,并执行以下操作:
判断所述多分支流程的数量是否满足预设范围;
若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,所述当前变量与所述验证变量一致,且所述多分支流程的数量满足所述预设范围,则判定所述标志位状态和变量满足对应的预设条件;
若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,或所述当前变量与所述验证变量不一致,或所述多分支流程的数量不满足预设范围,则判定所述标志位状态和变量不满足对应的预设条件。
进一步的,处理器1001可以用于调用存储器1002中存储的主控芯片的防电磁干扰程序,并执行以下操作:
在所述主控芯片获取到控制程序进入分支流程的多个变量时,判断所述多个变量是否均处于固定值状态,或是否均处于清零状态;
若所述多个变量均处于固定值状态,或均处于清零状态,则判定所述多个变量满足对应的预设条件;
若所述多个变量未均处于固定值状态,且未均处于清零状态,则判定所述多个变量不满足对应的预设条件。
进一步的,处理器1001可以用于调用存储器1002中存储的主控芯片的防电磁干扰程序,并执行以下操作:
获取所述主控芯片的喂狗周期;
若在所述喂狗周期时间内,所述程序仍未进入对应的分支流程,则控制所述主控芯片复位。
进一步的,处理器1001可以用于调用存储器1002中存储的主控芯片的防电磁干扰程序,并执行以下操作:
在所述主控芯片获取到所述程序运行中涉及的多个预定参数数据时,对所述多个预定参数数据进行累计取反加1,得到验证数据;
在每个喂狗周期内,判断当前数据变量是否与所述验证数据一致;
若不一致,则控制所述主控芯片复位。
基于上述硬件构架,提出本发明主控芯片的防电磁干扰方法的实施例。
参照图2,图2为本发明主控芯片的防电磁干扰方法的第一实施例,所述主控芯片的防电磁干扰方法包括以下步骤:
步骤S10、在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件;
本实施例中,所述主控芯片设于空调器的防断电控制盒内,该主控芯片通常为MCU。而MCU的抗电磁干扰性相对较差,且在特殊环境下应用的产品,不同于一般家电设备的应用环境,需要有更强的抗电磁干扰性。为解决该技术问题,现有方案通常从硬件设计方面着手,但由于芯片本质、芯片内部工作电压、芯片运行速度、成本等等原因,只靠硬件抗干扰并不能完全解决问题。而本发明根据干扰本质与现象,从软件层面进行改进,使得主控芯片具有较强的抗干扰作用。
干扰是因为电磁原理影响了芯片内部的逻辑电平,逻辑电平变化导致标志位的状态发生变化。而程序中有很多分支流程,流程之间的走向最常见由标志位的高低电平决定,也会由数据值决定。因而,若某一控制分支走向的标志位或者数据受干扰而发生变化,程序将走向非预期的分支,从而造成该功能紊乱。
本实施例中,可以通过多个标志位状态,标志位状态和变量,多个变量等作为决定是否进入分支流程的条件参数,这些条件参数单独执行,也可以组合方式执行。可以理解的是,当采取不同的条件参数使,对应的判断预设条件也不同,具体将在下文进行阐述,此处不再赘述。
步骤S20、在所述多个标志位状态,所述标志位状态和变量,或所述多个变量,其中任一满足其对应的预设条件时,则控制所述程序进入对应的分支流程,以防止所述主控芯片受到电磁干扰进入其他分支流程。
本实施例中,当以多个标志位状态为条件参数时,判断所述条件参数是否满足对应的标志位预设条件,在所述多个标志位状态满足对应的所述标志位预设条件时,则控制所述程序进入对应的分支流程,从而防止所述主控芯片受到电磁干扰进入其他分支流程。
当以标志位状态和变量为条件参数时,判断所述条件参数是否满足对应的标志位和变量预设条件,在所述标志位和变量均满足对应的预设条件时,则控制所述程序进入对应的分支流程,从而防止所述主控芯片受到电磁干扰进入其他分支流程。可以理解的是,本实施例中的标志位可以为单个,也可以为多个;同样地,所述变量可以为单个,也可以为多个。
当以多个变量为条件参数时,判断所述条件参数是否满足对应的变量预设条件,在所述多个变量满足对应的所述变量预设条件时,则控制所述程序进入对应的分支流程,从而防止所述主控芯片受到电磁干扰进入其他分支流程。
本发明提供的主控芯片的防电磁干扰方法,通过在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件,然后在所述多个标志位状态,所述标志位状态和变量,或所述多个变量,其中任一满足其对应的预设条件时,则控制所述程序进入对应的分支流程。如此,可以防止所述主控芯片受到电磁干扰进入其他分支流程,从而提高所述主控芯片的抗干扰能力,进而保证功能有序进行。
参照图3,在第二实施例中,基于图2所示的第一实施例,所述步骤S10包括:
步骤S101、在所述主控芯片获取到控制程序进入分支流程的多个标志位状态时,判断所述多个标志位状态是否均相同;
步骤S102、在所述多个标志位状态均相同时,则判定所述多个标志位状态满足对应的预设条件;
本实施例中,当以多个标志位状态为条件参数时,判断所述条件参数是否满足对应的标志位预设条件,假设有3个标志位为flag1、flag2、flag3,在flag1、flag2、flag3同时满足预设条件时才控制程序进入分支流程。
具体地,当flag1、flag2、flag3均为置位状态或均为清零状态时,则判定这三个标志位状态相同,并满足对应的预设条件。
步骤S103、在所述多个标志位状态任一不同时,则判定所述多个标志位状态不满足对应的预设条件。
本实施例中,当flag1、flag2、flag3的标志位状态任一个与其他不同时,则判定这三个标志位状态不相同,并不满足对应的预设条件。
可以理解的是,多个标志位的在RAM中位置不是定义的连续区域,而是分开定义,并分布在不同的位置。这样,可以最大程度的防止当电磁干扰时,某一标志位被干扰而发生变化,从而导致程序进入不该进入的分支流程。
参照图4,在第三实施例中,基于图2所示的第一实施例,所述步骤S1包括:
步骤S104、在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,判断所述标志位状态和变量是否均处于清零状态,或是否所述标志位处于置位状态,且所述变量处于固定值状态;
本实施例中,当以标志位状态和变量为条件参数时,判断所述条件参数是否满足对应的标志位预设条件。具体地,以标志位flag1和变量var1为例进行说明。
当标志位flag1置位时,变量var1赋值一固定值,例如oxAA,ox55等;当标志位flag1清零时,变量var1也清零。相当于将8位的变量当成一个一位的标志位用,同样,分支流程的进入判断时,需要标志位与变量同时满足才能进入分支流程。此做法好处在于当被电磁干扰时,只有变量的八个位全被干扰且干扰成预定的值才会进入此分支流程,加上原有的一个标志位,这样的概率是1/512。当然,也可以采用16位的变量,或者增加几个变量,或者不用标志位,全用变量,如此,可以使错误概率成指数倍的降低。
步骤S105、若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,则判定所述标志位状态和变量满足对应的预设条件;
步骤S106、若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,则判定所述标志位状态和变量不满足对应的预设条件。
本实施例中,当判断标志位状态flag1处于清零状态,且所述变量var1处于清零状态,或所述标志位flag1处于置位状态,且所述变量var1处于固定值状态如oxAA,ox55等,则判定所述标志位flag1状态和变量var1满足对应的预设条件,此时,即可控制程序进入对应的分支流程。
当所述标志位flag1处于置位状态,且所述变量var1处于清零状态,或所述标志位flag1处于清零状态,且所述变量var1处于固定值状态如oxAA,ox55等,则判定所述标志位状态和变量不满足对应的预设条件。
参照图5,在第四实施例中,基于图2所示的第一实施例,所述步骤S1包括:
步骤S107、在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,获取控制所述程序进入双分支流程中各分支流程的多个标志位状态,以及获取控制所述程序进入多分支流程中各分支流程的多个变量;
步骤S108、统计所述标志位状态处于置位状态的数值;
步骤S109、根据所述多分支流程的数量以及所述数值,计算得到验证变量;
本实施例中,当以标志位状态和变量为条件参数时,进一步获取控制控制程序进入分支流程的标志位状态和变量时,获取控制所述程序进入双分支流程中各分支流程的多个标志位状态,以及获取控制所述程序进入多分支流程中各分支流程的多个变量。
假设程序有5个双分支流程,分别由标志位flag1、flag2、flag3、flag4、flag5控制,此外,有2个多分支流程由变量var1和变量var2控制,变量var1有4个分支方向,变量var2有6个分支方向。则对应获取的多分支流程的数量为:变量var1为4,变量var2为6。
在获取到控制所述程序进入双分支流程中各分支流程的多个标志位状态时,统计其中标志位状态为置位状态的数量num,根据预设公式计算得到验证变量checkVar。其中,所述预设公式为checkVar=~(var1+var2+num)+1。可以理解的是,当其中任一参数发生变化时,则会更新当前变量。
步骤S110、判断所述标志位状态和变量是否均处于清零状态,或是否所述标志位处于置位状态,且所述变量处于固定值状态,以及判断当前变量是否与所述验证变量一致;
步骤S111、若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,且所述当前变量与所述验证变量一致,则判定所述标志位状态和变量满足对应的预设条件;
步骤S112、若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,或所述当前变量与所述验证变量不一致,则判定所述标志位状态和变量不满足对应的预设条件。
本实施例中,判断所述标志位状态和变量是否均处于清零状态,或是否所述标志位处于置位状态,且所述变量处于固定值状态,以及判断当前变量是否与所述验证变量一致的具体实施例方式同上第三实施例,此处不再赘述。
本实施例相对于第三实施例,还增加了对当前变量与所述验证变量的判断过程,也即在分支流程判断时,除了验证对应的标志位或变量,还要对当前变量是否与根据公式~(var1+var2+num)+1计算得到的验证变量相等,如果相等,则判定所述标志位状态和变量不满足对应的预设条件;若不等,则说明程序被干扰了,则立刻将程序复位重启。
参照图6,在第五实施例中,基于图5所示的第四实施例,所述步骤S107之后还包括:
步骤S113、判断所述多分支流程的数量是否满足预设范围;
步骤S114、若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,所述当前变量与所述验证变量一致,且所述多分支流程的数量满足所述预设范围,则判定所述标志位状态和变量满足对应的预设条件;
步骤S115、若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,或所述当前变量与所述验证变量不一致,或所述多分支流程的数量不满足预设范围,则判定所述标志位状态和变量不满足对应的预设条件。
本实施例相对于第四实施例,增加了更强的验证措施,即对变量var1和var2的范围做判断,判断所述多分支流程的数量是否满足预设范围,例如,当有2个多分支流程由变量var1和变量var2控制,变量var1有4个分支方向,变量var2有6个分支方向时,则可以判断变量var1是否处于第一预设范围0~3内,变量var2是否处于第二预设范围为0~5。可以理解的是,本实施例相对于第四实施例,需要在判定所述标志位状态和变量满足对应的预设条件时,进一步判断所述多分支流程的数量是否在预设范围。若所述多分支流程的数量不在预设范围,则表明所述程序被电磁干扰了,此时,可以使程序复位重启;若所述多分支流程的数量满足预设范围,则控制程序进入对应的分支流程。
参照图7,在第六实施例中,基于图2所示的第一实施例,所述步骤S1包括:
步骤S116、在所述主控芯片获取到控制程序进入分支流程的多个变量时,判断所述多个变量是否均处于固定值状态,或是否均处于清零状态;
步骤S117、若所述多个变量均处于固定值状态,或均处于清零状态,则判定所述多个变量满足对应的预设条件;
步骤S118、若所述多个变量未均处于固定值状态,且未均处于清零状态,则判定所述多个变量不满足对应的预设条件。
本实施例中,当以多个变量为条件参数时,判断所述条件参数是否满足对应的预设条件。假设有3个变量:变量var1、变量var2和变量var3,在变量var1、变量var2和变量var3同时满足预设条件时才控制程序进入分支流程。
具体地,当变量var1、变量var2和变量var3均处于固定值状态或均为清零状态时,则判定这三个变量满足对应的预设条件。
当变量var1、变量var2和变量var3中任一个与其他状态不同时,则判定这三个变量不满足对应的预设条件。
参照图8,在第七实施例中,基于上述任一实施例,所述步骤S20之后还包括:
步骤S30、获取所述主控芯片的喂狗周期;
步骤S40、若在所述喂狗周期时间内,所述程序仍未进入对应的分支流程,则控制所述主控芯片复位。
本实施例中,在程序运行过程中,设置主控芯片的喂狗周期,若在喂狗周期时间到,所述程序仍未进入对应的分支流程,则不对主控芯片看门狗喂狗,从而产生复位,使系统重新启动,从而正常工作。如此,可以有效阻止电磁干扰进入错误分支流程,同时,也能保证原有的正常分支流程可以正常进入。
参照图9,在第八实施例中,基于图8所示的第七实施例,所述步骤S30之后还包括:
步骤S50、在所述主控芯片获取到所述程序运行中涉及的多个预定参数数据时,对所述多个预定参数数据进行累计取反加1,得到验证数据;
本实施例中,在所述主控芯片获取到所述程序运行中涉及的多个预定参数数据时,根据预设公式对所述多个预定参数数据进行累计取反加1,得到验证数据MoniVar。其中,所述预设公式为MoniVar=~(data1+data2+data3+…)+1。可以理解的是,当其中任一参数发生变化时,则会更新当前数据变量。
步骤S60、在每个喂狗周期内,判断当前数据变量是否与所述验证数据一致;
步骤S70、若不一致,则控制所述主控芯片复位。
本实施例中,在每个喂狗周期内,判断当前数据变量是否与所述验证数据一致,若一致,则正常喂狗;若不一致,则不喂狗,从而触发看门狗复位,并重启系统。
可以理解的是,所述预设公式也可以采用其他方式,不一定局限于上述所列公式,任何常用校验方式或者函数关系均可以。
如此,不仅可以有效的解决电磁干扰导致程序执行流程错乱的问题,同时还可以对重要数据进行保护,从而保证程序稳定运行。
本发明还提供一种防断电控制盒,所述防断电控制盒包括处理器、存储器和存储在所述存储器上并可在所述处理器上运行的主控芯片的防电磁干扰程序,所述主控芯片的防电磁干扰程序被所述处理器执行时实现如上所述的主控芯片的防电磁干扰方法的步骤。
本发明还提供一种空调器,所述空调器包括如上所述的防断电控制盒。本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有主控芯片的防电磁干扰程序,所述主控芯片的防电磁干扰程序被处理器执行时实现如上所述的主控芯片的防电磁干扰方法的各个步骤。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (11)
1.一种主控芯片的防电磁干扰方法,其特征在于,所述主控芯片设于空调器的防断电控制盒内,所述主控芯片的防电磁干扰方法包括以下步骤:
在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件;
在所述多个标志位状态,所述标志位状态和变量,或所述多个变量,其中任一满足其对应的预设条件时,则控制所述程序进入对应的分支流程,以防止所述主控芯片受到电磁干扰进入其他分支流程。
2.如权利要求1所述的主控芯片的防电磁干扰方法,其特征在于,所述在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件的步骤包括:
在所述主控芯片获取到控制程序进入分支流程的多个标志位状态时,判断所述多个标志位状态是否均相同;
在所述多个标志位状态均相同时,则判定所述多个标志位状态满足对应的预设条件;
在所述多个标志位状态任一不同时,则判定所述多个标志位状态不满足对应的预设条件。
3.如权利要求1所述的主控芯片的防电磁干扰方法,其特征在于,所述在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件的步骤包括:
在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,判断所述标志位状态和变量是否均处于清零状态,或是否所述标志位处于置位状态,且所述变量处于固定值状态;
若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,则判定所述标志位状态和变量满足对应的预设条件;
若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,则判定所述标志位状态和变量不满足对应的预设条件。
4.如权利要求1所述的主控芯片的防电磁干扰方法,其特征在于,所述在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件的步骤包括:
在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,获取控制所述程序进入双分支流程中各分支流程的多个标志位状态,以及获取控制所述程序进入多分支流程中各分支流程的多个变量;
统计所述标志位状态处于置位状态的数值;
根据所述多分支流程的数量以及所述数值,计算得到验证变量;
判断所述标志位状态和变量是否均处于清零状态,或是否所述标志位处于置位状态,且所述变量处于固定值状态,以及判断当前变量是否与所述验证变量一致;
若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,且所述当前变量与所述验证变量一致,则判定所述标志位状态和变量满足对应的预设条件;
若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,或所述当前变量与所述验证变量不一致,则判定所述标志位状态和变量不满足对应的预设条件。
5.如权利要求4所述的主控芯片的防电磁干扰方法,其特征在于,所述在所述主控芯片获取到控制程序进入分支流程的标志位状态和变量时,获取所述程序的双分支流程的数量和控制所述程序进入所述双分支流程中各分支流程的多个标志位状态,以及获取所述程序的多分支流程的数量和控制所述程序进入所述多分支流程中各分支流程的多个变量的步骤之后还包括:
判断所述多分支流程的数量是否满足预设范围;
若所述标志位状态和变量均处于清零状态,或所述标志位处于置位状态,且所述变量处于固定值状态,所述当前变量与所述验证变量一致,且所述多分支流程的数量满足所述预设范围,则判定所述标志位状态和变量满足对应的预设条件;
若所述标志位处于置位状态,且所述变量处于清零状态,或所述标志位处于清零状态,且所述变量处于固定值状态,或所述当前变量与所述验证变量不一致,或所述多分支流程的数量不满足预设范围,则判定所述标志位状态和变量不满足对应的预设条件。
6.如权利要求1所述的主控芯片的防电磁干扰方法,其特征在于,所述在所述主控芯片获取到控制程序进入分支流程的多个标志位状态,标志位状态和变量,或多个变量时,判断所述多个标志位状态,所述标志位状态和变量,或所述多个变量是否满足各自对应的预设条件的步骤包括:
在所述主控芯片获取到控制程序进入分支流程的多个变量时,判断所述多个变量是否均处于固定值状态,或是否均处于清零状态;
若所述多个变量均处于固定值状态,或均处于清零状态,则判定所述多个变量满足对应的预设条件;
若所述多个变量未均处于固定值状态,且未均处于清零状态,则判定所述多个变量不满足对应的预设条件。
7.如权利要求1至6中任一项所述的主控芯片的防电磁干扰方法,其特征在于,所述在所述多个标志位状态,所述标志位状态和变量,或所述多个变量,其中任一满足其对应的预设条件时,则控制所述程序进入对应的分支流程的步骤之后还包括:
获取所述主控芯片的喂狗周期;
若在所述喂狗周期时间内,所述程序仍未进入对应的分支流程,则控制所述主控芯片复位。
8.如权利要求7所述的主控芯片的防电磁干扰方法,其特征在于,所述获取所述主控芯片的喂狗周期的步骤之后还包括:
在所述主控芯片获取到所述程序运行中涉及的多个预定参数数据时,对所述多个预定参数数据进行累计取反加1,得到验证数据;
在每个喂狗周期内,判断当前数据变量是否与所述验证数据一致;
若不一致,则控制所述主控芯片复位。
9.一种防断电控制盒,其特征在于,所述防断电控制盒包括处理器、存储器和存储在所述存储器上并可在所述处理器上运行的主控芯片的防电磁干扰程序,所述主控芯片的防电磁干扰程序被所述处理器执行时实现如权利要求1-8任一项所述的主控芯片的防电磁干扰方法的步骤。
10.一种空调器,其特征在于,所述空调器包括如权利要求9所述的防断电控制盒。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有主控芯片的防电磁干扰程序,所述主控芯片的防电磁干扰程序被处理器执行时实现如权利要求1-8任一项所述的主控芯片的防电磁干扰方法的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810478955.6A CN108732967B (zh) | 2018-05-17 | 2018-05-17 | 防电磁干扰方法、防断电控制盒、空调器和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810478955.6A CN108732967B (zh) | 2018-05-17 | 2018-05-17 | 防电磁干扰方法、防断电控制盒、空调器和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108732967A true CN108732967A (zh) | 2018-11-02 |
CN108732967B CN108732967B (zh) | 2020-05-22 |
Family
ID=63938547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810478955.6A Active CN108732967B (zh) | 2018-05-17 | 2018-05-17 | 防电磁干扰方法、防断电控制盒、空调器和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108732967B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034369A (zh) * | 2006-03-10 | 2007-09-12 | 北京佳讯飞鸿电气有限责任公司 | 一种软件抗干扰方法及装置 |
CN200990087Y (zh) * | 2006-09-29 | 2007-12-12 | 上海海尔集成电路有限公司 | 一种8位精简指令集微控制器 |
CN201083993Y (zh) * | 2007-09-25 | 2008-07-09 | 上海海尔集成电路有限公司 | 一种微控制器 |
CN101853181A (zh) * | 2010-05-11 | 2010-10-06 | 中达电通股份有限公司 | 用于嵌入式系统的子程序相互调用的方法 |
US20150038189A1 (en) * | 2003-02-24 | 2015-02-05 | Piccata Fund Limited Liability Company | Program for Adjusting Channel Interference between Access Points in a Wireless Network |
CN106502811A (zh) * | 2016-10-12 | 2017-03-15 | 北京精密机电控制设备研究所 | 一种1553b总线通信故障处理方法 |
JP2017073103A (ja) * | 2015-11-24 | 2017-04-13 | 日晃オートメ株式会社 | 可逆パターン制御システム。 |
-
2018
- 2018-05-17 CN CN201810478955.6A patent/CN108732967B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150038189A1 (en) * | 2003-02-24 | 2015-02-05 | Piccata Fund Limited Liability Company | Program for Adjusting Channel Interference between Access Points in a Wireless Network |
CN101034369A (zh) * | 2006-03-10 | 2007-09-12 | 北京佳讯飞鸿电气有限责任公司 | 一种软件抗干扰方法及装置 |
CN200990087Y (zh) * | 2006-09-29 | 2007-12-12 | 上海海尔集成电路有限公司 | 一种8位精简指令集微控制器 |
CN201083993Y (zh) * | 2007-09-25 | 2008-07-09 | 上海海尔集成电路有限公司 | 一种微控制器 |
CN101853181A (zh) * | 2010-05-11 | 2010-10-06 | 中达电通股份有限公司 | 用于嵌入式系统的子程序相互调用的方法 |
JP2017073103A (ja) * | 2015-11-24 | 2017-04-13 | 日晃オートメ株式会社 | 可逆パターン制御システム。 |
CN106502811A (zh) * | 2016-10-12 | 2017-03-15 | 北京精密机电控制设备研究所 | 一种1553b总线通信故障处理方法 |
Non-Patent Citations (1)
Title |
---|
张自友: ""MCU系统软件抗干扰技术"", 《计算机与信息技术》 * |
Also Published As
Publication number | Publication date |
---|---|
CN108732967B (zh) | 2020-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5906534B2 (ja) | デマンドレスポンス方法、及びデマンドレスポンス制御装置 | |
CN107477820A (zh) | 空调控制系统、检测装置、空调器及可读存储介质 | |
CN106961364A (zh) | 心跳检测方法及应用服务器 | |
CN104255049A (zh) | 一种无线接入点备用设置的方法和设备 | |
CN103680655B (zh) | 核电站数字化仪控系统缺省值设置方法和系统 | |
CN105027011B (zh) | 查实和调整设备耦合器的电流限制的方法和执行它的电路 | |
CN109034424A (zh) | 一种变电站设备维护管理方法、装置及终端设备 | |
GB2505929A (en) | Method and system for predictive load shedding on a power grid | |
CN108363343A (zh) | 家电控制方法、系统和计算机存储介质 | |
CN109857135A (zh) | 一种无人机控制方法、装置、终端设备及存储介质 | |
CN108732413A (zh) | 用电设备的告警方法及装置 | |
CN110069925A (zh) | 软件监测方法、系统及计算机可读存储介质 | |
CN108732967A (zh) | 防电磁干扰方法、防断电控制盒、空调器和介质 | |
CN104730977B (zh) | 一种存储和读取空调容量码的方法及空调 | |
CN104580361A (zh) | 数据下载的方法、装置及系统 | |
CN110531711A (zh) | 一种基于物联网技术的耗电控制系统 | |
CN109388552B (zh) | 启动应用程序的时长的确定方法、装置及存储介质 | |
CN103577296B (zh) | 一种总线可靠性测试方法及系统 | |
CN115635851A (zh) | 一种车载智能配电系统、控制方法及存储介质 | |
CN110173802A (zh) | 空调器及其通信控制方法、装置和电子设备 | |
CN106440553B (zh) | 多联机空调自动设置主子机的方法及装置 | |
CN110986190B (zh) | 空调器外机主板性能监测分析方法、装置、系统和介质 | |
CN102819310B (zh) | 输出端电源管理方法及其装置 | |
CN107623718A (zh) | 一种家电设备的控制方法及系统 | |
CN107132894A (zh) | 一种复位电路、方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |