㈠ arino怎麼軟復位
有兩種方法:
(1) 外接線 - 找任何一個IO口與復位腳連接,在程式內設定那IO為低電平,那便達到軟體控制硬體復位。
(2) 純軟體 - 定義一個function
void(* resetFunc) (void) = 0; //declare reset function at address 0
任何時候想要復位就call function
resetFunc(); // call reset
㈡ 單片機如何復位
單片機復位就兩種方式,一個是硬體復位,一個是軟體復位。
硬體復位就是靠外部的硬體強行把復位管教置為低電平,例如上電的時候,還有按鍵。
上電之所以要復位是因為在接通電源的一瞬間,給單片機的電壓是不穩定的,電壓不穩定就會導致程序跑飛,從而出現意想不到的情況。而常用的阻容復位(就是一個電阻和電容串聯,電阻接VCC,電容接地,復位管教接中間的那種。),當上電的時候,電源經電阻向電容充電,電容看作短路,所以復位管教為低電平,使得單片機在這段時間內不停的復位。當電源穩定後,電容已經充電完成,相當於開路,復位管教為高電平,單片機正常運行程序。
軟體復位就是利用單片機內部的看門狗來防止程序跑飛,看門狗就是個定時器,每個機器周期,它就加一,當它記滿時,就會讓單片機復位。所以要要定時重裝看門狗。正常情況下,不能讓他溢出。這叫喂狗。當單片機受到外界的干擾,使得程序跑飛,跑出while(1)大循環的時候,由於無法執行喂狗的動作,單片機就會復位,從而不會出現單片機死機的情況。
㈢ 不小心摁了路由器的復位鍵,如何恢復
路由器復位(恢復出廠設置)的操作方法
一、復位前須知
復位(RESET)操作也叫恢復出廠設置、還原、初始化等,可以讓路由器恢復出廠默認設置。一般情況下,在忘記管理地址、管理密碼、重新配置或運行故障等情況下,可以將設備復位。操作之前建議了解以下信息:
[1]復位後,路由器之前所有配置均會丟失,需要重新設置路由器。
[2]復位後,登錄地址和管理密碼均恢復為默認,詳細信息可以在路由器殼體標貼上查看。
[3]路由器的復位需要在通電情況下操作。
[4]如果不方便通過硬體方式(復位鍵)操作,可以登錄管理界面進行軟體復位。但無法登錄管理界面時,只能採取硬體方式復位。
由於復位後,之前的配置會丟失,請謹慎操作。
二、復位方法
可以通過硬體或軟體的方式復位,操作方法如下:
方法一、通過殼體上的復位鍵進行硬體復位
路由器復位鍵有兩種類型:RESET按鈕和RESET小孔。如下圖所示。
4、輸入完成後確認一下,然後重新啟動路由器即可生效。
㈣ 51單片機如何實現軟體復位系統(C語言),謝謝
單片機實現軟體復位(軟復位)的方法及討論
單片機實現軟體復位(軟復位)的方法及討論
(天堂雨林博客blog.sina.com.cn/acer收集整理)
單片機軟復位有什麼好的方法?如從機收到復位命令(軟體命令),程序怎麼使機器復位?雖然要使軟體始終處於可控狀態,最好不要用"復位",因為復位是純硬體過程,軟體是不可控的.但是我們還是要討論方法,一般流傳的方法如下:
1、放狗;
2、((void(code *)(void))0x0000)();
3、用單片機一個引腳控制點一下RSTRST;
4、用單片機一個引腳控制重新加電;
5、用單片機自帶的軟體復位指令或內狗指令;
6、goto大法;
天堂雨林博客對以上方法的意見:
方法1:「放狗」是單片機軟復位的最好辦法,也基本上是唯一的一個辦法。但並不是所有單片機都具備看門狗的功能,也不是一個萬全之策。
辦法2:這不是復位,只是把程序轉到地址0去執行,不如用一個JMP更直接。目前可能極少數單片機或者用戶已經自行添加Boot load時用戶程序的程序開始地址並不為0x0000,所以需要查找這些特定單片機的啟動地址。
在keil C51下面可以這樣實現:
void soft_reset(void)
{
((void (code *) (void)) 0x0000) ();
}
在需要軟體復位的地方使用語句:
soft_reset();
一般可實現軟體復位。
辦法3:用軟體實現的硬復位。需要犧牲一個單片機引腳,且增加了單片機外部電路構造的復雜性,很不可取。
辦法4:類似辦法3,同樣需要犧牲一個單片機引腳,且增加了單片機外部電路構造的復雜性,很不可取。但不能把它單單地當成是復位,應該叫上電復位。
辦法5:Atmel 89C不帶內狗,S的有內狗,只是一條指令就行。如STC的單片機有軟體復位指令,即ISP_CONTR,地址在0E7H 單元(即str ISP_CONTR=0xE7),MOV ISP_CONTR,#00100000B(C語言為ISP_CONTR=0x20),內狗也是一條指令MOV WDT_CONTR,#00111100B!
STC 51系列單片機Datasheet中指出:傳統的8051 單片機由於硬體上未支持此功能,用戶必須用軟體模擬實現,實現起來較麻煩。現STC 新推出的增強型8051 根據客戶要求增加了ISP_CONTR 特殊功能寄存器,實現了此功能。用戶只需簡單的控制ISP_CONTR 特殊功能寄存器的其中兩位 SWBS / SWRST 就可以系統復位了。
辦法6:程序從頭(上電復位處)開始運行,且只有一個循環這種情況,當然可以用goto,如在main()的開頭設一個start:,在程序的唯一循環中設定一個條件,然後goto命令。但需要注意,如果是在中斷常式里,那麼中斷掛號寄存器仍置位,同級中斷不能執行。所以必須先使中斷掛號寄存器清零,EA = 0。只有RETI指令可以使中斷掛號寄存器清零。51單片機有兩級中斷優先順序,所以需要執行兩次RETI指令。這用匯編是很簡單的事,而C則比較難以實現。但是,goto命令盡量不要用,因為goto會到處亂竄,而且goto不能跑到函數外面去執行一個命令。
最後總結如下:最好使用辦法5最為簡潔方便,使用辦法2實現也不失為一種好方法
㈤ 單片機軟復位幾種方法
如從機收到復位命令(軟體命令),程序怎麼使機器復位?雖然要使軟體始終處於可控狀態,最好不要用"復位",因為復位是純硬體過程,軟體是不可控的.但是我們還是要討論方法,一般流傳的方法如下:
1、放狗;
2、((void(code *)(void))0x0000)();
3、用單片機一個引腳控制點一下RSTRST;
4、用單片機一個引腳控制重新加電;
5、用單片機自帶的軟體復位指令或內狗指令;
6、goto大法;
㈥ stm32怎樣實現軟體復位
直接使用復位命令:
NVIC_SystemReset();//系統復位
即可,和上電復位一個效果
㈦ 51系列單片機是如何進行復位的
在單片機系統的應用中,我們經常需要用到復位技術來實現抗干擾。有的單片機(如8098)有專門的復位指令,某些增強型MCS-51系列單片機雖然沒有復位指令,但片內集成了WATCHDOG電路,可以很容易實現復位。而普及型MCS-51系列單片機(如8031和8032)既無復位指令,又不帶硬體WATCHDOS,如果不外接硬體WATCHDOG,就必須採用軟體復位技術。所謂軟體復位就是用一系列指令來模仿復位操作。在MCS-51系列單片機中,只要用指令使程序從起始地址(0x0000)開始執行,就可以復位單片機。