单片机系统软件抗干扰方法

单片机系统软件抗干扰方法,第1张

在提高硬件系统抗干扰能力的同时 软件抗干扰以其设计灵活 节省硬件资源 可靠性好越来越受到重视 下面以MCS 单片机系统为例 对微机系统软件抗干扰方法进行研究

  软件抗干扰方法的研究

在工程实践中 软件抗干扰研究的内容主要是 一 消除模拟输入信号的嗓声(如数字滤波技术) 二 程序运行混乱时使程序重入正轨的方法 本文针对后者提出了几种有效的软件抗干扰方法

指令冗余

CPU取指令过程是先取 *** 作码 再取 *** 作数 当PC受干扰出现错误 程序便脱离正常轨道 乱飞 当乱飞到某双字节指令 若取指令时刻落在 *** 作数上 误将 *** 作数当作 *** 作码 程序将出错 若 飞 到了三字节指令 出错机率更大

在关键地方人为插入一些单字节指令 或将有效单字节指令重写称为指令冗余 通常是在双字节指令和三字节指令后插入两个字节以上的NOP 这样即使乱飞程序飞到 *** 作数上 由于空 *** 作指令NOP的存在 避免了后面的指令被当作 *** 作数执行 程序自动纳入正轨

此外 对系统流向起重要作用的指令如RET RETI LCALL LJMP JC等指令之前插入两条NOP 也可将乱飞程序纳入正轨 确保这些重要指令的执行

拦截技术

所谓拦截 是指将乱飞的程序引向指定位置 再进行出错处理 通常用软件陷阱来拦截乱飞的程序 因此先要合理设计陷阱 其次要将陷阱安排在适当的位置

软件陷阱的设计

当乱飞程序进入非程序区 冗余指令便无法起作用 通过软件陷阱 拦截乱飞程序 将其引向指定位置 再进行出错处理 软件陷阱是指用来将捕获的乱飞程序引向复位入口地址 H的指令 通常在EPROM中非程序区填入以下指令作为软件陷阱

NOP

NOP

LJMP H

其机器码为

陷阱的安排

通常在程序中未使用的EPROM空间填 最后一条应填入 当乱飞程序落到此区 即可自动入轨 在用户程序区各模块之间的空余单元也可填入陷阱指令 当使用的中断因干扰而开放时 在对应的中断服务程序中设置软件陷阱 能及时捕获错误的中断 如某应用系统虽未用到外部中断 外部中断 的中断服务程序可为如下形式

NOP

NOP

RETI

返回指令可用 RETI 也可用 LJMP H 如果故障诊断程序与系统自恢复程序的设计可靠 完善 用 LJMP H 作返回指令可直接进入故障诊断程序 尽早地处理故障并恢复程序的运行

考虑到程序存贮器的容量 软件陷阱一般 K空间有 个就可以进行有效拦截

软件 看门狗 技术

若失控的程序进入 死循环 通常采用 看门狗 技术使程序脱离 死循环 通过不断检测程序循环运行时间 若发现程序循环时间超过最大循环运行时间 则认为系统陷入 死循环 需进行出错处理

看门狗 技术可由硬件实现 也可由软件实现 在工业应用中 严重的干扰有时会破坏中断方式控制字 关闭中断 则系统无法定时 喂狗 硬件看门狗电路失效 而软件看门狗可有效地解决这类问题

笔者在实际应用中 采用环形中断监视系统 用定时器T 监视定时器T 用定时器T 监视主程序 主程序监视定时器T 采用这种环形结构的软件 看门狗 具有良好的抗干扰性能 大大提高了系统可靠性 对于需经常使用T 定时器进行串口通讯的测控系统 则定时器T 不能进行中断 可改由串口中断进行监控(如果用的是MCS 系列单片机 也可用T 代替T 进行监视) 这种软件 看门狗 监视原理是 在主程序 T 中断服务程序 T 中断服务程序中各设一运行观测变量 假设为MWatch T Watch T Watch 主程序每循环一次 MWatch加1 同样T T 中断服务程序执行一次 T Watch T Watch加1 在T 中断服务程序中通过检测T Watch的变化情况判定T 运行是否正常 在T 中断服务程序中检测MWatch的变化情况判定主程序是否正常运行 在主程序中通过检测T Watch的变化情况判别T 是否正常工作 若检测到某观测变量变化不正常 比如应当加 而未加 则转到出错处理程序作排除故障处理 当然 对主程序最大循环周期 定时器T 和T 定时周期应予以全盘合理考虑 限于篇幅不赘述

  系统故障处理 自恢复程序的设计

