—— —— —— 技术资料下载中心

>> PIC16C5X单片机应用与设计 \

第一章 PIC16C5X硬件结构
第十节 复位（RESET）
PIC16C5X内藏有上电复位电路（POR）。在芯片上有一复位端MCLR，对于一般的应用，只要把MCLR端接在高电位（VDD）即可，因为内部复位电路会在芯片上电时自动复位，无需在MCLR端再加上电复位电路。对于某些特殊应用，则需在MCLR端加上外部上电复位电路，在§1.10.5我们会谈及这个问题。 §1.10.1　复位的条件和原因 复位可由下面事件引发产生： a、芯片上电； b、把芯片MCLR端置低电平；
c、看门狗（WDT）超时溢出。
§1.10.2 复位时的PIC状态

在芯片复位期间，芯片状态为：
a、振荡器处于起振准备状态；
b、所有I/O口都被置成高阻态（即输入态）；
c、PC值被置为全"1"；
d、OPTION被置为全"1"；
e、WDT和预分频器被清零；
f、状态寄存器（F3）的程序页面位（高三位）被清零。

§1.10.3 振荡起振计时器（OST）

对于晶体/陶瓷振荡电路，上电后它们还需要一定的时间来起振或产生稳定的振荡信号，有鉴于此，PIC在其内部专门设置了一个"振荡起振计时器"OST（Oscillator Start-up Timer）。OST在MCLR端达到高电平后才开始启动计时18ms，使RESET状态保持18ms以便让振荡电路起振及稳定下来。在一般情况下，我们都将MCLR端直接在VDD（+5V）上即可。这样上电后一旦MCLR端电平升高到一定程序后OST即开始计数18ms，这段时间已足够让振荡起振，OST计满18ms后，芯片结束RESET状态，开始进入程序运行。
当WDT计时溢出后，OST也是马上启动计时18ms，保持18ms的RESET状态，然后再进行程序运行。

§1.10.4　内部上电复位路（POR）

PIC16C5X片内上电复位电路POR（Power On Reset）能使PIC芯片上电后自动会产生复位，所以一般不需要再在MCLR端加外部复位电路，只要将其接在VDD上即可。图1.16是POR的简图。
从图中我们可以看到，当上电（Power On）、或MCLR端变低，都会置位（set）"复位锁存器"，使其输出复位电平让芯片处于RESET状态，这时OST也处于复位状态。当OST检测到MCLR变为高电平后即开始计时18ms，计满18ms后会复位（Reset）"复位锁存器"使其Q端输出高电平，从而使芯片结束复位状态，进入运行。

图1.16　内部上电复位路简图

§1.10.5　外部复位电路 在某些应用情况下我们也可能需要外部复位电路。
一、手动复位开关
当你在应用中需要一个手动复位开关时，可以使用下面的电路。如图1.17。
二、低频振荡电路
当使用低频振荡（LP）时，OST的18ms不足以使其建立稳定的振荡，所以也许你需要更长的RESET 时间，这时可以用外部上电复位电路来延长复位时间。如图1.18。
图1.17 按健复位电路

图1.18 外部上电复位电路

注：1. 二极管D使电容C能在VDD掉电时快速放电。 2. R<40KΩ，以保证其两端的电压降不大于0.2V（即IMCLR*R<0.2V，IMCLR为 MCLR 端最大输入电流）。 3. R1取100Ω～1KΩ，用来限制在静电环境，电容C充放电时的冲击电流。 使用了外部加电复位电路，其复位过程即如图1.19所示：

图1.19 使用外部上电复位电路的复位过程

VDD上升到稳定值一段时间后MCLR才上升到高电平。而OST只有检测到MCLR升为高电平后才开始计时18ms，所以就可取得长于18ms的复位时间了。

§1.10.6　复位后对寄存器值的影响

对于通用寄存器来说，芯片上电复位后它们的值是随机不定的，而其他类型的复位则保持原值不变。
对于特殊功能寄存器，各种复位后它们会等于一个固定的复位值，见以下二表：

第一节 第二节 第三节 第四节 第五节 第六节 第七节 第八节 第九节 第十节 第十一节 第十二节

[ 返回 ]