1.什么是上拉電阻
在學(xué)習(xí)單片機的時候,我們經(jīng)常遇到一組名詞:上拉電阻和下拉電阻,通過學(xué)習(xí)我們知道上下拉電阻不僅能使當(dāng)前電平穩(wěn)定避免受到干擾,同時上拉電阻還能提高單片機的驅(qū)動能力。
閱讀擴展:什么是單片機的上拉電阻?點擊閱讀。
2. 上拉電阻的幾個典型應(yīng)用
在使用中,用到上拉電阻的場合有這么幾個典型:
按鍵輸入檢測;
IIC通訊;
通常,我們都習(xí)慣這樣設(shè)計按鍵:按鍵按下時單片機檢測到低電平,按鍵松開時檢測到高電平,這個高電平就是通過上拉電阻實現(xiàn)的:
IIC是一種通訊方式,只需要通過SCL和SDA即可實現(xiàn)數(shù)據(jù)的傳輸,在典型的IIC器件手冊上都會發(fā)現(xiàn)SCL和SDA引腳上,都會推薦接上拉電阻:
3. 如何配置為上拉輸入模式
如果在設(shè)計硬件電路的時候,忘記了設(shè)計上下拉電阻,該怎么辦呢?別著急,
32位的單片機,其GPIO口基本上都配有內(nèi)部上下拉電阻,通過寄存器控制,可以將某個引腳設(shè)置為上下拉模式:
以STM32單片機為例。STM32單片機的每個GPIO口都可以獨立設(shè)置為上拉或者下拉輸入模式。
在將GPIO口設(shè)置為輸入模式后,只需要將對應(yīng)端口的PXODR設(shè)置為1即配置為上拉輸入,將PXODR設(shè)置為0即配置為下拉輸入。
如下是將STM32單片機的PA15設(shè)置為上拉輸入模式的程序: