看门狗电路

时间:2024-08-12 19:00:02编辑:优化君

看门狗原理和应用

工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位,所以在使用有看门狗的芯片时要注意清看门狗。看门狗电路的应用:它可以使单片机可以在无人状态下实现连续工作。看门狗,又叫 watchdog timer,是一个定时器电路,一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT 清零。如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU,使MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。扩展资料:看门狗分硬件看门狗和软件看门狗。硬件看门狗是利用一个定时器电路,其定时输出连接到电路的复位端,程序在一定时间范围内对定时器清零(俗称“喂狗”),因此程序正常工作时,定时器总不能溢出,也就不能产生复位信号。如果程序出现故障,不在定时周期内复位看门狗,就使得看门狗定时器溢出产生复位信号并重启系统。软件看门狗原理上一样,只是将硬件电路上的定时器用处理器的内部定时器代替,这样可以简化硬件电路设计,但在可靠性方面不如硬件定时器,比如系统内部定时器自身发生故障就无法检测到。当然也有通过双定时器相互监视,这不仅加大系统开销,也不能解决全部问题,比如中断系统故障导致定时器中断失效。 看门狗本身不是用来解决系统出现的问题,在调试过程中发现的故障应该要查改设计本身的错误。加入看门狗目的是对一些程序潜在错误和恶劣环境干扰等因素导致系统死机而在无人干预情况下自动恢复系统正常工作状态。参考资料来源:百度百科-看门狗

硬件看门狗工作原理

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

  硬件看门狗介绍

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

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

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

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

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

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

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

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

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

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

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

  7).WDO#:Watchdog Output,看门狗输出,WDI超过1.6S不发生跳变时,WDO#将输出低电平,另外,VCC低于1.25V时也会触发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管脚通过4.7K电阻上拉到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的启动时间一般在一两分钟,而看门狗的定时器只有1.6s,超过这个时间不清狗就会输出复位信号对CPU进行复位,如果这样的话,CPU就会每隔1.6s重启一次,不能正常工作,如何规避这种问题的?

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


单片机中的看门狗是什么东西,有什么作用

看门狗(WDT)是一个定时器。看门狗是用来防止万一单片机程序出错造成重大损失的。防错的原理很简单,它在硬件上就是一个定时器,当它溢出的时候就会让单片机强制复位使程序重新开始执行。正常的情况下是不能让它溢出的,所以在程序上每隔一段时间要给他置一次值(俗称喂狗),只要程序中正常给它喂他就不会溢出。一旦程序跑飞了,有干扰或者进入死循环之类的情况时,不能正常执行程序了,那么就永远执行不到喂狗的指令了,但此时定时器是硬件控制的,仍然会走,所以溢出了,单片机就复位了。一般安全性要求比较高的,系统跑飞了会造成重大事故的都会加一个“狗”保安全。通常,看门狗的溢出时间越短越灵敏,跑飞之后复位的时间越短,也就越安全,但是,喂狗的操作也要更频繁。扩展资料:看门狗工作原理:使用时,WDT将递增直到溢出或“超时”。 除非处于休眠或空闲模式,否则WDT超时将强制器件复位。 为避免WDT超时复位,用户必须使用PWRSAV或CLRWDT指令定期清除看门狗定时器。 如果WDT在休眠或空闲模式下超时。器件将唤醒并从执行PWRSAV指令的位置继续执行代码。 在以上两种情况下,WDTO位(RCON )将被置1,表明器件复位或唤醒事件是由WDT超时引起的。 如果WDT将CPU从睡眠或空闲模式唤醒,则还将置位“睡眠”状态位(RCON )或“空闲”状态位(RCON ),表明该设备先前已上电。 保存模式。在正常操作期间,WDT超时将产生设备复位。 当设备处于睡眠状态时,WDT超时将唤醒设备以继续正常操作(称为WDT唤醒)。 清零WDTE设置位可以永久关闭WDT。 后分频器分配完全由软件控制,也就是说,可以在程序执行期间随时更改它。为避免不可预测的器件复位,当从Timer0预分频器分配更改为WDT后分频器分配时,必须执行以下指令序列。 即使禁止了WDT,也必须执行该指令序列。参考资料来源:百度百科-看门狗定时器

操作系统的分类?

