STM32 GPIO相關知識

2021-10-12 18:04:37 字數 1612 閱讀 1761

目錄

一、gpio基礎知識

1、總體介紹

2、詳細介紹

1、4種輸入模式

2、4種輸出模式

4種輸入模式

4種輸出模式

3種最大輸出速度

輸入浮空:浮空,顧名思義就是浮在空中,既沒有什麼把它拉上去,也沒有什麼把它拉下去。浮空最大的特點就是電壓的不確定性,它可能是0v,也可能是vcc,還可能是介於兩者之間的值(可能性最大)。

輸入浮空常用於adc輸入,這樣可以減少上、下拉電阻的影響。也可用於標準的通訊協議,比如iic、usart的等,如果想用做按鍵檢測等功能,需外部使用上拉或下拉電阻。

輸入上拉: 將電位上拉並鉗位在乙個高電平,比如上拉到vcc。當外部沒用輸入時,相當於輸入高電平,常用於讀取管腳資訊,可節省外部上拉電阻。

輸入下拉:將電位下拉並鉗位在乙個低電平,比如下拉到gnd。當外部沒有輸入時,相當於輸入低電平。 

模擬輸入: 訊號進入後不經過上拉電阻或者下拉電阻,關閉施密特觸發器,經由另一線路把電壓訊號傳送到片上外設模組。比如傳送給adc模組,由adc採集電壓訊號。所以可以理解為模擬輸入的訊號是未經處理的訊號,是原汁原味的訊號。

可用於adc模擬輸入,或低功耗下省電。

開漏輸出:io輸出0,接gnd,io輸出1,外接上拉電阻。當輸出1時,io口的狀態由上拉電阻拉至高電平,但由於是開漏輸出模式,io口可以可以由外部電路拉至低電平或者不變。可用於io輸入電平變化,實現c51的io雙向功能。

輸出端相當於三極體的集電極,適合做電流型驅動,吸收電流能力相對較強(一般20ma以內)。

開漏形式有以下幾個特點:

開漏復用功能:片內外設功能(tx1,mosi,miso,sck,ss)。  

推挽輸出: io輸出0接gnd,輸出1接vcc,讀輸入值未知。

可以輸出高電平、低電平,也可以連線數字器件:推挽結構一般是指兩個三極體分別受兩互補訊號的控制,總是乙個三極體導通的時候另乙個三極體截至。高低電平有ic電源決定。

推挽電路是兩個引數相同的三極體或mosfet,以推挽方式存在於電路中,各負責正負半周的波形放大任務,電路工作時,兩隻對稱的功率開關管每次只有乙個導通,所以導通損耗小、效率高。輸出既可以向負載灌電流,也可以從負載抽取電流。推拉式輸出級既提高電路的負載能力,又提高開關速度。

推挽復用功能:片內外設功能(

STM32 GPIO 相關暫存器

每個gpio埠有兩個32位配置暫存器 gpiox crl,gpiox crh 分別控制每個埠的高八位和低八位,如果io口是0 7號的話,則寫crl暫存器,如果io口是8 15號的話,則寫crh暫存器,兩個32位資料暫存器 gpiox idr,gpiox odr 乙個是唯讀作輸入資料暫存器,乙個是只寫...

STM32 GPIO 相關暫存器

每個gpio埠有兩個32位配置暫存器 gpiox crl,gpiox crh 分別控制每個埠的高八位和低八位,如果io口是0 7號的話,則寫crl暫存器,如果io口是8 15號的話,則寫crh暫存器,兩個32位資料暫存器 gpiox idr,gpiox odr 乙個是唯讀作輸入資料暫存器,乙個是只寫...

STM32GPIO部分介紹

最近在老師交給了乙個專案,需要用到stm32微控制器,這裡就在學習的過程中所注意到的一些地方或細節部分記錄了下來,筆者所使用的是stm32f407zgt6晶元 探索者 檢視晶元的資料手冊 這個 對每個i o口的功能進行了很詳細的介紹。每個i o除了作為i o使用外,還可以作為其他的復用。已以pe2口...