PIC16F87X系列单片机的复位功能设计得比较完善,根据引起单片机内部复位的条件和原因,可以将PIC单片机复位系统分为五个模块进行介绍:
1.上电复位
每次单片机加电时,上电复位电路都要对电源电压VDD的上升过程进行检测,当VDD值上升到规定值1.6~1.8V时,就产生一个有效的复位信号,需经过72ms加1024个时钟周期的延时,才会使单片机复位。
2.人工复位(单片机在执行程序期间)
无论是单片机在按预先设定的正常顺序运行程序,还是出现单片机进入不可预知的某一个死循环,都必须认为单片机在执行程序。单片机在执行程序期间,只要在人工复位端MCLR加入一个低电平信号,就会令其复位。
3.人工复位(单片机在睡眠期间)
单片机处在睡眠状态之下(时钟停振,单片机停止执行程序),只要在人工复位端MCLR加入一个低电平信号,就会令其复位。
4.看门狗复位
不论何种原因,只要没有对看门狗定时器WDT周期性清0,WDT就会出现超时溢出,也就会引发单片机复位。依据单片机在看门狗超时溢出之前所处的状态是睡眠还是执行程序,又可以将看门狗超时溢出分为两种情况。
一种情况只有在单片机执行程序期间,看门狗发生超时溢出,才会引发单片机的复位;而另一种情况对于PIC16F87X单片机而言则不会引发单片机的复位。
5.电源欠压复位
在上电延时之后,该电路再提供1024个时钟周期的延迟,目的是让振荡电路有足够的时间产生稳定的时钟信号。
注:为了满足上述人工复位的需要,通常单片机都设置一个外接复位引脚,来接收外部输入的人工复位信号。
我要赚赏金打赏帖 |
|
|---|---|
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |
| TCS3472S传感器及其色彩检测被打赏¥19元 | |
| 【S32DS】S32K3 RTD7.0.1 HSE 组件配置报错问题解决被打赏¥27元 | |
| 【S32K3XX】MCME 启动 CORE1被打赏¥23元 | |
| AG32VH407下温度大气压传感器及其检测被打赏¥20元 | |
| AG32VH407下光照强度传感器BH1750及其检测被打赏¥22元 | |
| AT32VH407下使用温湿度传感器DHT22进行检测被打赏¥20元 | |
| DIY一个婴儿澡盆温度计被打赏¥34元 | |
| 【FreeRtos】FreeRtos+MPU region 配置规则被打赏¥23元 | |
| 【分享开发笔记,赚取电动螺丝刀】三分钟快速上手驱动墨水屏(ArduinoIDE)被打赏¥28元 | |
我要赚赏金
