STM32單片機按鍵的使用

前面一章我講了把單片機IO作為輸出使用的例子。今天我們把單片機的IO作為輸入的使用方法。前面我們說到使用STM單片機的外設前一定要打開器對應的時鐘,此次我們用到了單片機的GPIOB所以我們依舊需要打開STM32單片機的GPIOB 時鐘。

STM32單片機按鍵的使用

開啟GPIOB時鐘

通過上述函數我們就打開了GPIOB的時鐘,接下來就是配置對應的端口為輸入模式。並且將對應的配置初始化到對應的結構體。

STM32單片機按鍵的使用

端口配置

通過上述配置,我門將單片機的PB0端口配置為上拉模式,這樣做的好處是單片機的引腳可以直接連接按鍵,案件的另一腳可以直接接地非常的方便。其中GPIO_MODE_IPU就是上拉模式當然還有好多模式我們可以在GPIO.H 中查看其它模式如下圖:

STM32單片機按鍵的使用

GPIO模式結構體

在GPIO.h中我們可以看到端口的配置模式有好多種。接下來就是讀取按鍵對應端口的值的問題了,我們同樣在GPIO.H中可以找到該函數:

STM32單片機按鍵的使用

讀取io狀態函數

我們通過此函數讀出的數據進行判斷,就可以知道按鍵是否被按下,我們在初始化的時候將PB0端口配置為高點平,當按鍵按下後會被下拉為低電平,所以我們條件語句if判斷端口電平為0就作出對應響應如下圖:

STM32單片機按鍵的使用

這樣一個簡單的按鍵操作就完成了,當然實際應用中還需要加消抖函數,大家自行科普。


分享到:


相關文章: