概述
本章主要GPIO輸出模式下不同配置的說明。 最近在弄ST和GD的課程,需要樣片的可以加群申請:615061293。
生成例程
使用STM32CUBEMX生成例程,這里使用NUCLEO-L476RG開發板,因為我這只有這款板子的主頻較快。
不同速率對應的波形
以PC3為例,在推挽輸出無上下拉情況下,輸出速率主要有4種,一般的低端MCU只有3種,沒有Very High。
LOW速率
Medium速率
High速率
Very High速率
可以看到,在不同速率下,端口的反應速度不一樣,設置最大輸出速率越大,響應越快,對應的噪聲也就越大。
輸出方式
在上圖中,P-MOS帶了一個?,說明是低電平導通。
上圖是GPIO的示意圖,有輸入和輸出,如果簡化為輸出,則如下所示。
模擬文件下載
https://download.csdn.net/download/qq_24312945/85250172
推挽輸出
推挽輸出的內部電路大概是下圖這個樣子,由一個P-MOS和一個N-MOS組合而成,同一時間只有一個管子能夠進行導通。
當輸出高電平時候,P-MOS導通,N-MOS截至,此時電源電流入R5。
當輸出低電平時候,N-MOS導通,P-MOS截至,此時電流流入R5的為0。
線與
推挽輸出高電平與電源電壓基本上沒有壓差 高低電平的驅動能力較強,推挽輸出的電流都能達到幾十mA。 但是無法進行線與操作,做進行線與操作,那么電源和地就會短路,因為mos管電阻很小。 看下圖可以得知,電流通過Q3的P-MOS流到Q2的N-MOS,最終回到地。
開漏輸出
開漏輸出又叫漏極開漏輸出簡化后可以看作如下的示意圖。
若還是使用上面推挽的電路圖,當N-MOS為低電平時候,那么他的輸出就是一個高阻態。 可以看到,R5沒有電流通過,電壓也是接近于0,所以GPIO無法對外輸出高電平。
此時需要增加一個上拉,這樣的話上拉的電流就會流出去。 所以在開漏輸出情況下,需要增加一個上拉才能進行輸出高電平。
對于輸出低電平,他和推挽輸出差不多,電流通過N-MOS流到地中。
上圖是沒有增加上拉,但是開漏輸出模式都需要增加,增加上拉之后如下圖所示。 電流通過N-MOS流回地中。
輸出電壓
由于推挽輸出在輸出的時候是通過單片機內部的電壓,所以他的電壓是不能改變的。 但是開漏輸出是通過外部上拉的電壓,所以可以改變開漏輸出模式下的電壓大小。 下圖是當上拉為5V時候,也是可以驅動出去的,這個上拉電壓最大值需要看單片機的耐壓。
審核編輯:湯梓紅
-
GPIO
+關注
關注
16文章
1216瀏覽量
52277 -
開漏輸出
+關注
關注
0文章
34瀏覽量
7340 -
stm32cubemx
+關注
關注
5文章
284瀏覽量
14911
發布評論請先 登錄
相關推薦
評論