根据操作系统在用户界面的使用环境和功能特征的不同,操作系统一般可分为三种基本类型,即批处理系统、分时系统和实时系统。随着计算机体系结构的发展,又出现了许多种操作系统,它们是嵌人式操作系统、个人操作系统、网络操作系统和分布式操作系统。
1. 批处理操作系统
批处理(Batch Processing)操作系统的工作方式是:用户将作业交给系统操作员,系统操作员将许多用户的作业组成一批作业,之后输入到计算机中,在系统中形成一个自动转接的连续的作业流,然后启动操作系统,系统自动、依次执行每个作业。最后由操作员将作业结果交给用户。
批处理操作系统的特点是:多道和成批处理。
2.分时操作系统
分时(Time Sharing)操作系统的工作方式是:一台主机连接了若干个终端,每个终端有一个用户在使用。用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。用户根据上步结果发出下道命。分时操作系统将CPU的时间划分成若干个片段,称为时间片。操作系统以时间片为单位,轮流为每个终端用户服务。每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。分时系统具有多路性、交互性、“独占”性和及时性的特征。多路性指,伺时有多个用户使用一台计算机,宏观上看是多个人同时使用一个CPU,微观上是多个人在不同时刻轮流使用CPU。交互性是指,用户根据系统响应结果进一步提出新请求(用户直接干预每一步)。“独占”性是指,用户感觉不到计算机为其他人服务,就像整个系统为他所独占。及时性指,系统对用户提出的请求及时响应。
常见的通用操作系统是分时系统与批处理系统的结合。其原则是:分时优先,批处理在后。“前台”响应需频繁交互的作业,如终端的要求; “后台”处理时间性要求不强的作业。
3.实时操作系统
实时操作系统(RealTimeOperatingSystem,RTOS)是指使计算机能及时响应外部事件的请求在规定的严格时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地工作的操作系统。实时操作系统要追求的目标是:对外部请求在严格时间范围内做出反应,有高可靠性和完整性。
4.嵌入式操作系统
嵌入式操作系统(EmbeddedOperating System)是运行在嵌入式系统环境中,对整个嵌入式系统以及它所操作、控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件。程,并使整个系统能高效地运行。
5. 个人计算机操作系统
个人计算机操作系统是一种单用户多任务的操作系统。个人计算机操作系统主要供个人使用,功能强、价格便宜,可以在几乎任何地方安装使用。它能满足一般人操作、学习、游戏等方面的需求。个人计算机操作系统的主要特点是计算机在某一时间内为单个用户服务;采用图形界面人机交互的工作方式,界面友好;使用方便,用户无需专门学习,也能熟练操纵机器。
6.网络操作系统
网络操作系统是基于计算机网络的,是在各种计算机操作系统上按网络体系结构协议标准开发的软件,包括网络管理、通信、安全、资源共享和各种网络应用。其目标是相互通信及资源共享。
7.分布式操作系统
大量的计算机通过网络被连结在一起,可以获得极高的运算能力及广泛的数据共享。这种系统被称作分布式系统(DistributedSystem)


三种常用的操作系统是什么?

操作系统是管理计算机软硬件资源的一个平台,没有它,任何计算机都无法正常运行。在个人电脑发展史上,出现过许多不同的操作系统,其中最为常用的有五种:DOS、Windows、Linux、Unix(Mac)/Xenix、OS/2,下面分别介绍这五种微机操作系统的发展过程和功能特点。
一、DOS操作系统   
  从1981年问世至今,DOS经历了7次大的版本升级,从1.0版到现在的7.0版,不断地改进和完善。但是,DOS系统的单用户、单任务、字符界面和16位的大格局没有变化,因此它对于内存的管理也局限在640KB的范围内。
  DOS最初是为IBM-PC开发的操作系统,因此它对硬件平台的要求很低,即使对于DOS6.0这样的高版本DOS,在640KB内存、40MB硬盘、80286处理器的环境下也可正常运行,因此DOS系统既适合于高档微机使用,又适合于低档微机使用。
  常用的DOS有三种不同的品牌,它们是Microsoft公司的MS-DOS、IBM公司的PC-DOS以及Novell公司的DR DOS,这三种DOS都是兼容的,但仍有一些区别,三种DOS中使用最多的是MS-DOS。
  DOS系统一个最大的优势是它支持众多的通用软件,如各种语言处理程序、数据库管理系统、文字处理软件、电子表格。而且围绕DOS开发了很多应用软件系统,如财务、人事、统计、交通、医院等各种管理系统。鉴于这个原因,尽管DOS已经不能适应32位机的硬件系统,但是仍广泛流行,而且在未来的几年内也不会很快被淘汰。
  DOS系统目前已经推出个人用户的视野,在工业领域仍然占有一个重要的位置。
二、windows系统
  windows是Microsoft公司在1985年11月发布的第一代窗口式多任务系统,它使PC机开始进入了所谓的图形用户界面(GUI:Graphic User Interface)时代。在图形用户界面中,每一种应用软件(即由windows支持的软件)都用一个图标(Icon)表示,用户只需把鼠标移到某图标上,连续两次按下鼠标器的拾取键即可进入该软件,这种界面方式为用户提供了很大的方便,把计算机的使用提高到了一个新的阶段。
  windows1.X版是一个具有多窗口及多任务功能的版本,但由于当时的硬件平台为PC/XT,速度很慢,所以windows1.X版本并未十分流行。1987年底Microsoft公司又推出了MS-windows2.X 版,它具有窗口重叠功能,窗口大小也可以调整,并可把扩展内存和扩充内存作为磁盘高速缓存,从而提高了整台计算机的性能,此外它还提供了众多的应用程序:文本编辑Write、记事本Notepad、计算器Calculator、日历Calendar……等。随后在88年、89年又先后推出了MS-windows/286-V2.1和MS-windows/386 V2.1这两个版本。
  1990年,Microsoft公司推出了windows3.0,它的功能进一步加强,具有强大的内存管理,且提供了数量相当多的windows应用软件,因此成为386、486微机新的操作系统标准。随后,windows发表3.1版,而且推出了相应的中文版。3.1版较之3.0版增加了一些新的功能,受到了用户欢迎,是当时最流行的windows版本。
  1995年,Microsoft公司推出了windows95(也称为Chicago或windows4.0)。在此之前的windows都是由DOS引导的,也就是说它们还不是一个完全独立的系统,而windows95是一个完全独立的系统,并在很多方面作了进一步的改进,还集成了网络功能和即插即用(Plug and Play)功能,是一个全新的32位操作系统。
  1998年,Microsoft公司推出了windows95的改进版windows98,windows98的一个最大特点就是把微软的Internet浏览器技术整合到了windows95里面,使得访问Internet资源就像访问本地硬盘一样方便,从而更好地满足了人们越来越多的访问Internet资源的需要。 windows98是目前实际使用的主流操作系统。
  windows2000,windowsNT系统(NT是New Technology即新技术的缩写),windowsNT是真正的32位操作系统,与普通的windows系统不同,它主要面向商业用户,有服务器版和工作版之分,Microsoft公司在1999年将最新的工作站版本NT 5.0和普通的windows98统一为一个完整的操作系统,即windows 2000 Professional,这样,无论对商业用户还是普通个人用户,以后Microsoft公司就只有一个windows操作系统了。
  windows XP,是建立在windows NT系统核心之上,也是目前使用最多的,最易用的一个操作系统,windows xp 分成Windows XP Professional,Windows XP Home Edition,Windows XP 64-Bit Edition三个主要版本。Windows XP Professional 这个版本拥有XP的全部功能,是XP的全功能版,Windows XP Home Edition也称家庭版,其重点突出系统的娱乐性能,Windows XP 64-Bit Edition是XP系统的64位版本,由于新的Vista还没有上市,Microsoft公司临时推出的一个64位系统,因市场上硬件和软件的兼容性等没有推广,只是部分玩家使用,在去年的时候,Microsoft公司推出过一个windows se的简化版本,但是由于其功能实用性不大,普及不高。
  Microsoft公司目前正在加紧windows下一代系统的研发,代号Vista,Vista拥有众多激动人心功能,包括漂亮的3d效果,快速的搜索功能等等,因各种原因,Vista系统目前只有少量的测试版本,发布期一而再,再而三的延期,目前Microsoft公司在2007年发布Vista系统。
三、Linux系统
  Linux是当今电脑界一个耀眼的名字,它是目前全球最大的一个自由免费软件,其本身是一个功能可与Unix和windows相媲美的操作系统,具有完备的网络功能。
  Linux最初由芬兰人Linus Torvalds开发,其源程序在Internet网上公开发布,由此,引发了全球电脑爱好者的开发热情,许多人下载该源程序并按自己的意愿完善某一方面的功能,再发回网上,Linux也因此被雕琢成为一个全球最稳定的、最有发展前景的操作系统。曾经有人戏言:要是比尔·盖茨把windows的源代码也作同样处理,现在windows中残留的许多BUG(错误)早已不复存在,因为全世界的电脑爱好者都会成为windows的义务测试和编程人员。
  目前最流行的Linux系统的版本是Fedora Core、Redhat Linux、Mandriva/Mandrake、SuSE Linux、debian、Ubuntu、Gentoo、Slackware、红旗Linux等,其中Redhat Linux俗称小红帽系统是Linux系统中推广最广泛的版本,红旗Linux是国内自行开发的服务器操作系统。包括Yahoo搜索、以及国内大部分Linux服务器都是使用Redhat Linux的系统。
  Linux操作系统具有如下特点:
  1.它是一个免费软件,您可以自由安装并任意修改软件的源代码。
  2.Linux操作系统与主流的UNIX系统兼容,这使得它一出现就有了一个很好的用户群。
  3.支持几乎所有的硬件平台,包括Intel系列,680x0系列,Alpha系列,MIPS系列等,并广泛支持各种周边设备。
  目前,Linux正在全球各地迅速普及推广,各大软件商如Oracle、Sybase、Novell、IBM等均发布了Linux版的产品,许多硬件厂商也推出了预装Linux操作系统的服务器产品,当然,PC用户也可使用Linux。另外,还有不少公司或组织有计划地收集有关Linux的软件,组合成一套完整的Linux发行版本上市,比较著名的有RedHat(即红帽子)、Slackware等公司。虽然,现在说Linux会取代Unix和windows还为时过早,但一个稳定性、灵活性和易用性都非常好的软件,肯定会得到越来越广泛的应用。
四、Unix系统
  Unix系统是1969年问世的,最初是在中小型计算机上运用。最早移植到80286微机上的Unix系统,称为Xenix。Xenix系统的特点是短小精干,系统开销小,运行速度快。经过多年的发展,Xenix已成为十分成熟的系统,最新版本的Xenix是SCO Unix和SCO CDT。当前的主要版本是Unix 3.2 V4.2以及ODT 3.0。
  Unix是一个多用户系统,一般要求配有8M以上的内存和较大容量的硬盘。Apple的Mac系统也是建立在Uninx系统的基础之上,Unix系统是迄今为止最安全的、最稳定的系统!
  Unix系统目前主要有IBM,HP,SUN,MAC等几个版本,其中出货量最大的当属MAC系统,MAC在工业设计领域目前仍然占据着领导者的地位,Windows系统的GUI开发均来自MAC,包括我们现在使用的pc系统模型等等很多设计都是仿造Apple。Mac OS X Tiger 10.4版本开始支持x86架构,据Apple官方表示,Mac OS X Tiger 10.5将要发布x86版本,操作系统之争将拉开新的序幕。
  我国自行开发的麒麟操作系统也是基于Unix基础之上
五、OS/2系统
  1987年IBM公司在激烈的市场竞争中推出了PS/2(Personal System/2)个人电脑。PS/2系列电脑大幅度突破了现行PC机的体系,采用了与其它总线互不兼容的微通道总线MCA,并且IBM自行设计了该系统约80%的零部件,以防止其它公司仿制。
  OS/2系统正是为PS/2系列机开发的一个新型多任务操作系统。OS/2克服了DOS系统640KB主存的限制,具有多任务功能。OS/2也采用图形界面,它本身是一个32位系统,不仅可以处理32位OS/2系统的应用软件,也可以运行16位DOS和windows软件。
  OS/2系统通常要求在4MB内存和100MB硬盘或更高的硬件环境下运行。
  IBM公司在去年宣布OS/2系统在2006年12月31日停止销售,其系统平台过渡到Linux系统,os/2系统在经历了20年的风风雨雨,将要寿终正寝。


上一篇:99伴奏盒

下一篇:常见皮肤病症状