单片机系统因干扰复位或掉电后复位均属非正常复位 应进行故障诊断并能自动恢复非正常复位前的状态

非正常复位的识别

程序的执行总是从 H开始 导致程序从 H开始执行有四种可能 一 系统开机上电复位 二 软件故障复位 三 看门狗超时未喂狗硬件复位 四 任务正在执行中掉电后来电复位 四种情况中除第一种情况外均属非正常复位 需加以识别

硬件复位与软件复位的识别

此处硬件复位指开机复位与看门狗复位 硬件复位对寄存器有影响 如复位后PC= H SP= H PSW= H等 而软件复位则对SP SPW无影响 故对于微机测控系统 当程序正常运行时 将SP设置地址大于 H 或者将PSW的第 位用户标志位在系统正常运行时设为 那么系统复位时只需检测PSW 标志位或SP值便可判此是否硬件复位 图 是采用PSW 作上电标志位判别硬 软件复位的程序流程图

图 硬 软件复位识别流程图

此外 由于硬件复位时片内RAM状态是随机的 而软件复位片内RAM则可保持复位前状态 因此可选取片内某一个或两个单元作为上电标志 设 H用来做上电标志 上电标志字为 H 若系统复位后 H单元内容不等于 H 则认为是硬件复位 否则认为是软件复位 转向出错处理 若用两个单元作上电标志 则这种判别方法的可靠性更高

开机复位与看门狗故障复位的识别

开机复位与看门狗故障复位因同属硬件复位 所以要想予以正确识别 一般要借助非易失性RAM或者EEROM 当系统正常运行时 设置一可掉电保护的观测单元 当系统正常运行时 在定时喂狗的中断服务程序中使该观测单元保持正常值(设为 AAH) 而在主程中将该单元清零 因观测单元掉电可保护 则开机时通过检测该单元是否为正常值可判断是否看门狗复位

正常开机复位与非正常开机复位的识别

识别测控系统中因意外情况如系统掉电等情况引起的开机复位与正常开机复位 对于过程控制系统尤为重要 如某以时间为控制标准的测控系统 完成一次测控任务需 小时 在已执行测控 分钟的情况下 系统电压异常引起复位 此时若系统复位后又从头开始进行测控则会造成不必要的时间消耗 因此可通过一监测单元对当前系统的运行状态 系统时间予以监控 将控制过程分解为若干步或若干时间段 每执行完一步或每运行一个时间段则对监测单元置为关机允许值 不同的任务或任务的不同阶段有不同的值 若系统正在进行测控任务或正在执某时间段 则将监测单元置为非正常关机值 那么系统复位后可据此单元判系统原来的运行状态 并跳到出错处理程序中恢复系统原运行状态

非正常复位后系统自恢复运行的程序设计

对顺序要求严格的一些过程控制系统 系统非正常复位否 一般都要求从失控的那一个模块或任务恢复运行 所以测控系统要作好重要数据单元 参数的备份 如系统运行状态 系统的进程值 当前输入 输出的值 当前时钟值 观测单元值等 这些数据既要定时备份 同时若有修改也应立即予以备份

当在已判别出系统非正常复位的情况下 先要恢复一些必要的系统数据 如显示模块的初始化 片外扩展芯片的初始化等 其次再对测控系统的系统状态 运行参数等予以恢复 包括显示界面等的恢复 之后再把复位前的任务 参数 运行时间等恢复 再进入系统运行状态

应当说明的是 真实地恢复系统的运行状态需 要极为细致地对系统的重要数据予以备份 并加以数据可靠性检查 以保证恢复的数据的可靠性

其次 对多任务 多进程测控系统 数据的恢复需考虑恢复的次序问题 笔者实际应用的数据恢复过程流程图如图 所示   

图 系统自恢复程序流程图

图中恢复系统基本数据是指取出备份的数据覆盖当前的系统数据 系统基本初始化是指对芯片 显示 输入输出方式等进行初始化 要注意输入输出的初始化不应造成误动作 而复位前任务的初始化是指任务的执行状态 运行时间等

  结束语

lishixinzhi/Article/program/qrs/201311/11074

你们知道什么是硬件看门狗吗跟着我一起学习什么是硬件看门狗吧。

硬件看门狗介绍

看门狗,又叫watchdog timer,主要用来监控、管理CPU的运行状态,并对处于异常状态中的CPU进行复位 *** 作,使其能重新工作。

看门狗可分为硬件看门狗和软件看门狗两种。

硬件看门狗的主体是一个定时电路,并由被监控CPU提供周期性“喂狗”信号,对定时器清零(俗称“清狗”)。CPU正常工作时,由于能定时“清狗”,看门狗内的定时器不会溢出。当CPU出现故障,则不能继续提供“清狗”信号,使得看门狗内定时器不断累加而溢出,从而触发一个复位信号对CPU进行复位,使CPU重新工作。

软件看门狗原理上一样,只是将硬件电路上的定时器用处理器的内部定时器代替,这样可以简化硬件电路设计,但在可靠性方面不如硬件定时器,比如系统内部定时器自身发生故障就无法检测到。当然也有通过双定时器相互监视,这不仅加大系统开销,也不能解决全部问题,比如中断系统故障导致定时器中断失效。

看门狗本身不是用来解决系统出现的问题,在调试过程中发现的故障应该要查改设计本身的错误。加入看门狗目的是对一些程序潜在错误和恶劣环境干扰等因素导致系统死机而在无人干预情况下自动恢复系统正常工作状态。看门狗也不能完全避免故障造成的损失,毕竟从发现故障到系统复位恢复正常这段时间内是不能正常工作的。同时一些系统也需要复位前保护现场数据,重启后恢复现场数据,这可能也需要一笔软硬件的开销。

1)MR#:Manual-Reset,手动复位输入信号,低电平有效,当此管脚的输入电平低于06V时,会触发Reset#管脚输出一个复位信号,此管脚内部有 70uA 上拉电流。如要不使用此管脚,需要将此管脚接到VCC或者悬空,不可接地;

2)VCC:芯片工作电压,接5V或33V;

3)GND:芯片参考地,直接与单板GND相连;

4)PFI:Power-Fail Comparator Input,电压监控输入管脚,当此管脚的输入电压低于125V时,FPO#及Reset#会输出低电平信号;

5)PFO#:Power-Fail Output,电压监控输出管脚,当PFI的输入电平低于125V时,输出低电平,不使用此管脚时可将其悬空;

6)WDI:Watchdog Input,清狗信号输入,WDI遇到一个上升沿/下降沿,内部看门狗定时器都将清0。WDI的输入信号超过16S不发生跳变时,看门狗内部定时器将会溢出并触发WDO#输出低电平;

7)WDO#:Watchdog Output,看门狗输出,WDI超过16S不发生跳变时,WDO#将输出低电平,另外,VCC低于125V时也会触发WDO#输出低电平;

8)RESET#:复位信号输出,低电平有效,低电平宽度为200ms,Reset#信号只会被VCC或MR#触发,WDO#有效时不会触发Reset#,除非将WDO#接到RESET#上。

虽然MAX706与ADM706芯片在封装上相互兼容,但两者还是存在一些差异,具体如下:

1)MAX706R是商业级器件,工作温度范围为:0-70 oC,而ADM706R是工业级器件,工作温度范围为:-40-85 oC,所以大家在选型的时候,一定要产品的工作环境是否对温度有要求;

2)MAX706R的最小复位脉冲宽度为140ms,ADM706R的最小脉冲宽度为160ms;

3)ADM706R的WDI管脚若悬空处于高阻状态时会禁止芯片工作,所以设计时,需要将WDI管脚通过47K电阻上拉到VCC。而MAX706不能被禁止,一上电就开始工作,所以WDI不需要上拉;

4)ADM706R的PFO#信号不但会被PFI信号触发,同时也会被MR#信号触发,当MR#出现负电平时,会触发PFO#输出10KHz方波并保持,但MAX706的PFO#仅仅和输入PFI有关,不会受MR#管脚电平的影响;

5)当MR#出现低电平时,对于MAX706芯片,WDO#将先于RESET#跳变,而ADM706却相反,WDO#后于RESET#跳变。

为了使硬件看门狗更可靠,使用起来更灵活,当今主流的设计方式都是看门狗芯片配合逻辑器件(CPLD)来使用。

此时,看门狗有三种清狗方式:

1)正常工作时,CPU输出WDI信号清狗;

2)CPU关闭看门狗(不输出WDI信号),由CPLD输出WDI清狗信号,此方法不推荐使用,容易出问题,有的设计规范中是严禁CPU关闭看门狗的;

3)CPU挂死后,CPLD主动输出WDI清狗信号一段时间,如果CPU仍未恢复正常,则不再继续清狗,等待看门狗芯片内部定时器溢出后输出复位信号对CPU进行复位。

在CPU上电启动期间内,是不能输出WDI信号去清狗的,而外部硬件看门狗是一上电就开始工作的,CPU的启动时间一般在一两分钟,而看门狗的定时器只有16s,超过这个时间不清狗就会输出复位信号对CPU进行复位,如果这样的话,CPU就会每隔16s重启一次,不能正常工作,如何规避这种问题的

在实际设计中是这样做的,如下图所示,在CPU上电启动的这段时间内,利用系统时钟信号CLK清狗,等CPU启动完成后,SWITCH自动将清狗信号切换成WDI。定时器和切换开关(SWITCH)是用逻辑模拟的,定时器的溢出时间可设(一般比CPU启动时间稍长一点点),等CPU启动完成后,定时器也随之溢出,并产生溢出信号,SWITCH接收到此溢出信号后,立即采取动作,将清狗信号从系统时钟切换到WDI。

你说的技能键大停电之类的应该是Q键位侵入系统。
看门狗pc版键盘按键 *** 作:
常用键位:
Q键 侵入
E键 互动
Z键 资料库
CTRL键 专注(子d时间)
鼠标中键 手机
M键 地图
X键 绘制路径
TAB键 物品栏
1键 步q
2键 手q
3键 霰dq
4键 特殊武器
5键 切换投掷物/工具栏
G键 投掷/实用工具
B键 开始/停止播放列表
N键 跳过歌曲
移动键位:
W键 前进
S键 后退
A键 左移
D键 右移
ALT键 散步
SHIFT键 冲刺
空格键 攀爬
C键 进入掩体
V键 退出掩体
T键 取出/收回武器
鼠标右键 瞄准
鼠标左键 射击
R键 装d
F键 肉搏
驾驶键位:
W键 加速
S键 刹车/倒车
A键 左转
D键 右转
空格键 手刹
F键 车中躲藏
C键 视角
SHIFT键 倒视镜
ALT键 鸣笛

1、首先,爬过一个屋顶后,借助两边的掩体快速移动,靠近守卫后近战放倒之后从平台跳下去后,可看到警卫的位置,利用掩体移动靠近后直接放倒,之后还有一个守卫
2、捡了个东西后,上楼梯,第一扇门是锁着的,通过视觉红线指引,爬到门顶上,看到要解锁的设备,成功骇入后,门就打开了
3、进入后,显示Dedsec的成员正在监视马可仕出现两个并排的警卫直接干掉,再到达一个锁着的玻璃门前用骇客视觉 发现监视器,黑入监视器后,找到桌上的笔记本并取得这扇门的钥匙秘钥通过监视器还可发现并标记守卫的位置
4、打开门后直接往楼上跑,将沿途被标记守卫 干掉,注意利用掩体躲避,把握时机把敌人都干掉后,开始黑入机房主机,期间需要一定时间,此时要把出现的警卫干掉成功倒计时后,电源会被切断
5、这个时候,已经被发现了,应赶快跟着 红线 引导跑上楼去到了顶上,进入服务器,成功骇入后,接下来,按着 的箭头走,找到数据库,这里 要进行一个简单的连线 游戏,改变节点连线的方向,让线路接通变为绿色就可以了
6、在电脑上删除了所有案件记录后,创建了一个新的个人数据接下来 就是下楼 逃走了系统会有教程提示 你如何黑入一个设备来 引开敌人的注意,最终还是逃出来了

无法停止。查询硬件看门狗芯片介绍,该芯片开启后是无法停止,只能等没有电。集成电路英语:integratedcircuit,缩写作IC;或称微电路(microcircuit)、微芯片(microchip)、晶片/芯片(chip)在电子学中是一种将电路(主要包括半导体设备,也包括被动组件等)小型化的方式,并时常制造在半导体晶圆表面上。

