1. 單片機的三種復位方式
一、高電平復位
復位電路的工作原理 在書本上有介紹,51單片機要復位只需要在第9引腳接個高電平持續2us就可以實現,那這個過程是如何實現的呢?在單片機系統中,系統上電啟動的時候復位一次,當按鍵按下的時候系統再次復位,如果釋放後再按下,系統還會復位。所以可以通過按鍵的斷開和閉合在運行的系統中控制其復位。
(1)、上電復位
電容的的大小是10uf,電阻的大小是10k。所以根據公式,可以算出電容充電到電源電壓的0.7倍(單片機的電源是5V,所以充電到0.7倍即為3.5V),需要的時間是10K*10UF=0.1S。也就是說在電腦啟動的0.1S內,電容兩端的電壓時在0~3.5V增加。這個時候10K電阻兩端的電壓為從5~1.5V減少(串聯電路各處電壓之和為總電壓)。所以在0.1S內,RST引腳所接收到的電壓是5V~1.5V。在5V正常工作的51單片機中小於1.5V的電壓信號為低電平信號,而大於1.5V的電壓信號為高電平信號。所以在開機0.1S內,單片機系統自動復位(RST引腳接收到的高電平信號時間為0.1S左右)。
(2) 按鍵復位
在單片機啟動0.1S後,電容C兩端的電壓持續充電為5V,這是時候10K電阻兩端的電壓接近於0V,RST處於低電平所以系統正常工作。當按鍵按下的時候,開關導通,這個時候電容兩端形成了一個迴路,電容被短路,所以在按鍵按下的這個過程中,電容開始釋放之前充的電量。隨著時間的推移,電容的電壓在0.1S內,從5V釋放到變為了1.5V,甚至更小。根據串聯電路電壓為各處之和,這個時候10K電阻兩端的電壓為3.5V,甚至更大,所以RST引腳又接收到高電平。單片機系統自動復位。
總結: 1、復位電路的原理是單片機RST引腳接收到2US以上的電平信號,只要保證電容的充放電時間大於2US,即可實現復位,所以電路中的電容值是可以改變的。 2、按鍵按下系統復位,是電容處於一個短路電路中,釋放了所有的電能,電阻兩端的電壓增加引起的。
二、低電平復位
在使用STM32晶元時,常用的復位方式為按鍵復位,且為低電平復位。其原理與上述高電平復位相反,分析也挺簡單,這里不在贅述,只給出按鍵復位原理
單片機的復位引腳RST(全稱RESET)出現2個機器周期以上的復位電平時,單片機就執行復位操作。如果RST持續為復位電平,單片機就處於循環復位狀態。當單片機處於正常電平時就正常轉入執行程序。
當單片機上電瞬間由於電容電壓不能突變會使電容兩邊的電位相同,此時RST為低電平,之後隨著時間推移電源通過電阻對電容充電,充滿電時RST為高電平。正常工作為高電平,低電平復位。即上電低電平,然後轉向高電平。當單片機上電瞬間由於電容電壓不能突變會使電容兩邊的電位相同,此時RST為高電平,之後隨著時間推移電源負極通過電阻對電容放電,放完電時RST為低電平。正常工作為低電平,高電平復位。
2. 關於STM32的復位電路
可以的。由於電容兩端的電壓是不能突變的。只要停機的時間足夠長,電容兩端的電壓會恢復到零電壓的。上電瞬間,復位端為零,即可復位。經過4τ~5τ時間,電容充電完畢,單片機即可正常工作。