STM32幾種IO設定模式

2021-08-20 13:51:50 字數 803 閱讀 5444

在 stm32中選用 io 模式

(1) 浮空輸入 _in_floating —— 浮空輸入,可以做 key 識別, rx

(2)帶上拉輸入 _ipu—— io 內部上拉電阻輸入

(3)帶下拉輸入 _ipd—— io內部下拉電阻輸入

(4) 模擬輸入 _ain —— 應用 adc 模擬輸入,或者低功耗下省電

(5)開漏輸出 _out_od —— io 輸出 0接 gnd , io 輸出 1,懸空,需要外接上拉電阻,才能 實現輸出高電平。當輸出為 1時, io 口的狀態由上拉電阻拉高電平,但由於是開漏輸出模式, 這樣 io 口也就可以由外部電路改變為低電平或不變。 可以讀 io 輸入電平變化, 實現 c51的 io 雙向功能

(6)推挽輸出 _out_pp —— io 輸出 0-接 gnd , io 輸出 1 -接 vcc ,讀輸入值是未知的

(7)復用功能的推挽輸出 _af_pp —— 片內外設功能(i2c 的 scl,sda )

(8)復用功能的開漏輸出 _af_od—— 片內外設功能(tx,mosi,miso,clk,nss )

stm32設定例項:

(1)模擬 i2c 使用開漏輸出 _out_od,接上拉電阻,能夠正確輸出 0和 1;讀值時先

gpio_setbits(gpiob, gpio_pin_0);拉高,然後可以讀 io 的值;使用

gpio_readinputdatabit(gpiob,gpio_pin_0);

(2)如果是無上拉電阻, io 預設是高電平;需要讀取 io 的值,可以使用帶上拉輸入 _ipu和 浮空輸入 _in_floating和開漏輸出 _out_od;

STM32基礎 IO 簡介

stm32 的 io 採用分組管理 gpioa gpiob 每組 16 個 io 對應的列舉型別定義 typedef enumgpiomode typedef 每個 io 口可以自由程式設計,但 io 口暫存器必須要按 32 位字被訪問。void gpio init gpio typedef gpi...

STM32啟動模式

stm32三種啟動模式對應的儲存介質均是晶元內建的,它們是 1 使用者快閃儲存器 晶元內建的flash。2 sram 晶元內建的ram區,就是記憶體啦。3 系統儲存器 晶元內部一塊特定的區域,晶元出廠時在這個區域預置了一段bootloader,就是通常說的isp程式。這個區域的內容在晶元出廠後沒有人...

stm32啟動模式

1.實驗環境 野火stm32指南者 stm32f103vet6 使用者快閃儲存器 晶元內建的flash。正常的工作模式。sram 晶元內建的ram區,就是記憶體。可以用於除錯。系統儲存器 晶元內部一塊特定的區域,晶元出廠時在這個區域預置了一段bootloader,就是通常說的isp程式。這個區域的內...