国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

STM32的GPIO介紹

STM32嵌入式開發(fā) ? 來源:STM32嵌入式開發(fā) ? 作者:STM32嵌入式開發(fā) ? 2022-04-28 10:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

STM32的GPIO介紹

GPIO是通用輸入/輸出端口的簡稱,是STM32可控制的引腳。GPIO的引腳與外部硬件設(shè)備連接,可實(shí)現(xiàn)與外部通訊、控制外部硬件或者采集外部硬件數(shù)據(jù)的功能。

STM32F103ZET6芯片為144腳芯片,包括7個(gè)通用目的的輸入/輸出口(GPIO)組,分別為GPIOA、GPIOB、GPIOC、GPIOD、GPIOE、GPIOF、GPIOG,同時(shí)每組GPIO口組有16個(gè)GPIO口。通常簡略稱為PAx、PBx、PCx、PDx、PEx、PFx、PGx,其中x為0-15。

STM32的大部分引腳除了當(dāng)GPIO使用之外,還可以復(fù)用為外設(shè)功能引腳(比如串口),這部分在【STM32】STM32端口復(fù)用和重映射(AFIO輔助功能時(shí)鐘)中有詳細(xì)的介紹。

GPIO基本結(jié)構(gòu)

每個(gè)GPIO內(nèi)部都有這樣的一個(gè)電路結(jié)構(gòu),這個(gè)結(jié)構(gòu)在本文下面會(huì)具體介紹。

62f0b4ec-c683-11ec-bce3-dac502259ad0.png

電路圖分析

保護(hù)二極管:IO引腳上下兩邊兩個(gè)二極管用于防止引腳外部過高、過低的電壓輸入。當(dāng)引腳電壓高于VDD時(shí),上方的二極管導(dǎo)通;當(dāng)引腳電壓低于VSS時(shí),下方的二極管導(dǎo)通,防止不正常電壓引入芯片導(dǎo)致芯片燒毀。但是盡管如此,還是不能直接外接大功率器件,須加大功率及隔離電路驅(qū)動(dòng),防止燒壞芯片或者外接器件無法正常工作。
P-MOS管和N-MOS管:由P-MOS管和N-MOS管組成的單元電路使得GPIO具有“推挽輸出”和“開漏輸出”的模式。這里的電路會(huì)在下面很詳細(xì)地分析到。
TTL肖特基觸發(fā)器:信號(hào)經(jīng)過觸發(fā)器后,模擬信號(hào)轉(zhuǎn)化為0和1的數(shù)字信號(hào)。但是,當(dāng)GPIO引腳作為ADC采集電壓的輸入通道時(shí),用其“模擬輸入”功能,此時(shí)信號(hào)不再經(jīng)過觸發(fā)器進(jìn)行TTL電平轉(zhuǎn)換。ADC外設(shè)要采集到的原始的模擬信號(hào)。
這里需要注意的是,在查看《STM32中文參考手冊(cè)V10》中的GPIO的表格時(shí),會(huì)看到有“FT”一列,這代表著這個(gè)GPIO口時(shí)兼容3.3V和5V的;如果沒有標(biāo)注“FT”,就代表著不兼容5V。

STM32的GPIO工作方式

GPIO支持4種輸入模式(浮空輸入、上拉輸入、下拉輸入、模擬輸入)和4種輸出模式(開漏輸出、開漏復(fù)用輸出、推挽輸出、推挽復(fù)用輸出)。同時(shí),GPIO還支持三種最大翻轉(zhuǎn)速度(2MHz、10MHz、50MHz)。每個(gè)I/O口可以自由編程,但I(xiàn)/O口寄存器必須按32位字被訪問。

6308b498-c683-11ec-bce3-dac502259ad0.png

GPIO的八種工作方式

浮空輸入模式(浮空輸入模式下,I/O端口的電平信號(hào)直接進(jìn)入輸入數(shù)據(jù)寄存器。也就是說,I/O的電平狀態(tài)是不確定的,完全由外部輸入決定;如果在該引腳懸空(在無信號(hào)輸入)的情況下,讀取該端口的電平是不確定的。)

631e913c-c683-11ec-bce3-dac502259ad0.png

上拉輸入模式(上拉輸入模式下,I/O端口的電平信號(hào)直接進(jìn)入輸入數(shù)據(jù)寄存器。但是在I/O端口懸空(在無信號(hào)輸入)的情況下,輸入端的電平可以保持在高電平;并且在I/O端口輸入為低電平的時(shí)候,輸入端的電平也還是低電平。)

6330e1c0-c683-11ec-bce3-dac502259ad0.png

下拉輸入模式(下拉輸入模式下,I/O端口的電平信號(hào)直接進(jìn)入輸入數(shù)據(jù)寄存器。但是在I/O端口懸空(在無信號(hào)輸入)的情況下,輸入端的電平可以保持在低電平;并且在I/O端口輸入為高電平的時(shí)候,輸入端的電平也還是高電平。)

63501cd4-c683-11ec-bce3-dac502259ad0.png

模擬輸入模式(模擬輸入模式下,I/O端口的模擬信號(hào)(電壓信號(hào),而非電平信號(hào))直接模擬輸入到片上外設(shè)模塊,比如ADC模塊等等。)

636548ac-c683-11ec-bce3-dac502259ad0.png

開漏輸出模式(開漏輸出模式下,通過設(shè)置位設(shè)置/清除寄存器或者輸出數(shù)據(jù)寄存器的值,途經(jīng)N-MOS管,最終輸出到I/O端口。這里要注意N-MOS管,當(dāng)設(shè)置輸出的值為高電平的時(shí)候,N-MOS管處于關(guān)閉狀態(tài),此時(shí)I/O端口的電平就不會(huì)由輸出的高低電平?jīng)Q定,而是由I/O端口外部的上拉或者下拉決定;當(dāng)設(shè)置輸出的值為低電平的時(shí)候,N-MOS管處于開啟狀態(tài),此時(shí)I/O端口的電平就是低電平。同時(shí),I/O端口的電平也可以通過輸入電路進(jìn)行讀?。蛔⒁?,I/O端口的電平不一定是輸出的電平。)

63825e38-c683-11ec-bce3-dac502259ad0.png

開漏復(fù)用輸出模式(開漏復(fù)用輸出模式,與開漏輸出模式很是類似。只是輸出的高低電平的來源,不是讓CPU直接寫輸出數(shù)據(jù)寄存器,取而代之利用片上外設(shè)模塊的復(fù)用功能輸出來決定的。)

639b60d6-c683-11ec-bce3-dac502259ad0.png

推挽輸出模式(推挽輸出模式下,通過設(shè)置位設(shè)置/清除寄存器或者輸出數(shù)據(jù)寄存器的值,途經(jīng)P-MOS管和N-MOS管,最終輸出到I/O端口。這里要注意P-MOS管和N-MOS管,當(dāng)設(shè)置輸出的值為高電平的時(shí)候,P-MOS管處于開啟狀態(tài),N-MOS管處于關(guān)閉狀態(tài),此時(shí)I/O端口的電平就由P-MOS管決定:高電平;當(dāng)設(shè)置輸出的值為低電平的時(shí)候,P-MOS管處于關(guān)閉狀態(tài),N-MOS管處于開啟狀態(tài),此時(shí)I/O端口的電平就由N-MOS管決定:低電平。同時(shí),I/O端口的電平也可以通過輸入電路進(jìn)行讀??;注意,此時(shí)I/O端口的電平一定是輸出的電平。)

63c88890-c683-11ec-bce3-dac502259ad0.png

推挽復(fù)用輸出模式(推挽復(fù)用輸出模式,與推挽輸出模式很是類似。只是輸出的高低電平的來源,不是讓CPU直接寫輸出數(shù)據(jù)寄存器,取而代之利用片上外設(shè)模塊的復(fù)用功能輸出來決定的。)

63dc4cc2-c683-11ec-bce3-dac502259ad0.png

什么是推挽結(jié)構(gòu)和推挽電路?

推挽結(jié)構(gòu)一般是指兩個(gè)參數(shù)相同的三極管或MOS管分別受兩互補(bǔ)信號(hào)的控制,總是在一個(gè)三極管或MOS管導(dǎo)通的時(shí)候另一個(gè)截止。高低電平由輸出電平?jīng)Q定。

推挽電路是兩個(gè)參數(shù)相同的三極管或MOSFET,以推挽方式存在于電路中,各負(fù)責(zé)正負(fù)半周的波形放大任務(wù)。電路工作時(shí),兩只對(duì)稱的功率開關(guān)管每次只有一個(gè)導(dǎo)通,所以導(dǎo)通損耗小、效率高。輸出既可以向負(fù)載灌電流,也可以從負(fù)載抽取電流。推拉式輸出級(jí)既提高電路的負(fù)載能力,又提高開關(guān)速度。

開漏輸出和推挽輸出的區(qū)別?

開漏輸出:只可以輸出強(qiáng)低電平,高電平得靠外部電阻拉高。輸出端相當(dāng)于三極管的集電極。適合于做電流型的驅(qū)動(dòng),其吸收電流的能力相對(duì)強(qiáng)(一般20ma以內(nèi));

推挽輸出:可以輸出強(qiáng)高、低電平,連接數(shù)字器件。

關(guān)于推挽輸出和開漏輸出,最后用一幅最簡單的圖形來概括:

63f59998-c683-11ec-bce3-dac502259ad0.png

該圖中左邊的便是推挽輸出模式,其中比較器輸出高電平時(shí)下面的PNP三極管截止,而上面NPN三極管導(dǎo)通,輸出電平VS+;當(dāng)比較器輸出低電平時(shí)則恰恰相反,PNP三極管導(dǎo)通,輸出和地相連,為低電平。右邊的則可以理解為開漏輸出形式,需要接上拉。

STM32中的I/O模式

640ddaee-c683-11ec-bce3-dac502259ad0.png

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    463

    文章

    54010

    瀏覽量

    466181
  • STM32
    +關(guān)注

    關(guān)注

    2309

    文章

    11162

    瀏覽量

    373479
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1328

    瀏覽量

    56231

原文標(biāo)題:STM32中GPIO工作原理詳解

文章出處:【微信號(hào):c-stm32,微信公眾號(hào):STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    嵌入式新手必看!GPIO調(diào)試從0到1:計(jì)算、操作、排錯(cuò)全指南

    在嵌入式開發(fā)中,GPIO(通用輸入輸出口)是最基礎(chǔ)也最常用的硬件接口 —— 小到控制一顆 LED 亮滅、讀取一個(gè)按鍵狀態(tài),大到驅(qū)動(dòng)傳感器、控制外設(shè),都離不開 GPIO。但對(duì)新手來說,“怎么確定
    的頭像 發(fā)表于 02-01 16:55 ?2585次閱讀
    嵌入式新手必看!<b class='flag-5'>GPIO</b>調(diào)試從0到1:計(jì)算、操作、排錯(cuò)全指南

    【MCU學(xué)習(xí)】GPIO詳解

    本實(shí)驗(yàn)通過一個(gè)“小實(shí)驗(yàn)框架 GPIO Mode Lab”,在同一個(gè) GPIO 引腳上依次配置不同模式,并用 ADC 探頭測量電壓、同時(shí)讀取數(shù)字電平,系統(tǒng)化地觀察。
    的頭像 發(fā)表于 01-24 11:45 ?3612次閱讀
    【MCU學(xué)習(xí)】<b class='flag-5'>GPIO</b>詳解

    瑞芯微(EASY EAI)RV1126B GPIO使用

    確保電源已經(jīng)完全切斷。GPIO的輸入/輸出電壓為3.3V,注意電平匹配,否則會(huì)損壞芯片引腳或接入設(shè)備。1.2GPIO硬件資源分布介紹gpiod庫:需要使用上表的【C
    的頭像 發(fā)表于 01-05 09:49 ?4393次閱讀
    瑞芯微(EASY EAI)RV1126B <b class='flag-5'>GPIO</b>使用

    CW32F030配置GPIO的話,需要像STM32那樣禁用JTAG嗎?

    請(qǐng)問CW32F030配置GPIO的話,需要像STM32那樣禁用JTAG嗎
    發(fā)表于 12-08 07:26

    GPIO接口介紹

    1)GPIO概念 GPIO(General Purpose I/O Ports)意思為通用輸入/輸出端口,,功能類似8051的P0—P3,在嵌入式微處理器上通常提供了一種“通用可編程I/O端口
    發(fā)表于 11-20 08:12

    GPIO、PWM、ADC,到底怎么區(qū)分?

    在嵌入式開發(fā)中,我們經(jīng)常聽到GPIO、PWM、ADC這些術(shù)語。初學(xué)者常常搞不清楚它們的區(qū)別和用途:“它們不是都是和電平有關(guān)嗎?為什么還要分這么多種?”今天,我們就把這些基礎(chǔ)概念講清楚,讓你在動(dòng)手開發(fā)
    的頭像 發(fā)表于 11-14 10:28 ?761次閱讀
    <b class='flag-5'>GPIO</b>、PWM、ADC,到底怎么區(qū)分?

    ?X-STM32MP-GNSS1 GNSS擴(kuò)展板技術(shù)解析

    X-STM32MP-GNSS1通過40引腳GPIO連接器與STM32MP微處理器連接,支持針對(duì)各種元件的I^2^C、UART和GPIO連接。該板與
    的頭像 發(fā)表于 10-22 09:28 ?571次閱讀
    ?X-<b class='flag-5'>STM32</b>MP-GNSS1 GNSS擴(kuò)展板技術(shù)解析

    基于X-STM32MP-RBT01機(jī)器人控制板的技術(shù)解析與應(yīng)用指南

    STMicroelectronics X-STM32MP-RBT01機(jī)器人板,帶STSPIN948電機(jī)驅(qū)動(dòng)器IC,用于有刷直流電機(jī)。該板通過使用UART、I^2^C、PWM和GPIO連接的40引腳
    的頭像 發(fā)表于 10-16 10:18 ?866次閱讀
    基于X-<b class='flag-5'>STM32</b>MP-RBT01機(jī)器人控制板的技術(shù)解析與應(yīng)用指南

    STM32 GPIO開漏,NMOS導(dǎo)通能承受多大電流?

    STM32 GPIO 開漏模式,NMOS 導(dǎo)通時(shí)能承受多大電流而不至于損壞。
    發(fā)表于 07-31 07:13

    RK3568驅(qū)動(dòng)指南|第十二篇 GPIO子系統(tǒng)-第130章 GPIO的調(diào)試方法

    RK3568驅(qū)動(dòng)指南|第十二篇 GPIO子系統(tǒng)-第130章 GPIO的調(diào)試方法
    的頭像 發(fā)表于 06-03 11:32 ?1298次閱讀
    RK3568驅(qū)動(dòng)指南|第十二篇 <b class='flag-5'>GPIO</b>子系統(tǒng)-第130章 <b class='flag-5'>GPIO</b>的調(diào)試方法

    迅為RK3568開發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng)GPIO子系統(tǒng)API函數(shù)的引入

    迅為RK3568開發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng)GPIO子系統(tǒng)API函數(shù)的引入
    的頭像 發(fā)表于 05-29 14:05 ?1034次閱讀
    迅為RK3568開發(fā)板驅(qū)動(dòng)指南<b class='flag-5'>GPIO</b>子系統(tǒng)<b class='flag-5'>GPIO</b>子系統(tǒng)API函數(shù)的引入

    迅為RK3568驅(qū)動(dòng)指南GPIO子系統(tǒng) GPIO操作函數(shù)實(shí)驗(yàn)

    迅為電子RK3568開發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng) GPIO操作函數(shù)實(shí)驗(yàn)
    的頭像 發(fā)表于 05-28 15:24 ?1340次閱讀
    迅為RK3568驅(qū)動(dòng)指南<b class='flag-5'>GPIO</b>子系統(tǒng) <b class='flag-5'>GPIO</b>操作函數(shù)實(shí)驗(yàn)

    為什么GPIO配置總是出問題?

    STM32開發(fā)中,GPIO(通用輸入輸出)配置看似簡單,但在實(shí)際開發(fā)中,很多人常常會(huì)遇到這些困惑:明明按照教程配置了GPIO,為什么LED燈就是不亮?為什么有時(shí)候按鍵無法響應(yīng),或者響應(yīng)很慢
    的頭像 發(fā)表于 04-07 11:59 ?1743次閱讀
    為什么<b class='flag-5'>GPIO</b>配置總是出問題?

    STM32學(xué)習(xí)GPIO之設(shè)計(jì)篇

    今日分享 GPIO 結(jié)合寄存器以及硬件電路,再來舉例子分析輸入輸出。寄存器介紹:通過寄存器的位標(biāo)注 rw,我們可知這個(gè)寄存器的某個(gè)位是可讀(r)并且可寫 的(w),我們也可以通過讀寄存器里面的值得
    發(fā)表于 03-27 13:57 ?2次下載

    STM32調(diào)試神器STM32CubeMonitor介紹

    STM32CubeMonitor除了同樣可以提供變量監(jiān)測的功能,還有非常豐富的組件可以搭建各種風(fēng)格的圖形化界面,以及眾多免費(fèi)的第三方組件可以進(jìn)行功能擴(kuò)展。此外,STM32CubeMonito還支持遠(yuǎn)程監(jiān)測功能。
    的頭像 發(fā)表于 03-17 10:45 ?1935次閱讀
    <b class='flag-5'>STM32</b>調(diào)試神器<b class='flag-5'>STM32</b>CubeMonitor<b class='flag-5'>介紹</b>