重置LMC555定时器延迟硬件来收集调试数据

大多数微处理器有一些形式的硬件监测器,当硬件在没有注意的情况下停止执行代码时,监测器可将微处理器及其周围的硬件重置到一个已知的状态。但在重置硬件之前,它可能有利于记录固定存储器(NVM)中的监测器溢出事件用于调试。

图1中的电路采用了两个LMC555定时器,为了保存有用的系统数据,它们延迟了硬件的重置。该电路中有微处理器专用的监测器溢出引脚——WDOVF,以及一个I/O引脚。

LMC555定时器设置成他们的单稳态或者最快捷的模式,在这种模式中,在触发脉冲输入引脚感应到一个负脉冲之前,定时器的输出都为低值。触发后,输出引脚在时间TH内变为高值,TH由一个单电阻和电容确定如下:

为了进行恰当的定时操作,在输出高值时期结束之间,触发输入必须再次变为高值。经过TH以后,输出端变为低值,且在另一个负脉冲出现在触发引脚以前都保持低值。定时器也有一个活动的低重置引脚,切断后,不管触发引脚的输入水平,该引脚都保持输出低值。它也为下一个时间周期重置了定时器的内部触发器。

第一个LMC555探测到来自微控制器的监测器溢出触发,提供一个延迟,这允许固件在重置之前记录各种系统参数。第二个LMC555允许固件阻止紧急硬件重置。它是通过使WDOVF_CLEAR信号在最少时间段保持低值来实现的,这一时间的长短是由第一个定时器集成电路用到的内部RC元件决定的。

图2表示的是两个独立的监测器溢出事件发生的时间。第一个事件表明重置脉冲被延迟,没有重置硬件,第二个事件表明在预定的时间延迟过后发出重置脉冲。图示时间是用来自图1的RC元件值和来自Atmel微控制器的监测器溢出脉冲计算的TH,第一个定时器的TH为:

同样,第二个定时器的TH为:

系列电容器C3,上升电阻器R3及二极管D1保证了第二个定时器的触发TRG_2在定时器的输出端OUT_1处发生高-低转变之时都将保持高值。上升电阻器在OUT_1进行高-低转变之后给系列电容器充电,直到达到电源电压。与上升电阻和系列电容相关的RC时间常数要小于第二定时器的输出高值的周期。二极管使得第二定时器的触发引脚的输入电压升为电源电压。

在该例子中,当发生监测器溢出事件时,设定微控制器发出一个相关的短的低活跃度的脉冲输入专门的引脚,产生一个内部中断。一旦发生该事件,代码跳至中断服务程序,运行代码中几个特定的行。这些包括清除中断标记,通过保持WDOVF_CLEAR I/O引脚来阻止紧急硬件重置,将调试数据保存到NVM,防止中断,以及重置监测器溢出定时器。

在这种情况下,硬件监测事件,连同其他由事件决定的信息,都存储在NVM中以便将来查看。当监测定时器停止一秒钟时,它会绕过中断服务程序,最终重置硬件。

 

   来源:维库开发网
微信扫描分享本文到朋友圈
扫码关注5G通信官方公众号,免费领取以下5G精品资料
  • 1、回复“YD5GAI”免费领取《中国移动:5G网络AI应用典型场景技术解决方案白皮书
  • 2、回复“5G6G”免费领取《5G_6G毫米波测试技术白皮书-2022_03-21
  • 3、回复“YD6G”免费领取《中国移动:6G至简无线接入网白皮书
  • 4、回复“LTBPS”免费领取《《中国联通5G终端白皮书》
  • 5、回复“ZGDX”免费领取《中国电信5GNTN技术白皮书
  • 6、回复“TXSB”免费领取《通信设备安装工程施工工艺图解
  • 7、回复“YDSL”免费领取《中国移动算力并网白皮书
  • 8、回复“5GX3”免费领取《R1623501-g605G的系统架构1
  • 本周热点本月热点

     

      最热通信招聘

      最新招聘信息

    最新技术文章

    最新论坛贴子