|
STM32的管腳主要有8中可能的配置:
浮空輸入_IN_FLOATING
帶上拉輸入_IPU
帶下拉輸入_IPD
模擬輸入_AIN
開漏輸出_OUT_OD
推挽輸出_OUT_PP
復(fù)用功能的推挽輸出_AF_PP
復(fù)用功能的開漏輸出_AF_OD
在IO模式下,有三種速度,分別為:2MHz,10Mhz,50Mhz,
此速度是指IO口驅(qū)動(dòng)電路的響應(yīng)速度而不是輸出信號(hào)的速度,輸出信號(hào)的速度與程序有關(guān)
通過選擇速度來選擇不同的輸出驅(qū)動(dòng)模塊,達(dá)到最佳的噪聲控制和降低功耗的目的
一般高頻驅(qū)動(dòng)電路,噪聲也高,當(dāng)不需要高的輸出頻率時(shí),請(qǐng)選用低頻驅(qū)動(dòng)電路這樣有助于提高系統(tǒng)的EMI性能
當(dāng)然,如果要輸出較高頻率的信號(hào),選擇低頻驅(qū)動(dòng)模塊很可能會(huì)得到失真的信號(hào)
關(guān)鍵是GPIO的引腳速度與和應(yīng)用匹配
對(duì)于串口,如果最大波特率只需115200,那么2M的GPIO引腳速度就夠了,既省電又降噪
對(duì)于I2C,假設(shè)使用400K波特率,若想把余量留大些,那么用2M的或許不夠,此時(shí)可選擇10M
對(duì)于SPI,假設(shè)使用18M或者9M波特率,用10M明顯不夠,此時(shí)可選擇50M的GPIO引腳速度
GPIO口味輸入時(shí),驅(qū)動(dòng)電路與端口斷開,蘇初速度配置無意義
在復(fù)位期間和剛復(fù)位后,復(fù)位功能未開啟,IO端口被配制成浮空輸入模式
所有端口均有外部中斷能力,為了使用外部中斷線,端口必須配置成輸入模式
STM32中外設(shè)的輸入輸出功能的三種情況:
外設(shè)對(duì)應(yīng)管腳為輸出:可根據(jù)外圍電路的配置選擇對(duì)應(yīng)管腳為復(fù)用功能的推完輸出或者復(fù)用功能的開漏輸出
外設(shè)對(duì)應(yīng)管腳為輸入:可根據(jù)外圍電路的配置選擇對(duì)應(yīng)管腳為浮空輸入或者帶上拉輸入或者帶下拉輸入
ADC對(duì)應(yīng)的管腳:配置管腳為模擬輸入
如果把端口配置成復(fù)用輸出功能,則引腳和輸出寄存器斷開,并和片上外設(shè)的輸出信號(hào)連接
管腳配置成復(fù)用功能后,讓國外設(shè)沒有被激活,那么它的輸出將不確定!
|
|