89C51單片機共有復位、程序執行、低功耗以及編程和校驗等四種工作方式。
1.復位方式
(l)復位操作復位是單片機的初始化操作,其主要功能是把PC初始化為OOOOH,使單片機從0000H單元開始執行程序。除了進入系統的正常初始化之外,當由于程序運行出錯或操作錯誤使系統處于死鎖狀態時,為擺脫困境,也需按復位鍵以重新啟動。

除PC之外,復位操作還對其它一些特殊功能寄存器有影響,它們的復位狀態如上表所示。
復位操作還對單片機的個別引腳信號有影響。例如在復位期間,ALE和信號變為無效狀態,即ALE=LPSEN=1。(2)復位信號及其產生
①復位信號
RST引腳是復位信號的輸入端,復位信號是高電平有效,其有效時間應持續24個振蕩脈沖周期(即兩個機器周期)以上,若使用頻率為6MHz的晶振,則復位信號持續時間應超過4μs才能完成復位操作;產生復位信號的電路邏輯如下圖所示。

整個復位電路包括芯片內外兩部分。外部電路產生的復位信號(RST)送施密特觸發器,再由片內復位電路在每個機器周期的S5P2時刻對施密特觸發器的輸出進行采樣。然后才得到內部復位操作所需要的信號。
②復位方式復位操作有上電自動復位、按鍵手動復位和外部脈沖復位三種方式,示于下圖中。

上電自動復位是通過外部復位電路的電容充電來實現的,其電路如上圖(a)所示。這樣,只要電源VCC的上升時間不超過1ms,就可以實現自動上電復位,即接通電源就完成了系統的復位初始化。按鍵電平復位是通過使復位端經電阻與Vcc電源接通而實現的,其電路如上圖(b)所示。而按鍵復位電路圖中的電阻電容參數適宜于6MHz晶振,能保證復位信號高電平持續時間大于2個機器周期。外部脈沖復位是由外部提供一個復位脈沖。此復位脈沖應保持寬度大于兩個機器周期,如上圖(c)所示。復位脈沖過后,由內部下拉電阻保證RST端的低電平。
2.程序執行方式
程序執行方式是單片機的基本工作方式。由于復位后PC=0000H,因此程序執行總是從地址0000H開始的。但一般程序并不是真正從0000H開始,為此就得在0000H開始的單元中存放一條無條件轉移指令,以便跳轉到實際程序的人口去執行。
電子發燒友App





評論