1.芯片的引腳分布
2.普通IO引腳的命名規則
3.IO復用
IO引腳身兼數職的現象叫做IO復用,可以使芯片擁有更多的功能,例如:
PA9和PA10既可以用于GPIO的引腳,也可以用于串口或定時器的引腳
通用:CPU直接控制IO引腳的輸入輸出(如GPIO)
復用功能:CPU通過片上外設間接控制IO引腳(如串口,定時器)
4. IO重映射
將某個片上外設的復用功能移動到其他IO引腳上
5.最小系統板引腳圖
說明:例如想同時使用STM32的串口1和定時器1,但用到的IO口都是PA9和PA10,就可用重映射將串口1的引腳引到PB6和PB7,這樣同時使用兩個外設時,引腳就不會沖突了。
6.GPIO
6.1 GPIO的寄存器組
6.2 GPIO的8種工作模式
6.2.1 輸入和輸出
輸入:通過IO引腳讀取外部輸入電平的高或低
輸出:通過IO引腳向外輸出高電平或低電平
6.2.2 通用和復用 (只針對于輸出模式)
見 3.1
6.2.3 推挽和開漏
當給MOS管的G極施加一個合適的電壓時,D和S之間就會導通,否則就會斷開
? ? 在推挽模式下,向ODR寄存器寫0時,P-MOS斷開,N-MOS導通,接VSS,會輸出低電壓;向ODR寄存器寫1時,N-MOS斷開,P-MOS導通,接Vdd,會輸出高電壓(3.3V)。
? ? 在開漏模式下,P-MOS始終斷開,IO口連接的是N-MOS的漏極,當寫0時,N-MOS閉合,接VSS,輸出低電壓;當寫1時,N-MOS斷開,引腳懸空,輸出高阻抗。
6.2.4 上拉,下拉和浮空(只針對于輸入模式)
在輸入模式下,引腳的內阻是無窮大。
? ?當輸入高電平時,引腳的電平就是高電平;當輸入低電平時,引腳的電平就是低電平。
? ? 但如果外部輸入信號斷開,則IO引腳就會懸空,相當于一個天線,會不斷接收外部的電磁波,接收到的信號會雜亂無章。
? ?當上拉電阻閉合時,當引腳懸空時,電壓全被無窮大電阻分走,則引腳的電平會被上拉電阻上拉到3.3V,會有一個默認的高電平,對應上拉輸入。
同理,當下拉電阻閉合時,當引腳懸空時,引腳會有一個默認的低電平,對應下拉輸入。
注:兩個電阻只能同時閉合一個,當都不閉合時,對應浮空輸入。
? ? ? ?單片機復位后,IO引腳會處于浮空輸入模式(省電,安全)
6.2.5 模擬輸入
當需要使用STM32的ADC功能時,需要將引腳配置為模擬輸入模式,用于接收外部的模擬信號。
6.3 8種模式的英文名稱
6.4 IO的最大輸出速度
最大輸出速度:IO允許輸出電平的最大切換頻率
?STM32的IO引腳的輸出速度: