單片機復(fù)位
為了保證 CPU 在需要時從已知的起點和狀態(tài)開始工作,安排了復(fù)位功能。 當(dāng)復(fù)位引腳RST/VPD出現(xiàn)兩個機器周期高電平時,單片機復(fù)位 。參考復(fù)位電路如下:
復(fù)位后, P0 ~ P3 輸出高電平; SP 寄存器為 07H ;其它寄存器全部清 0 ;不影響 RAM 狀態(tài)。 復(fù)位后片內(nèi)各寄存器的狀態(tài)如下( X 為不確定):
PC 0000H ACC 00H
B 00H PSW 00H
SP 07H DPTR 0000H
P0 ~ P3 FFH IP XXX00000B
IE 0XX00000B TMOD 00H
TCON 00H THO 00H
TLO 00H TH1 00H
TL1 00H SCON 00H
SBUF 不確定
PCON 0XXXXXXXB(HMOS)0XXX0000B(CHMOS)
復(fù)位不影響內(nèi)部 RAM 中的數(shù)據(jù)。復(fù)位后, PC=0000 指向程序存儲器 0000H 地址單元,使 CPU 從首地址 0000H 單元開始重新執(zhí)行程序。所以單片機系統(tǒng)在運行出錯或進入死循環(huán)時,可按復(fù)位健重新啟動。
RST/Vpp 端的外部復(fù)位電路有兩種工作方式:上電自動復(fù)位和按健手動復(fù)位。如圖所示。上電復(fù)位是利用 RC 充電來實現(xiàn)的。利用 RC 微分電路產(chǎn)生正脈沖。參數(shù)選取應(yīng)保證復(fù)位高電平持續(xù)時間大于兩個機器周期(圖中參數(shù)適合 6MHz 晶振)。開關(guān) S1 為手動復(fù)位,按下 S1 時合上開關(guān), RST 得到高電平,松手后 CPU 完成復(fù)位,并從 0000H 開始執(zhí)行程序。
編輯:admin 最后修改時間:2018-05-08