首先,單片機上電后端口的狀態(tài)應盡量避免處于輸出狀態(tài)(無論是輸出低還是輸出高)
為什么要這樣說呢?因為單片機外圍電路的動作就是靠單片機端口輸出低電平或者高電平來控制的。假如單片機端口一上電就處于輸出高或者低電平的狀態(tài),那么很容易出現(xiàn)誤動作。例如,有一個端口是控制繼電器的,在正常狀態(tài)下,單片機端口輸出低電平使得繼電器吸合,輸出高電平斷開繼電器。平時我們要求繼電器處于斷開狀態(tài),那就要讓單片機的這個端口處于輸出高電平的狀態(tài),但是如果這個單片機的端口在上電復位后是處于輸出低電平的狀態(tài),這時候就會出現(xiàn)問題了,即使我們在程序中一開始就把這個端口置為輸出高電平,但是在復位期間,這個端口的狀態(tài)我們是無法控制的,于是就會出現(xiàn)一個瞬間的低電平,雖然這個低電平持續(xù)的時間很短,有時候不足以使繼電器吸合,當繼電器仍會有輕微的吸合動作。這顯然是我們不希望看到的。
有些單片機復位后端口默認為輸入口的原因
前面我們說了,單片機上電后,如果端口默認為輸出口,那么不管是輸出低電平還是高電平,都可能會引起誤動作,甚至會產(chǎn)生致命后果。
而假如端口上電后默認為輸入口呢?我們知道,單片機的輸出控制操作一般都是根據(jù)輸入信號來實現(xiàn)的。這樣的話,就會好很多,我們可以根據(jù)輸入情況做處理,尤其是對于瞬間的輸入,我們可以通過軟件抗干擾技術來進行過濾,這樣我們就能自己掌握主動,讓誤操作不會發(fā)生。
單片機復位后端口處于高阻態(tài)的原因
單片機復位后端口處于高阻態(tài)的原因無外乎降低功耗和安全性的原因。但是在程序中,對于單片機復位后的狀態(tài),也要有合理的分配,例如不能讓端口一直處于高阻態(tài),這樣容易引起電流變化(我們在設計中發(fā)現(xiàn),如果端口處于高阻態(tài),會導致靜態(tài)電流不穩(wěn)定),當然端口狀態(tài)的設置要與硬件電路配合,對于那些不用的端口,建議設置為輸出。(MSP430數(shù)據(jù)手冊中說:不用的端口,建議設置為輸出,置于輸出高電平還是低電平,區(qū)別不大,因為這些端口沒有連接任何外部器件。)
電路中也一樣,要根據(jù)實際情況設置上拉或者下拉電阻等等。
-
單片機
+關注
關注
6030文章
44489瀏覽量
631980 -
MSP430單片機
+關注
關注
13文章
143瀏覽量
25977 -
復位
+關注
關注
0文章
169瀏覽量
24182
原文標題:單片機通電后所有接口都是高電平嗎
文章出處:【微信號:changxuemcu,微信公眾號:暢學單片機】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論