【導(dǎo)讀】在電子電路設(shè)計過程中,導(dǎo)致最后調(diào)試結(jié)果異常的很多時候都不是硬件設(shè)計與代碼編寫,而是抗干擾能力太差導(dǎo)致的。在本文中,小編就將從I/O口中的上拉電阻入手來談一談如何增強單片機的抗干擾能力,幫助大家節(jié)省時間,在學(xué)習(xí)的過程中少走彎路。
綜合考慮各I/O口的輸入阻抗,采集速率等因素設(shè)計I/O口的外圍電路。一般決定一個I/O口的輸入阻抗有3種情況:
A:I/O口有上拉電阻,上拉電阻值就是I/O口的輸入阻抗。
一般都使用4K-20K電阻做上拉,(PIC的B口內(nèi)部上拉電阻約20K)。由于干擾信號也遵循歐姆定律,所以在越存在干擾的場合,選擇上拉電阻就要越小,因為干擾信號在電阻上產(chǎn)生的電壓就越小。
由于上拉電阻越小就越耗電,所以在家用設(shè)計上,上拉電阻一般都是10-20K,而在強干擾場合上拉電阻甚至可以低到1K。(如果在強干擾場合要拋棄B口上拉功能,一定要用外部上拉。)
B:I/O口與其它數(shù)字電路輸出腳相連,此時I/O口輸入阻抗就是數(shù)字電路輸出口的阻抗,一般是幾十到幾百歐。
可以看出用數(shù)字電路做中介可以把阻抗減低到最理想,在許多工業(yè)控制板上可以看見大量的數(shù)字電路就是為了保證性能和保護MCU的。
C:I/O口并聯(lián)了小電容。
由于電容是通交流阻直流的,并且干擾信號是瞬間產(chǎn)生,瞬間熄滅的,所以電容可以把干擾信號濾除。但不好的是造成I/O口收集信號的速率下降,比如在串口上并電容是絕不可取的,因為電容會把數(shù)字信號當(dāng)干擾信號濾掉。
但不能并聯(lián)電容的情況并非絕對,如檢測開關(guān)、霍爾元件等器件是能夠進行電容并聯(lián)的,這主要是因為這些器件的開關(guān)量并不具備很高的速率,因此即便增添了電容也是對信號的采集沒有什么大影響的。本文從上拉電阻的角度出發(fā),分享了對于開發(fā)過程中單片機抗干擾的設(shè)計思路,希望能夠幫助大家少走一些彎路。