每組GPIO口有10個暫存器
4個32位配置暫存器:
一個埠模式暫存器:32位分為16組,對應十六個管腳
00:輸入模式(復位狀態)浮空輸入
01:通用輸出模式
10:復用功能模式
11:模擬模式
一個埠輸出型別暫存器:32位只啟用低16位,對應16個管腳
0:推挽輸出(復位狀態)
1:開漏輸出
一個埠輸出速度暫存器:32位分為16組,對應16個管腳
00:低速 2MHz
01:中速 25MHz
10:快速 50MHz
11:高速 100MHz
一個埠上下拉暫存器:32分為16組,對應16個管腳
00:無上拉或者下拉(浮空)
01:上拉
10:下拉
11:保留
2個32位資料暫存器:
一個埠輸入資料暫存器:32位啟用低16位
IDR0~IDR15 例如GPIOA組中的IDR0=1,即GPIOA0高電平輸入
一個埠輸出資料暫存器:32位啟用低16位,使用同輸出資料暫存器
1個32位置位/復位暫存器BSRR:分為低16位(埠置位位)和高16位(埠復位位)
在庫函式中主要也是操作置位/復位暫存器
控制GPIO口輸出的電平狀態
低16位:輸入1:埠置位,讓埠輸出1
輸入0:埠不受影響
高16位:輸入1:埠復位,讓IO口輸出0
輸入0:埠不受影響
埠的置位/復位暫存器寫值最侄訓是會被映射到埠輸出暫存器
1個32位埠配置鎖存暫存器:32位啟用低17位
位16:鎖定鍵LCKK
0:埠配置鎖定鍵未激活
1:埠配置鎖定鍵已激活
位0~位15:埠x鎖定位y,只能在鎖定鍵LCKK等于0的時候可執行寫操作
0:埠配置未鎖定
1:埠配置已鎖定
2個32位復用功能共暫存器
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/85875.html
標籤:單片機/工控
下一篇:單片機AD轉換的問題
