一个外置看门狗的反复复位问题的解决
stm32关于复位类型的判断及软件复位bug
STM32 关于复位类型的判断及软件复位bugSTM 32在复位时,有严重BUG:1. 上电复位和外置的看门狗芯片重启复位是无法区分开来的!RCC_FLAG_BORRST, RCC_FLAG_PINRST, RCC_FLAG_LPWRRST三个都复位了!2. 这样当要在上电复位初始化关键代码时,这些代码看门狗复位则不用重启,这个关键代码会导致应用业务的异常!若两个中断分不开,导致系统异常看门狗复位时影响业务!/*RCC_FLAG_BORRST: POR/PDR or BOR reset//Power-on/power-down reset (POR/PDR reset) or brownout (BOR) resetRCC_FLAG_PINRST: Pin reset //NRST pin可能为看门狗重启RCC_FLAG_PORRST: POR/PDRresetRCC_FLAG_SFTRST: SoftwareresetRCC_FLAG_IWDGRST: Independent Watchdog resetRCC_FLAG_WWDGRST: Window Watchdog resetRCC_FLAG_LPWRRST: Low Powerreset*//********************************************************** ******************************* 函数名: SysRstSrcRecord 参数:无返回值: 系统重启次数记录描述:记录系统重启的方式记录作者:李少雄版本:V1.0 2012年11月12日****************************************************************** ************************/u8 SysRstSrcRecord(u8*pstRest){ //u8 uchInfoChange=0; pstRest[0] = RCC_GetFlagStatus(RCC_FLAG_BORRST);pstRest[1] = RCC_GetFlagStatus(RCC_FLAG_PINRST); pstRest[2] = RCC_GetFlagStatus(RCC_FLAG_PORRST); pstRest[3] = RCC_GetFlagStatus(RCC_FLAG_SFTRST); pstRest[4] = RCC_GetFlagStatus(RCC_FLAG_IWDGRST); pstRest[5] =RCC_GetFlagStatus(RCC_FLAG_WWDGRST);pstRest[6] =RCC_GetFlagStatus(RCC_FLAG_LPWRRST);}。
单片机常见错误例程分析
单片机常见错误例程分析单片机是一种集成电路,对于初学者来说,由于经验不足,常会遇到一些错误。
下面我们来分析一些单片机常见的错误例程,以及解决方法。
一、看门狗定时溢出引起的复位单片机中通常都有看门狗(Watchdog)定时器,用于监控系统运行。
如果在程序中没有及时喂狗,导致看门狗定时器溢出,会引起复位。
解决方法:1.在主程序中设定喂狗的指令,以避免看门狗定时溢出。
2.在适当的位置设置看门狗使能的指令,保证看门狗定时器能正常工作。
3.尽量避免在中断服务程序中关闭看门狗定时器,以免因为中断响应过慢导致看门狗复位。
二、中断服务程序执行时间过长当中断服务程序执行时间过长时,会导致主程序无法继续正常运行。
这种情况下,单片机很可能无法响应其他外部事件。
解决方法:1.在中断服务程序中尽量减少对资源的占用,避免复杂的运算和长时间的延时操作。
2.将必要的数据交给主程序处理,减少中断服务程序的工作量。
3.合理设置中断优先级,确保重要的中断能及时响应。
三、电源噪声导致系统不稳定单片机对电源的稳定性要求较高,如果电源存在噪声,则可能导致系统不稳定,甚至崩溃。
解决方法:1.在供电线路上添加合适的滤波电容,以减小电源噪声。
2.使用稳压电源,保证电源输出的稳定性。
3.合理布线,避免电源和信号线的干扰。
四、编程错误编程错误是单片机常见的错误之一、例如,写入错误的寄存器地址、错误的命令、错误的数据等。
解决方法:1.熟悉单片机的手册,了解相关寄存器、命令和数据的使用方法。
2.仔细检查编程代码,避免拼写错误和语法错误。
3.使用调试工具,例如仿真器、逻辑分析仪等,进行实时调试。
五、外围设备连接错误单片机通常需要与外围设备进行通信,如果连接错误,可能导致通信失败或者数据传输错误。
解决方法:1.确保电路连接正确,检查信号线、电源线等的连接是否松动、接触不良。
2.根据外围设备的手册,仔细查阅相关接口的使用说明书,确保连接方式正确。
3.使用示波器、逻辑分析仪等工具,对通信信号进行监测和分析,找出错误原因。
看门狗芯片原理
看门狗芯片原理
看门狗芯片是一种用于监控系统运行状态的硬件设备。
它通过定时检测系统的运行情况,以确保系统在出现故障或崩溃时能够自动重启或采取其他应急措施,从而提高系统的稳定性和可靠性。
看门狗芯片的工作原理如下:
1. 看门狗计时器:看门狗芯片内置了一个计时器,其作用是定时检测系统的运行情况。
通常,看门狗计时器的定时周期较短,例如几十毫秒或几秒钟。
2. 系统运行状态监测:看门狗芯片会周期性地向系统发送一个重启信号,例如通过触发系统复位信号。
只要系统正常运行,系统会在短时间内清除重启信号,以示系统正常。
但如果系统发生故障或崩溃,就无法及时响应和清除重启信号。
3. 看门狗定时器复位:当看门狗芯片向系统发送重启信号后,在一个设定的时间内,看门狗芯片会不断检测系统是否给出相应的回应。
如果系统未能及时回应或清除该信号,看门狗芯片会认为系统出现故障,并产生一个复位信号。
4. 系统复位:当看门狗芯片检测到系统出现故障时,它会向系统发送复位信号,强制系统重新启动。
这样,系统就可以在发生故障时快速恢复运行,从而减少故障造成的影响。
总之,看门狗芯片通过定时检测系统运行状态,并根据系统的
响应情况采取相应的动作,确保系统能够及时发现并处理故障,从而提高系统的可用性和可靠性。
看门狗 知识总结
在该电路中SPC3的复位电路与89C52的复位电路应相互独立,这样在单片机复位时SPC3仍能够正常通信。
由MAX705组成的看门狗复位电路可以保证单片机系统在程序“跑飞”时能够可靠复位,MAX705的复位脉冲输出有正脉冲和负脉冲两种方式,当复位脉冲为负脉冲时,需要外接反相器后再连接到单片机的复位端,具体连接如图4。
图4 看门狗电路在正常情况下,P1.x引脚不超过1.6s就向WDI端发出“喂狗”信号,程序陷入死循环后,“喂狗”信号无法发出,当死循环运行时间超过1.6s时,MAX705的看门狗输出将变低并触发,复位信号从端输出。
1看门狗看门狗实际上是一个计数器,它需要在一定的看门狗延时周期内被清零,如果没有清零动作,看门狗电路将产生一个复位信号以使系统重新启动或建立一个非屏蔽中断(NMI)并执行故障恢复子程序。
大多数看门狗电路是沿触发,这样,无论是上升沿还是下降沿触发看门狗的输入端(WDI)通常都能够清计数器。
WDI引脚一般连接在处理器的一个I/0口,这条口线可由软件触发。
图1所示是微处理器通过在WDl脚发送脉冲清除看门狗定时器以防止复位的连接方式,实际上,清看门狗计数器的命令必须在主程序内。
如果看门狗没有被清零,复位后软件将从地址为0000(启动程序)的子程序处开始运行。
计算主程序的运行时间往往很困难,因为在此期间可能需要多次调用子程序,这与系统输入有关。
因此,设计人员常常选择看门狗延时周期远远高于测试到的或计算出的循环时间。
图2所示是正常工作情况下(看门狗在延时周期内被请零)的看门狗信号和复位信号。
图3所示为看门狗计数器溢出时引发一次复位的时序示意图。
工业标准的看门狗电路延时周期一般在l00ms~2s范围内,当然,也有些可调节或定制的看门狗电路能够覆盖更宽的延时范围(30ms至几分钟)。
如果主程序的执行时间对于看门狗电路而言过长,设计人员可以在主程序的不同部位多次执行看门狗触发命令,也可以选用看门狗延时周期更长的器件。
1.上电复位电路,2.手动复位电路,3.看门狗复位电路的工作原理 -回复
1.上电复位电路,2.手动复位电路,3.看门狗复位电路的工作原理-回复问题,并对每个主题进行详细的解释和说明。
1. 上电复位电路的工作原理:上电复位电路是一种电子电路,用于在电路供电时将所有的逻辑和电路状态重置为初始状态。
其主要工作原理如下:首先,当电路供电时,电源电压通过一个电压检测电路进行监测。
该电路通常由一个比较器和一个参考电压源组成。
当电源电压高于预定的阈值电压时,比较器输出高电平,表示电路供电正常;当电源电压低于阈值电压时,比较器输出低电平,表示需要进行复位。
接下来,复位信号由一个可编程延时器产生。
该延时器通常由一个RC电路和一个比较器组成。
当复位信号低电平时,RC电路开始充电,直到其电压高于阈值电压,比较器输出高电平,表示复位信号结束。
通过调整RC 电路的时间常数,可以实现不同的复位延时时间。
最后,将复位信号传递给电路中各个逻辑和存储元件,使其状态恢复到初始状态。
通常,复位信号直接连接到逻辑电路中的复位引脚。
在接收到复位信号后,逻辑电路内部的电源投入复位模式,使其状态清零。
2. 手动复位电路的工作原理:手动复位电路是一种通过人工操作来实现复位的电子电路。
其主要工作原理如下:首先,手动复位电路的核心部分是一个按钮或开关,通常被称为复位按钮。
当人工操作按钮时,复位按钮闭合,电路闭合,导通电路。
接下来,当电路闭合时,复位信号通过连接电路传递到电路中的逻辑和存储元件。
与上电复位电路类似,复位信号将使逻辑电路进入复位模式,将其状态恢复到初始状态。
最后,当按钮松开时,复位按钮断开,电路断开。
此时,复位信号停止发送,逻辑电路恢复正常工作状态。
手动复位电路通常用于故障排除或紧急情况下,通过人工操作将电路复位到初始状态。
3. 看门狗复位电路的工作原理:看门狗复位电路是一种通过定时器监测电路操作状态并进行复位的电子电路。
其主要工作原理如下:首先,看门狗复位电路的核心部分是一个看门狗定时器。
该定时器通常由一个RC电路和一个比较器组成。
解决无线路由器频繁重置的问题
无线路由器是我们在生活和工作中常见的一种设备,它能让我们的电脑、手机等无线设备连接到互联网,方便我们的上网和办公。
然而,有时我们会遇到一个令人头疼的问题,那就是无线路由器频繁重置。
这个问题不仅会影响我们的网络体验,还可能导致数据丢失。
那么,我们应该如何解决这个问题呢?1. 定位问题首先,当我们遇到无线路由器频繁重置的问题时,我们应该先查找原因。
频繁重置的原因可能是多方面的,可以从硬件和软件两个层面来考虑。
在硬件层面,我们可以检查电源供应是否稳定。
如果电源供应不稳定,无线路由器可能会频繁重启。
此外,检查网络线路是否连接良好也是很重要的。
不稳定的网络连接可能导致路由器重置。
在软件层面,我们可以检查路由器固件是否需要更新。
路由器固件是控制路由器运行的软件,如果固件过旧,可能会导致路由器出现各种问题,包括频繁重置。
此外,我们还可以检查路由器设置中是否有冲突或错误的配置,例如IP地址冲突等。
2. 解决方案找到了问题的根源后,接下来就是解决方案。
下面是一些常见的解决方案,可以根据具体情况进行尝试。
第一,确保电源供应稳定。
可以尝试更换电源适配器或者使用电源稳压器等设备来改善电源供应问题。
第二,检查网络线路。
确保网络线路连接良好,没有松动或损坏的情况。
第三,及时更新路由器固件。
可以在路由器制造商的官网上查找最新的固件版本,并按照说明进行更新。
第四,重新配置路由器设置。
可以尝试恢复出厂设置,然后重新进行设置。
在重新配置时,需要确保没有冲突的设置,例如重复的IP地址等。
第五,排除其他设备干扰。
有时,其他无线设备或者家电设备可能对无线路由器信号产生干扰,导致频繁重置。
可以尝试关闭其他设备,或者调整无线信号的频道。
3. 预防措施在解决了无线路由器频繁重置的问题后,我们也应该采取一些预防措施,以避免类似问题再次发生。
首先,定期检查设备。
定期检查无线路由器的硬件和软件状态,确保设备运行正常。
如果发现有损坏或者过旧的部件,及时更换。
看门狗复位的应用技巧
看门狗复位的应用技巧
说起看门狗这个名字还是蛮有趣的,它的作用就是在主人走神的时候咬他一口,把他咬醒。
实际点来说,就是当MCU运行过程中,在某处进入了死循环,或者受到干扰造成PC指针指向了无程序区,都会导致程序没反应,按键失效,屏幕内容不变等问题。
这时如果正确使用了看门狗,就会让PC
指针复位,从头开始执行程序。
看门狗复位的应用技巧包括三个方面:
一: 判断是否需要使用。
如果要使用看门狗的话,需要做一些寄存器的配置,在程序区的某些地方也要加入喂狗指令来防止看门狗复位,有一定的工作量,所以用与不用需要考虑一下。
能不使用看门狗的场合,要求是系统即使死机也问题不大,等待人过来断电复位即可的情况。
但是这种情况已经很少了,所以绝大多数情况下看门狗都要加上。
比如有温控功能的电热水器,假如电加热已经启动,但是系统死机了,温控失效,电加热也不会关闭,这时水温就会一直升高,直到水被蒸干,然后电加热损坏或引发火灾,或者人被开水烫伤。
这时有看门狗复位,系统就会恢复正常,检测到温度够了,就会关闭电加热的。
二、保证看门狗工作正常。
看门狗除了进行寄存器配置之外,喂狗函数的位置也很重要,没处理好就会发生不该复位时复位了,或改复位的时候没有复位,可能的原因是在可能出现的死循环里喂狗了。
单片机复位看门狗电路
705系列复位电路#概述GC705/706/707/708/813L是一组CMOS微处理器监控电路,可用来监控微处理器系统供电异常、电池故障和工作状态。
和采用分立元件及多片IC组合成电路相比,明显减小了系统电路的复杂性和元器件的数量,并提高了系统的可靠性和精度。
GC705/706/813L具备以下四项基本功能:1)电源开机,关机及电源供电不足时给出复位输出。
2)内含独立的看门狗电路输出。
如看门狗电路输入在1.6秒内未得到翻转信号,看门狗电路输出端将变成低电平。
3)内含门限1.25V的检测器,用于掉电报警,电池欠电监测和监测加错电源的状况(以+5V为准)。
4)手动复位时,给出确定脉宽的负向复位脉冲GC707/708和GC705/706基本功能一致,区别只在于GC705/706芯片中的第8脚正脉冲的复位(RESET)输出取消了,换成了看门狗定时器,原第6脚空脚被用做看门狗电路的输入端。
GC813L则除了第7脚输出正脉冲的RESET外,其它功能和GC705/706完全一样。
这几种电路的管脚功能定义和差异详见管脚定义图和管脚说明附表。
#应用范围计算机,微处理器和微控制器系统;嵌入式控制器系统;智能仪器仪表;通信系统;工业自动化系统;电池供电手持设备等等。
# 电气参数 除非特殊说明,Vcc =4.75V~5.5V (GC705/GC707/GC813), Vcc=4.5V~5.5V (GC706/GC708),T A = T MIN to T MAX参数符号 测试条件最小值典型值 最大值 单位GC705、706、707、708 1.0 5.5电源电压范围 Vcc GC813 1.1 5.5VGC705、706、813 150 350电源电流IccGC707、70850 350uAGC705、707、8134.50 4.65 4.75 GC706、708 4.25 4.40 4.50 复位门限 V RT GC706T 3.00 3.08 3.15 V复位门限迴差40 mV复位脉冲宽度 t RS 140 200 280 ms I SOURSE =800uAVCC-1.5 I SINK = 3.2mA 0.4GC705~708,VCC=1V ,I SINK =50uA 0.3GC707\708,I SOURCE =800uAVCC-1.5GC707\708,I SINK = 1.2mA 0.4 复位输出电压GC813,I SOURCE =4uA,V CC =1.1V 0.8V看门狗计时长度 t WD GC705\706\813 1.00 1.60 2.25 秒 WDI 脉冲宽度 t WPVIL =0.4V ,VIH =(VCC)(0.8) 50 ns 下限 0.8WDI 输入阈值 上限 GC705\706\813 V CC =5V3.5 VGC705\706\813,WDI =VCC 50 150WDI 输入电流 GC705\706\813,WDI =0V -150 -50uAGC705\706\813,I SOURCE =800uA VCC-1.5WDI 输出电压 GC705\706\813,I SINK =1.2mA 0.4VMR 上拉电流MR =0V100 250 600 uA MR 脉冲宽度 t MR150 ns 下限 0.8MR 输入阈值 上限2.0VMR 到RESET 的延迟 t MD250 ns PFI 输入阈值 VCC =5V V PFI 输入电流-25 25 nAI SOURCE =800uA VCC-1.5PFO 输出电压I SINK =3.2mA0.4V#极限参数源跌落),RESET引脚就会变低。
复位信号的产生系统及方法
复位信号的产生系统及方法引言:在电子设备中,复位信号的产生是非常重要的,它可以将设备恢复到初始状态,以确保设备的正常运行。
本文将介绍复位信号的产生系统及方法,包括硬件和软件两个方面。
一、硬件系统复位信号的产生通常依赖于硬件电路。
下面将介绍几种常见的复位信号产生电路。
1. 电源复位电路:电源复位电路是最常见的一种复位信号产生电路。
它通过监测设备的电源状态来产生复位信号。
当电源电压低于一定阈值时,复位电路会将设备复位。
这种电路简单可靠,广泛应用于各种电子设备中。
2. 看门狗复位电路:看门狗复位电路是另一种常见的复位信号产生电路。
它通过定时器电路和计数器电路来产生复位信号。
设备在运行过程中,定时器会不断计数,当计数器超过设定的阈值时,复位电路会将设备复位。
这种电路可以解决设备出现死机或软件错误的问题,提高设备的可靠性。
3. 外部复位电路:外部复位电路是一种通过外部信号来产生复位信号的电路。
它可以根据外部的触发信号来产生复位信号,比如按下复位按钮、接收到外部的中断信号等。
这种电路适用于需要外部干预的特殊场景。
二、软件系统除了硬件电路外,复位信号的产生还可以依靠软件来实现。
下面将介绍几种常见的软件复位信号产生方法。
1. 软件复位指令:大部分微处理器和微控制器都提供了软件复位指令。
通过执行软件复位指令,可以将设备复位。
这种方法灵活方便,可以在程序中任意位置触发复位信号。
2. 软件看门狗定时器:软件看门狗定时器是一种通过软件实现的复位信号产生方法。
在程序中设置一个定时器,当定时器超过设定的阈值时,触发复位信号。
这种方法可以解决软件死循环或程序错误导致的设备停止响应的问题。
3. 软件中断复位:软件中断复位是一种通过软件中断来产生复位信号的方法。
当设备运行过程中发生错误或异常情况时,通过触发软件中断来产生复位信号,将设备复位。
这种方法可以有效地处理设备运行过程中的各种异常情况。
复位信号的产生可以通过硬件电路和软件方法来实现。
STM32复位重启解决思路_By蒋
STM32在发生如下事件时,会产生系统复位:
1. NRST管脚上的低电平(外部复位)
——通过示波器查看监测该引脚,如果确实是由于该引脚电平拉低而复位,请检查复位电路。
2. 窗口看门狗计数终止(WWDG复位)
3. 独立看门狗计数终止(IWDG复位)
——程序中如果有使用看门狗,并且程序在运行中无故复位重启,则很有可能是程序跑飞了,导致没有及时喂狗而复位重启。
如果这种情况,建议先关掉看门狗,用JLINK做在线硬件调试,定位程序跑飞的代码处。
然后找程序BUG。
4. 软件复位(SW复位)
5. 低功耗管理复位
——软件复位和低功耗管理复位问题目前还没遇到。
软件复位通过设置SYSRESETREQ位为1,可实现软件复位。
在以下两种情况下可产生低功耗管理复位:
1. 在进入待机模式时产生低功耗管理复位:
通过将用户选择字节中的nRST_STDBY位置1将使能该复位。
这时,即使
执行了进入待机模式的过程,系统将被复位而不是进入待机模式。
2. 在进入停止模式时产生低功耗管理复位:
通过将用户选择字节中的nRST_STOP位置1将使能该复位。
这时,即使
执行了进入停机模式的过程,系统将被复位而不是进入停机模式。
看门狗复位电路的基本原理
看门狗复位电路的基本原理门狗复位电路(Watchdog Reset Circuit)是一种用于检测和处理系统故障的重要电路。
它通常被用于嵌入式系统中,以确保系统正常工作,防止因软件故障或硬件冲突导致系统崩溃。
门狗复位电路的基本原理可以概括为以下几个方面:1. 监测系统状态:门狗复位电路会周期性地对系统进行状态检测,以确保系统正常工作。
这些检测可以包括对系统时钟、引脚状态以及其他关键信号的监测。
2. 设定复位计时器:门狗复位电路通常包含一个可调的计时器,用于确定系统的复位时间。
通过设定计时器的时间阈值,可以确保当系统在一定时间内没有出现故障时,门狗复位电路将保持系统正常运行。
如果系统在设定的时间内未能喂狗(故障),门狗复位电路会触发系统复位操作。
3. 喂狗操作:为了防止门狗复位电路触发系统复位,系统软件需要定期执行“喂狗”操作。
这个操作通常是通过写入一个特定的数值或状态到门狗复位电路中,以重置复位计时器。
如果系统在设定的时间内未执行喂狗操作,复位计时器将超时并触发系统复位。
4. 触发复位:当门狗复位电路检测到系统故障(如未喂狗操作),复位计时器超时之后,将触发复位操作。
这个操作会重置系统并恢复到出厂设置或预定义的初始状态,以确保系统能够重新启动和正常工作。
在实际应用中,门狗复位电路通常由一个定时器芯片或专用集成电路实现。
它可以直接与系统的主控芯片连接,通过复位引脚或其他输入引脚进行通信和控制。
门狗复位电路的内部逻辑会根据设定的参数和系统状态进行计时、监测和触发复位操作。
门狗复位电路的应用可以提高系统的可靠性和稳定性。
它可以有效地检测和处理软件故障、死锁、死循环等问题,并及时进行系统复位。
通过定期喂狗操作,系统软件可以确保门狗复位电路不会误判正常工作状态,从而避免不必要的复位操作。
总之,门狗复位电路是一种重要的电路设计,在嵌入式系统中具有广泛的应用。
它通过周期性的状态监测、设定的计时器和复位操作,保证了系统的可靠性和稳定性。
硬件看门狗原理
硬件看门狗原理
硬件看门狗(Hardware Watchdog)是一种用于定时监控系统
运行状态和处理系统故障的硬件设备。
其原理基于一个计时器,该计时器在系统正常运行时持续进行计时,当发生系统故障或死锁情况时,计时器会停止计时并向系统发送复位信号,以使系统重新启动。
具体原理如下:
1. 硬件看门狗通常由一个定时器和一个复位电路组成。
定时器通常是一个计数器,使用一个晶体振荡器作为时钟源,用于精确计时。
2. 在系统正常运行时,软件需要在一个预定的时间间隔内重置看门狗,使其计数被清零,否则看门狗会认为系统出现故障。
3. 如果系统出现故障或软件死锁,导致软件无法及时重置看门狗,看门狗计时器将继续计时并递减计数值。
4. 当看门狗计数值达到或超过预设的阈值时,看门狗将认为系统已崩溃或陷入死锁状态,它会触发复位电路,向系统发送复位信号。
5. 复位信号将导致整个系统重新启动,从而恢复正常运行。
硬件看门狗的存在可以有效防止软件在运行过程中出现异常情况而无法自行恢复的情况,提高系统的稳定性和可靠性。
它常被应用在嵌入式系统、服务器等对系统可靠性要求较高的领域中。
Kinetis Reset管脚与外部看门狗芯片接法
Kinetis Reset管脚与外部看门狗/复位芯片接法在嵌入式系统硬件电路设计的时候,为了保证系统的可靠性很多人会为MCU最小系统添加一个外部复位芯片或者硬件看门狗,他们都有一个共同点,就是与MCU的接口是Reset 复位管脚,他们的作用是保证系统可靠复位、监控系统供电电压和防死锁等功能。
这个是常识问题,没有什么可讲的,但是我们在用Kinetis设计的时候需要注意一个问题,因为飞思卡尔的芯片有一个传统,那就是他的Reset管脚在上电的时候会有输出功能的属性(一般来讲,我们都会认为Reset脚只是一个输入功能),他在PowerOn期间会有一个很短暂的低脉冲输出然后才会把这个脚抬高,如下图:这种功能的其作用是用来同步外部电路与其一块复位的(不太清楚是否还有其他作用),但是如果我们用不着这个功能而是需要在外部加复位芯片的话则需要考虑一个问题(目前大多数复位芯片的输出管脚是Push-Pull(即推挽输出),这种芯片国内用户用的比较多,价格比较便宜),当给系统上电时,复位芯片的输出由于是推挽的驱动能力较强,其上电速率比较快(斜率比较陡),很快就可以达到高电平,而MCU在PowerOn时会有一个低脉冲输出,这就会有一个风险,如果复位芯片输出先到高电平而此时MCU Reset脚输出个低电平,就会有一个较大的灌电流流向MCU从而有可能损坏MCU Reset管脚。
问题出现了,那怎么解决?(出现问题不可怕,可怕的是有问题却发现不了)呵呵,实际上解决起来也比较简单,下面给出三种解决办法:1. 直接将复位芯片换成OpenDrain输出的,这种是最简单的方法;2. 如果仍然想使用推挽输出的复位芯片,则只需要在复位芯片输出与MCU的Reset 管脚之间串一个限流电阻(10k到100k)即可,如下图:3. 最后一种也比较简单个二极管,借助其单向导电的较简单,与第二种类似,在复位芯片输出与MCU Res 导电的特性来保护MCU ,如下图:U Reset 脚之间串一。
机车综合无线通信系统(CIR)的常见故障及对策
机车综合无线通信系统(CIR)的常见故障及对策发表时间:2018-10-01T18:04:39.000Z 来源:《基层建设》2018年第27期作者:漆瑞[导读] 摘要:机车综合无线通信设备(CIR)是当前一种较新型的无线列调通信系统设备。
中国铁路呼和浩特局集团公司呼和通信段内蒙古呼和浩特 010000 摘要:机车综合无线通信设备(CIR)是当前一种较新型的无线列调通信系统设备。
伴随铁路建设的日渐增多,铁路通信网规模的日渐扩充,CIR系统在路网建设中也得到了广泛应用,且发挥着越来越重要的作用。
基于此,在接下来的文章中,将围绕机车综合无线通信系统(CIR)的常见故障及对策方面展开详细分析,希望能够给相关人士提供重要的参考价值。
关键词:机车综合无线通信系统;故障;对策引言:机车综合通信设备在铁路通信领域已得到应用,是一种能够替代现有铁路通信系统中车载台部分的通信设备。
为了更好的将其利用,文章主要对机车综合无线通信系统(CIR)的常见故障及对策进行全面分析。
一、CIR内容简析CIR是基于无线列调、GSM-R、800MHz列车防护报警等系统的机车终端设备,由主机和操作显示终端(MMI)、送(受)话器、扬声器、打印机、天线、合路器、馈线、缆线,机车数据采集编码器等附属设备组成。
主机包括机柜、A子架、B子架。
主控及接口单元由CPU处理器、音频电路、控制电路组成。
二、机车综合无线通信系统(CIR)的常见故障及对策(一)故障多发部件首先,手柄(送受话器)。
手柄实为一个有着较高使用频率的部件,因而易出故障。
其主要故障类型有800MHz常发、800MHz无发射、无送话、无受话等。
如果出现上述故障情况,需进行手柄的更换。
另外还有操作终端MMI。
常见故障有:一端无法进主控;受话声音小,或无声音,无铃声;显示花屏、黑屏与异常等。
如果出现此类故障情况,可能是由操作显示终端(MMI)所引起,对此,首先检查与MMI连接的线路有无松动与损坏,如果有,应及时更换,若无,则可能是MMI故障,可及时更换。
一个外置看门狗的反复复位问题的解决
一个外置看门狗的不断复位问题的解决最近,研发产品运行中的遇到一个异常,表现为:上电后反复重启(时间间隔大概7秒),不能正常启动,断开外置看门狗复位信号后就正常了。
看门狗部分图纸如下:启动过程如下:初始化cpu及部分硬件-》启动ucos-》创建2个任务,1个可以复位看门狗,1个完成系统的初始化。
因为是3.3V系统,使用的外置看门狗型号为SP706TE,特征如下:经过仔细测试,cpu是输出的WDI信号是正常的,250ms间隔的脉冲,没有问题。
测量SP706的供电等,也都是正常的。
但是WDO上每隔6.18s会有一个20uS的低电平脉冲。
经测试,在C32上并一个47uF的电容,效果会好一些。
由此,怀疑是3.3V上的干扰在某个瞬时会低于3.08V的RESET阀值。
将SP706T改为SP706RE后,问题解决;总结:1)外置看门狗检测电压VCC,灵敏度很高。
如果vcc上纹波大,建议使用低阀值的芯片,或者使用PFI功能来检测电压,当然也可以采用更优质的电源方案;2)产品上电后,尽早启动看门狗,系统的可靠性会高一些,可以避免系统启动过程中发生的异常;3)喂狗避免放到中断中,也尽量不要放到优先级高的任务中;20140909网友allen_zhan提到电源可靠性的问题,又做了3.3V的纹波测试,如下:可见3.3V的电压跌落有700mV之高。
原因是以下电路:系统启动后,延时打开通讯电源(时间延迟和上文提到的6-7s一致),这样可以降低启动冲击电流,避免供电电源保护。
在PWR输入为低电平时,F0505D工作,包括前面的C33充电,造成5V的电源跌落,同时3.3V也收到了影响。
将C33和C47由10uF改为1uF后,电源跌落下降到370mV。
重新将看门狗改为SP706SE后,也可以正常启动了。
看门狗指令专讲
看门狗复位指令WDR(Watch Dog Reset)无操作数,看门狗复位指令又称看门狗,在S7-200CPU程序系统中允许看门狗定时器被重新触发(复位),这样可以增加此扫描所允许的时间。
如果强烈的外部干扰使PLC偏离正常的程序执行路线.看门狗定时器不再被复位,定时时间到时,PLC将停止运行,看门狗定时器定时时间的默认值为500ms。
当PLC的特殊I/O模块和通信模块的个数较多时进入RUN模式时对这些模块的缓冲存储器的初始化时间较长,可能导致看门狗定时器动作。
带数字量输出的扩展模块也存一个监控定时器,每次使用看门狗复位指令,应该对每个扩展模块的某一个输出字节使用一个立即写指令(BIW)来复位每个模块的看门狗。
如果FOR-NfEXT循环程序的执行时间过长,可能超过监控定时器的定时时间,可以将WDR指令插入到循环程序中,而且在终止本次扫描之前,下列操作过程将被禁止。
通信(R由端口方式除外),I/O更新(立即I/O除外),强制更新。
SM位更新(SM0,SM5〜SM29不能被更新),运行时间诊断,由于扫描时间会超过25s, 10ms和100ms定时器将不会正确累计时间,在中断程序中的STOP指令,如果带数字输出的扩展模块没有被S7-200写,则此看门狗定时器将关断输出。
跳转指令JMP若在它对应的标号之后(即程序往回跳),可能因连续反复跳步使它们之间的程序被反复执行,使监控定时器动作。
为了避免出现这样的情况.可以在]MP 指令和对应的标号之间插入WDR指令。
使用WDR指令时要小心,因为如果用循环指令去阻止扫描完成或过度地延迟扫描完成的时间。
那么在终止本次扫描之前,下列操作过程将被禁止:•通信(自由端口方式除外)•I/O更新(立即I/O除外)。
•强制更新。
•SM位更新(SM0,SM5〜SM29不能被更新)。
•运行时间诊断。
•由于扫描时间超过25s,10ms和100ms定时器将不会正确累计时间。
•在中断程序中的STOP指令。
看门狗原理
看门狗原理
看门狗是一种常见的硬件设备,它通常被用于监控电子设备的运行状态,并在
设备出现故障或死机时进行重启。
看门狗原理是基于定时器和复位电路的工作原理,下面将详细介绍看门狗的工作原理及其应用。
看门狗的工作原理主要包括两部分,定时器和复位电路。
定时器用来监控设备
的运行状态,当设备正常运行时,定时器会不断重置;而当设备出现故障或死机时,定时器将停止重置。
复位电路则负责接收定时器的信号,当定时器停止重置时,复位电路将会触发设备的重启操作,从而使设备恢复正常运行状态。
在实际应用中,看门狗通常被用于嵌入式系统或一些对稳定性要求较高的设备中。
例如,智能家居系统、工业自动化设备、网络路由器等都可能会使用看门狗来确保设备的稳定运行。
当设备出现死机或故障时,看门狗能够及时检测到并进行重启,从而减少系统宕机的时间,提高设备的稳定性和可靠性。
除了硬件看门狗外,软件看门狗也是一种常见的应用方式。
软件看门狗通常是
通过在系统中运行的特定程序来实现的,它与硬件看门狗相似,同样能够监控设备的运行状态,并在需要时进行重启操作。
软件看门狗通常被用于一些对成本要求较高、对稳定性要求不是特别严格的系统中。
总的来说,看门狗原理是通过定时器和复位电路来监控设备的运行状态,并在
设备出现故障或死机时进行重启操作,从而保证设备的稳定性和可靠性。
无论是硬件看门狗还是软件看门狗,它们都在很大程度上提高了设备的稳定性,为各种电子设备的正常运行提供了保障。
WatchDog失效机理与对策研究
技术创新中文核心期刊《微计算机信息》(嵌入式与SOC)2006年第22卷第4-2期360元/年邮局订阅号:82-946《现场总线技术应用200例》PLDCPLDFPGA应用王淑青:博士讲师湖北省自然科学基金(2004ABA064)WatchDog失效机理与对策研究ResearchonfailuremechanismandcountermeasureofWatchDog(1.湖北工业大学;2.华中科技大学)王淑青1张子蓬2何涛1Wang,ShuqingZhang,ZipengHe,Tao摘要:在工业控制领域,程序的失效恢复问题是一重要而棘手的问题,一般采用方法是在程序正常运行必然要经过的地方安插WatchDog复位指令,当遇到程序死锁、跑飞等程序失效问题时,启动WatchDog,使程序恢复正常。
但WatchDog并非绝对安全,常常失去有效性,使系统瘫痪。
本文对WatchDog失效机理与对策做了一些探讨,并结合工程应用给出了几款有效的硬件WatchDog电路。
关键词:WatchDog;失效机理;对策;硬件电路中图分类号:TP334文献标识码:AAbstract:Inindustrycontroldomain,thequestionaboutprogramfailureandrecoveryisoneimportantandthornyquestion.ThegenerallymethodistoplaceWatchDogreplacementinstructioninsomenormalinevitablyprogramoperatingplaces.Whenprogramrunsindeadboltlockorrunaway,WatchDogstartstoworkandmakeprogramrestoretoworknormally.ButWatchDogisnotabso-lutelysafe,whichlosesfrequentlythevalidityandmakesthesystemparalysis.ThefailuremechanismandcountermeasuresaboutWatchDogarediscussedandsomeeffectiveWatchDoghardwarecircuitsaregiveninthepaper.Keywords:WatchDog;failuremechanism;countermeasure;hardwarecircuit文章编号:1008-0570(2006)04-2-0152-03引言WatchDog是一种用于监视CPU正常运行的电路,也称监督定时器,实际上是一个计数器,它需要在一定的定时周期内被复位,如果没有复位动作,看门狗电路的定时器将溢出并产生一个复位信号以使系统重新启动或产生一个非屏蔽中断信号(NMI),通过执行故障恢复子程序使程序恢复正常运行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一个外置看门狗的不断复位问题的解决
最近,研发产品运行中的遇到一个异常,表现为:
上电后反复重启(时间间隔大概7秒),不能正常启动,断开外置看门狗复位信号后就正常了。
看门狗部分图纸如下:
启动过程如下:初始化cpu及部分硬件-》启动ucos-》创建2个任务,1个可以复位看门狗,1个完成系统的初始化。
因为是3.3V系统,使用的外置看门狗型号为SP706TE,特征如下:
经过仔细测试,cpu是输出的WDI信号是正常的,250ms间隔的脉冲,没有问题。
测量SP706的供电等,也都是正常的。
但是WDO上每隔6.18s会有一个20uS的低电平脉冲。
经测试,在C32上并一个47uF的电容,效果会好一些。
由此,怀疑是3.3V上的干扰在某个瞬时会低于3.08V的RESET阀值。
将SP706T改为SP706RE后,问题解决;
总结:
1)外置看门狗检测电压VCC,灵敏度很高。
如果vcc上纹波大,建议使用低阀值的芯片,
或者使用PFI功能来检测电压,当然也可以采用更优质的电源方案;
2)产品上电后,尽早启动看门狗,系统的可靠性会高一些,可以避免系统启动过程中发生的异常;
3)喂狗避免放到中断中,也尽量不要放到优先级高的任务中;
20140909
网友allen_zhan提到电源可靠性的问题,又做了3.3V的纹波测试,如下:
可见3.3V的电压跌落有700mV之高。
原因是以下电路:
系统启动后,延时打开通讯电源(时间延迟和上文提到的6-7s一致),这样可以降低启动冲击电流,避免供电电源保护。
在PWR输入为低电平时,F0505D工作,包括前面的C33充电,造成5V的电源跌落,同时3.3V也收到了影响。
将C33和C47由10uF改为1uF后,电源跌落下降到370mV。
重新将看门狗改为SP706SE后,也可以正常启动了。