看门狗欠费跳闸是防止突发事故。看门狗是一种电子设备,主要用于监控电路的状态,当电路出现异常情况时,它可以自动进行控制,以保证电路的正常运行。在电力系统中,看门狗一般用于监控电路的状态,并在电路故障或负荷过大时进行保护,防止设备受损或发生安全事故。如果看门狗欠费或出现故障,会导致电路的保护失效,从而引发电路故障或设备损坏。

问题一:看门狗怎么打开手机 鼠标中键。或者你也可以按退出找到设置,去看里面的按键设置,打开手机是哪个键。我没用主机玩过所以不好意思了……

问题二:如何将手机玩出看门狗的感觉 !!

问题三:看门狗2怎么开启手机 PC版是Tab键。主机版我就不清楚了,不过可以从菜单的设置那里,选择“鼠标与键盘”,然后点“自订控制”,就可以查看开启手机是哪个键了。

问题四:看门狗怎么用手机观察周围的平民… 顺手采纳答案
首先先按Z键,开启透析模式,然后就会有连线提示你可以用手机分析周围的平民,你可以用手机按Q键偷听平民的电话,看他们的短信,还可以黑进平民的账户偷钱,还可以拿到做特殊装备以及道具需要的电子秘匙。

问题五:看门狗中插手机的叫什么 看门狗中插手机的叫充电器。用来给手机充电。如今许多手机都有充电器,狗哥的自然也有充电器。对于手机来说充电器十分重要,因为手机一旦没电就无法使用了,需要有充电器才能给手机提供电力以便继续使用手机。而在游戏中手机没电是很麻烦的,因为许多骇入都需要手机的电。没电的话许多骇如都无法进行,游戏就会有些吃力。所以给手机充电刻不容缓。所以狗哥之自然需要一个先进的充电器来给他的功能极其强大的手机提供电力,而中的这个正是他的先进手机的先进充电器。

问题六:看门狗的智慧型手机怎么实现出来?那种手机真心强大。 10分 yangtse/guonei/2014-06-18/158945 基本都有 就差个ctos

问题七:好像拥有看门狗里面的手机,耪ㄌ欤顿时发现什么手机,这是手机之神 手机上有个软件叫ctOS Mobile,其实就是游戏里主角的手机系统,楼主有兴趣的话可以下载玩玩,要联网和Uplay帐号。

问题八:《看门狗》里主角用的手机是什么牌子? 666666
如果你问功能的话我只能告诉你:诺基亚 lumia930可以装IOS70
你自己要是有相应的(能上天的)技术,自己可以弄出来,至于想买还是算了,公开出售这类软件(及其硬件)是一定会违法的。而且现在还没有手机性能跟得上。
如果你问外设的话,我没记错的话应该是黑莓吧

问题九:看门狗,这个游戏可以在手机上玩么 是可以的。不过安装的时候首先打开手机助手和手机管家,然后再搜索安装,不要直接在,网页上搜索这样。不安全,而且容易安装病毒,垃圾广告等等

什么叫看门狗测试:看门狗分硬件看门狗和软件看门狗。硬件看门狗是利用一个定时器电路,其定时输出连接到电路的复位端,程序在一定时间范围内对定时器清零(俗称“喂狗”),因此程序正常工作时,定时器总不能溢出,也就不能产生复位信号。如果程序出现故障,不在定时周期内复位看门狗,就使得看门狗定时器溢出产生复位信号并重启系统。软件看门狗原理上一样,只是将硬件电路上的定时器用处理器的内部定时器代替,这样可以简化硬件电路设计,但在可靠性方面不如硬件定时器,比如系统内部定时器自身发生故障就无法检测到。当然也有通过双定时器相互监视,这不仅加大系统开销,也不能解决全部问题,比如中断系统故障导致定时器中断失效。 看门狗本身不是用来解决系统出现的问题,在调试过程中发现的故障应该要查改设计本身的错误。加入看门狗目的是对一些程序潜在错误和恶劣环境干扰等因素导致系统死机而在无人干预情况下自动恢复系统正常工作状态。看门狗也不能完全避免故障造成的损失,毕竟从发现故障到系统复位恢复正常这段时间内怠工。同时一些系统也需要复位前保护现场数据,重启后恢复现场数据,这可能也需要一笔软硬件的开销。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12882804.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存