论文部分内容阅读
【摘要】单片机在一些机械装置上的应用主要起到控制的作用,然而单片机不可避免收到设备频繁的启动及电压方面的干扰,会对单片机正常运行起到重要影响。因此,我们要采取抗干扰措施,确保单片机正常运行。本文首先对干扰对单片机的危害进行分析,对单片机在软件方面的抗干扰技术进行研究和探讨。
【关键词】单片机;软件;抗干扰;措施
引言
单片机应用于机械设备上过程中不可避免会出现诸多干扰,会对机器设备的输入、输出等方面产生影响,并且会对设备内部程序造成损坏,甚至是直接破坏系统硬件,导致系统硬质无法正常运行,控制失灵。和一些硬件抗干扰技术相比较而言,软件抗干扰技术克服其预见性差、成本较高,软件抗干扰技术的成本更低,设计灵活性更高,还可以作为干扰后补方法,具有很强的通用性。所以,单片机抗干扰编程研究得到越来越多的重视,本文针对干扰对单片机的危害进行分析,对有关单片机软件抗干扰技术进行研究和探讨,不足之处,敬请指正。
1.干扰对单片机的危害分析
(1)干扰导致单片机采集的数据具有较大的误差,在干扰信号对单片机产生影响时,其已经进入系统的前向通道,和普通信号进行叠加,导致信号采集的误差增大,A/D进行转换的精度也随之下降。
(2)干扰导致单片机导致控制失灵,单片机控制系统中控制状态输出往往和一些条件下输入及条件状态逻辑单元有关,干扰侵入到系统中,输入/输出接口的状态受到一定程度的干扰,导致条件状态受到偏差,甚至是失误,造成控制失灵,尤其是有可能导致系统资源被莫名其妙的任务模块而占用,形成系统的死锁状况。
(3)干扰导致单片机导致数据发生变化,实际上RAM是可以被读写的,所以在干扰的前提下,系统RAM中数据被干扰源所篡改,系统运行状况受到影响。
(4)干扰导致单片机系统运行失常,单片机受到干扰时,导致程序计数器PC内容出现失误,程序出现“跑飞”的情况,程序胡乱执行一些指令,使其出现死循环,系统的输出逐渐混乱,造成系统控制失灵。
2.单片机软件抗干扰技术研究
为了确保单片机系统可以不受影响因素的干扰,国内外科学家致力于研究单片机硬件和软件方面的抗干扰技术。经过实践证明,现阶段我们常见的单片机软件抗干扰技术主要有以下几种,包括数据采集误差的软件技术、控制状态失灵的软件技术、自救技术以及计数器容错技术等。
2.1 信号数据采集误差的软件抗干扰技术
单片机信号进行采集过程中,采用算术平均值法、中值法、比较取舍法等对数据进行采集,具体运用过程中,我们应当按照具体数据变化情况对不同方法进行选择,尽可能减少数据误差。
(1)算术平均值方法,实际上和数学计算方法有一定的类似,具体应用到单片机系统中是指对某一个参数点进行一定数量的数据收集,对采集的数据进行平均值的计算,算术平均值法可防止系统受到随机干扰的影响。
(2)比较取舍法是指单片机测量数据中存在个别误差时对每一个参数点数据进行多次测量,按照数据的细微变化,去掉误差比较大的数据。
(3)中值法,干扰源能够造出测量信号或大或小,因此在测量过程中应当对某一个参数点进行多次测量,对数据进行比较分析,取合理数据的中间值。
2.2 控制状态失灵的软件抗干扰技术
单片机控制系统中注重怎样对系统正常状况进行维持,假如控制系统被侵入,会对系统控制条件产生影响,包括系统信号的输出、系统失误率增大等,为了确保系统可以正常运行,可以采取以下软件抗干扰技术:
(1)软件冗余
软件冗余是指单片机的条件控制系统,应当进行采样处理,也可以结合循环采样进行,这种方法适用于惯性比较大的系统。
(2)对输出状况寄存单元进行设置
这种设置方法会对单片机整个控制系统受到干扰前提下,能够迅速准确召回寄存单元的输出数据,方便及时对系统输出数据进行改正。
(3)自检程序进行设置
单片机的自检程序可以在一定程度上帮助一些部位及一些内存的单设状态标志,单片机开机后自动开展自检,从而极大的促进单片机控制系统信息温度可靠性的提高,自检程序提高其系统稳定可靠性,对于单片机系统而言,自检程序是必不可少的。
(4)时间片的方法
单片机控制系统接口状况受到外界环境影响和干扰,单片机控制系统的资源会被其他任务所占用,导致单片机控制系统发生死锁情况,时间片方法对此有很好的效果。
2.3 利用数据冗余技术实现存储器
单片机要实现实时控制,不可避免会涉及到内容的自救,存储器中数据中大部分是可以毁坏,一部分是不允许丢失,所以数据的毁坏不一定是系统损坏造成的,仅仅是系统出现微小浮动,用不了多久时间恢复正常。因此,实际控制时我们仅仅需要对不允许丢失的数据进行保护,保护过程中会校验法和设标法进行重要数据的保护。其中,校验法的可信度较高,可以难以操作。具体在编程过程中,会对两种方法进行综合,先在存储器目标数据工作区的始末端进行标志性代码的设置,对固定数据表格进行校验字的设置。除此之外,程序运行时对程序工作状况进行检查,避免出现错误。
2.4 程序插入空操作指令
单片机内部程序计数器的容错值是比较容易受到外界干扰的地方,较强干扰时会出现较大变化,而且变化的值不固定,造成程序工作状态没有顺序。针对这种情况,可以在单片机程序中插入空操作指令,失控系统收到空指令,一方面使得系统内部存储器内容进行调整,另一方面对程序进行纠正。然而,空操作指令中一大部分属于单字节指令,因此每一个程序中指令的使用次数有限。而且,增添存储单元数量不能太多,可以对系统稳定可靠性起到促进作用。除此之外,单片机插入空操作指令还要注意以下几个方面的内容:
(1)空操作指令插入到跳转字节,确保单片机系统程序正常运行。
(2)单片机系统插入空操作指令,注意指令插入到较为重要的操作指令前。
(3)单片机系统插入空操作指令,对相邻俩插入指令间距进行调整,每间隔2-3条指令插入一次。
(4)单片机系统插入空操作指令,结合其实际情况,或许我们只插入一条、两条操作指令即可满足其正常运行。
3.结语
总而言之,干扰对于单片机的危害是比较大的,因此本文针对干扰对于单片机的影响和危害,采取软件抗干扰措施以应对。实际上,硬件抗干扰和软件抗干扰之间存在很大的差别,前者是主动措施,后者是被动措施,各有所长,因此在具体的应用环境中软件抗干扰和硬件抗干扰进行结合,可以有效确保工业现场单片机能够长期、稳定可靠的运行。
参考文献
[1]阎新芳.ADuC831单片机在FSK信号解码中的应用[J].河南科技.2006(10).
[2]陈信.利用可编程接口技术和8031单片机实现LCM显示的研究[J].大众科技.2005(08).
[3]衣英刚,姚兆.单片机在坦克火控系统模拟器中的应用研究[J].科技资讯.2008(13).
[4]程琼,黄圣超,王淑青,张友奖.基于ISP技术的单片机与CPLD实验系统设计[J].实验科学与技术.2009(01)
[5]杨志敏,龚蓬.单片机软件的开发研究[J].安徽大学学报(自然科学版).2008(01).
[6]罗贤锋,童雪娟,傅凤岐.单片机修复机电类教学设备方法[J].实验科学与技术.2008(01).
[7]张剑锋,陈锐,陈慕君,曾凡娇.单片机软件精确延时计算和延时程序设计方法[J].黑龙江科技信息.2009(26)
[8]吴允平.单片机多任务架构软件的限时服务设计[J].小型微型计算机系统.2005(07).
[9]汪林.基于Small_RTOS51的单片机软件快速开发架构[J].中国民航飞行学院学报.2007(01).
【关键词】单片机;软件;抗干扰;措施
引言
单片机应用于机械设备上过程中不可避免会出现诸多干扰,会对机器设备的输入、输出等方面产生影响,并且会对设备内部程序造成损坏,甚至是直接破坏系统硬件,导致系统硬质无法正常运行,控制失灵。和一些硬件抗干扰技术相比较而言,软件抗干扰技术克服其预见性差、成本较高,软件抗干扰技术的成本更低,设计灵活性更高,还可以作为干扰后补方法,具有很强的通用性。所以,单片机抗干扰编程研究得到越来越多的重视,本文针对干扰对单片机的危害进行分析,对有关单片机软件抗干扰技术进行研究和探讨,不足之处,敬请指正。
1.干扰对单片机的危害分析
(1)干扰导致单片机采集的数据具有较大的误差,在干扰信号对单片机产生影响时,其已经进入系统的前向通道,和普通信号进行叠加,导致信号采集的误差增大,A/D进行转换的精度也随之下降。
(2)干扰导致单片机导致控制失灵,单片机控制系统中控制状态输出往往和一些条件下输入及条件状态逻辑单元有关,干扰侵入到系统中,输入/输出接口的状态受到一定程度的干扰,导致条件状态受到偏差,甚至是失误,造成控制失灵,尤其是有可能导致系统资源被莫名其妙的任务模块而占用,形成系统的死锁状况。
(3)干扰导致单片机导致数据发生变化,实际上RAM是可以被读写的,所以在干扰的前提下,系统RAM中数据被干扰源所篡改,系统运行状况受到影响。
(4)干扰导致单片机系统运行失常,单片机受到干扰时,导致程序计数器PC内容出现失误,程序出现“跑飞”的情况,程序胡乱执行一些指令,使其出现死循环,系统的输出逐渐混乱,造成系统控制失灵。
2.单片机软件抗干扰技术研究
为了确保单片机系统可以不受影响因素的干扰,国内外科学家致力于研究单片机硬件和软件方面的抗干扰技术。经过实践证明,现阶段我们常见的单片机软件抗干扰技术主要有以下几种,包括数据采集误差的软件技术、控制状态失灵的软件技术、自救技术以及计数器容错技术等。
2.1 信号数据采集误差的软件抗干扰技术
单片机信号进行采集过程中,采用算术平均值法、中值法、比较取舍法等对数据进行采集,具体运用过程中,我们应当按照具体数据变化情况对不同方法进行选择,尽可能减少数据误差。
(1)算术平均值方法,实际上和数学计算方法有一定的类似,具体应用到单片机系统中是指对某一个参数点进行一定数量的数据收集,对采集的数据进行平均值的计算,算术平均值法可防止系统受到随机干扰的影响。
(2)比较取舍法是指单片机测量数据中存在个别误差时对每一个参数点数据进行多次测量,按照数据的细微变化,去掉误差比较大的数据。
(3)中值法,干扰源能够造出测量信号或大或小,因此在测量过程中应当对某一个参数点进行多次测量,对数据进行比较分析,取合理数据的中间值。
2.2 控制状态失灵的软件抗干扰技术
单片机控制系统中注重怎样对系统正常状况进行维持,假如控制系统被侵入,会对系统控制条件产生影响,包括系统信号的输出、系统失误率增大等,为了确保系统可以正常运行,可以采取以下软件抗干扰技术:
(1)软件冗余
软件冗余是指单片机的条件控制系统,应当进行采样处理,也可以结合循环采样进行,这种方法适用于惯性比较大的系统。
(2)对输出状况寄存单元进行设置
这种设置方法会对单片机整个控制系统受到干扰前提下,能够迅速准确召回寄存单元的输出数据,方便及时对系统输出数据进行改正。
(3)自检程序进行设置
单片机的自检程序可以在一定程度上帮助一些部位及一些内存的单设状态标志,单片机开机后自动开展自检,从而极大的促进单片机控制系统信息温度可靠性的提高,自检程序提高其系统稳定可靠性,对于单片机系统而言,自检程序是必不可少的。
(4)时间片的方法
单片机控制系统接口状况受到外界环境影响和干扰,单片机控制系统的资源会被其他任务所占用,导致单片机控制系统发生死锁情况,时间片方法对此有很好的效果。
2.3 利用数据冗余技术实现存储器
单片机要实现实时控制,不可避免会涉及到内容的自救,存储器中数据中大部分是可以毁坏,一部分是不允许丢失,所以数据的毁坏不一定是系统损坏造成的,仅仅是系统出现微小浮动,用不了多久时间恢复正常。因此,实际控制时我们仅仅需要对不允许丢失的数据进行保护,保护过程中会校验法和设标法进行重要数据的保护。其中,校验法的可信度较高,可以难以操作。具体在编程过程中,会对两种方法进行综合,先在存储器目标数据工作区的始末端进行标志性代码的设置,对固定数据表格进行校验字的设置。除此之外,程序运行时对程序工作状况进行检查,避免出现错误。
2.4 程序插入空操作指令
单片机内部程序计数器的容错值是比较容易受到外界干扰的地方,较强干扰时会出现较大变化,而且变化的值不固定,造成程序工作状态没有顺序。针对这种情况,可以在单片机程序中插入空操作指令,失控系统收到空指令,一方面使得系统内部存储器内容进行调整,另一方面对程序进行纠正。然而,空操作指令中一大部分属于单字节指令,因此每一个程序中指令的使用次数有限。而且,增添存储单元数量不能太多,可以对系统稳定可靠性起到促进作用。除此之外,单片机插入空操作指令还要注意以下几个方面的内容:
(1)空操作指令插入到跳转字节,确保单片机系统程序正常运行。
(2)单片机系统插入空操作指令,注意指令插入到较为重要的操作指令前。
(3)单片机系统插入空操作指令,对相邻俩插入指令间距进行调整,每间隔2-3条指令插入一次。
(4)单片机系统插入空操作指令,结合其实际情况,或许我们只插入一条、两条操作指令即可满足其正常运行。
3.结语
总而言之,干扰对于单片机的危害是比较大的,因此本文针对干扰对于单片机的影响和危害,采取软件抗干扰措施以应对。实际上,硬件抗干扰和软件抗干扰之间存在很大的差别,前者是主动措施,后者是被动措施,各有所长,因此在具体的应用环境中软件抗干扰和硬件抗干扰进行结合,可以有效确保工业现场单片机能够长期、稳定可靠的运行。
参考文献
[1]阎新芳.ADuC831单片机在FSK信号解码中的应用[J].河南科技.2006(10).
[2]陈信.利用可编程接口技术和8031单片机实现LCM显示的研究[J].大众科技.2005(08).
[3]衣英刚,姚兆.单片机在坦克火控系统模拟器中的应用研究[J].科技资讯.2008(13).
[4]程琼,黄圣超,王淑青,张友奖.基于ISP技术的单片机与CPLD实验系统设计[J].实验科学与技术.2009(01)
[5]杨志敏,龚蓬.单片机软件的开发研究[J].安徽大学学报(自然科学版).2008(01).
[6]罗贤锋,童雪娟,傅凤岐.单片机修复机电类教学设备方法[J].实验科学与技术.2008(01).
[7]张剑锋,陈锐,陈慕君,曾凡娇.单片机软件精确延时计算和延时程序设计方法[J].黑龙江科技信息.2009(26)
[8]吴允平.单片机多任务架构软件的限时服务设计[J].小型微型计算机系统.2005(07).
[9]汪林.基于Small_RTOS51的单片机软件快速开发架构[J].中国民航飞行学院学报.2007(01).