1 模電知識(shí)
在這里插入圖片描述
VDD
:D=device 表示芯片內(nèi)部工作電源(一般VDD
VSS
:S=series 表示公共連接,通常指電路公共接地端電壓。
TTL肖特基觸發(fā)器即為用肖特基管構(gòu)成的施密特觸發(fā)器,施密特觸發(fā)器利用門閥電壓將引腳模擬信號(hào)變成矩形信號(hào),進(jìn)行轉(zhuǎn)化為0/1數(shù)字信號(hào)存入輸入數(shù)據(jù)寄存器。
當(dāng)引腳電壓高于VDD 時(shí),上方的二極管導(dǎo)通,當(dāng)引腳電壓低于VSS 時(shí),下方的二極管導(dǎo)通,防止不正常電壓引入芯片導(dǎo)致芯片燒毀。(雖有這樣的保護(hù),但不能驅(qū)動(dòng)大功率器件,如直接驅(qū)動(dòng)電機(jī),電機(jī)堵轉(zhuǎn)的反向電流會(huì)燒毀芯片)
- 推挽輸出
PMOS柵極低電平導(dǎo)通,NMOS柵極高電平導(dǎo)通。一般PMOS源極接VDD,NMOS源極接GND。
MOS管中寄生二極管作用是防止VDD過壓的情況下,燒壞mos管。
推挽電路是兩個(gè)參數(shù)相同的三極管或MOSFET,以推挽方式存在于電路中,各負(fù)責(zé)正負(fù)半周的波形放大任務(wù),電路工作時(shí),兩只對(duì)稱的功率開關(guān)管每次只有一個(gè)導(dǎo)通,所以導(dǎo)通損耗小、效率高。輸出既可以向負(fù)載灌電流,也可以從負(fù)載拉取電流。下面分析電路:
當(dāng)輸入為高電平時(shí),經(jīng)過反向后輸出到MOS管柵極為低電平,PMOS的SD導(dǎo)通,OUT輸出為高電平VDD
;當(dāng)輸如為低時(shí),NMOS導(dǎo)通,OUT輸出為低電平
。當(dāng)引腳高低電平切換時(shí),兩個(gè)管子輪流導(dǎo)通,P 管負(fù)責(zé)灌電流,N 管負(fù)責(zé)拉電流,使其負(fù)載能力和開關(guān)速度都比普通的方式有很大的提高。
- 開漏輸出
- 開漏引腳不連接外部的上拉電阻時(shí),只能輸出低電平,如果需要同時(shí)具備輸出高電平的功能,則需要接上拉電阻,很好的一個(gè)優(yōu)點(diǎn)是通過改變上拉電源的電壓,便可以改變傳輸電平。
- 上拉電阻的阻值決定了邏輯電平轉(zhuǎn)換的沿的速度 :阻值越大,速度越低,功耗越?。凰载?fù)載電阻的選擇要兼顧功耗和速度。一般會(huì)帶來上升沿的延時(shí),因?yàn)樯仙厥峭ㄟ^外接上拉電路對(duì)負(fù)載供電,所以若對(duì)延時(shí)有要求,建議用下降沿輸出。
- 開漏輸出可以實(shí)現(xiàn)線與功能,可以將多個(gè)開漏輸出的Pin,經(jīng)上拉電阻連接到一條總線上,實(shí)現(xiàn)與邏輯,主要用于IIC、SMBus總線。
線與:當(dāng)在很多個(gè)開漏引腳連在一起時(shí),外接一上拉電阻,如果有一個(gè)引腳輸出為邏輯0,相當(dāng)于短路接地,所以外電路邏輯電平便為0;只有當(dāng)所有引腳均輸出高阻態(tài)時(shí),才由上拉電阻提供高電平,即為邏輯1。
2 GPIO模塊電路結(jié)構(gòu)
在這里插入圖片描述
2.1 輸入模式
在這里插入圖片描述
- 輸出驅(qū)動(dòng)器關(guān)閉(N/PMOS關(guān)閉)
- 施密特觸發(fā)器打開,可以獲取引腳狀態(tài)
- 通過寄存器使能上/下拉電阻配置輸入模式下的三種狀態(tài)
- 出現(xiàn)在I/O腳上的數(shù)據(jù)在每個(gè)APB2時(shí)鐘被采樣到輸入數(shù)據(jù)寄存器
- 引腳電平狀態(tài)將存入輸入數(shù)據(jù)寄存器
浮空輸入
:上下拉電阻全斷開
上拉輸入
:上拉電阻打開,下拉電阻關(guān)閉
下拉輸入
:下拉電阻打開,上拉電阻關(guān)閉
注意 :
- 設(shè)計(jì)按鍵電路時(shí)可以利用芯片內(nèi)部弱上拉和下拉電阻,這樣省去了外接的電阻。
- 浮空輸入狀態(tài)下,IO的電平狀態(tài)是不確定的,完全由外部輸入決定。
2.2 輸出模式
在這里插入圖片描述
- 輸出驅(qū)動(dòng)器打開
- 施密特觸發(fā)器打開
- 弱上拉和下拉電阻被禁止
- 在每個(gè)APB2時(shí)鐘周期,出現(xiàn)在I/O腳上的數(shù)據(jù)被采樣到輸入數(shù)據(jù)寄存器
- 在開漏模式時(shí),對(duì)輸入數(shù)據(jù)寄存器的讀訪問可得到I/O狀態(tài);在推挽式模式時(shí),對(duì)輸出數(shù)據(jù)寄存器的讀訪問得到最后一次寫的值。
通用推挽輸出
:
- 當(dāng)輸出數(shù)據(jù)寄存器相應(yīng)位為1時(shí),同相端輸出為1,但經(jīng)過反相器(小圓圈)后,到PMOS柵極輸出為0,反相端反相后輸出為1,此時(shí)PMOS導(dǎo)通;NMOS截止,引腳輸出
高電平
。( 推-灌電流 )
- 當(dāng)輸出數(shù)據(jù)寄存器相應(yīng)位為0時(shí),PMOS截止,NMOS導(dǎo)通,引腳輸出
低電平
。( 挽-拉電流 )
通用開漏輸出
:
開漏輸出時(shí),PMOS關(guān)閉(輸出數(shù)據(jù)寄存器的1將端口置于 高阻態(tài) ),只有NMOS工作,但是此時(shí)只能輸出低電平,要輸出高電平必須外加上拉電阻。
上圖為加了上拉電阻的開漏輸出(需用戶外接):當(dāng)輸出數(shù)據(jù)寄存器相應(yīng)位為1時(shí),反相端輸出0,此時(shí)NMOS截止,由外加的上拉電阻提供高電平
。當(dāng)輸出數(shù)據(jù)寄存器相應(yīng)位為0時(shí),NMOS導(dǎo)通,引腳輸出低電平
。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
相關(guān)推薦
/Gather DMA模式IN端點(diǎn)1進(jìn)行操作 寄存器的地址偏移分別是 0x900+i*0x20 0x908+i*0x20 0x910+i*0x20
發(fā)表于 07-16 16:42
?1714次閱讀
STM32F4工程--IO口--GPIO寄存器詳解 ----芯片:STM32F429IGT6----參考資料:正點(diǎn)原子視頻一、基礎(chǔ)知識(shí)1、每組IO口包含10個(gè)
發(fā)表于 01-18 06:53
DSP2812寄存器詳解DSP2812寄存器詳DSP2812寄存器詳解解
發(fā)表于 01-08 14:17
?8次下載
STM32 GPIO寄存器ODR BSRR BRR詳細(xì)介紹
發(fā)表于 07-29 10:27
?2次下載
51寄存器的所有寄存器名稱,(包括寄存器每一位的作用及用法)資源詳解
發(fā)表于 10-16 13:04
?14次下載
STM32的每個(gè)GPIO端口都有兩個(gè)特別的寄存器,GPIOx_BSRR和GPIOx_BRR寄存器,通過這兩個(gè)寄存器可以直接對(duì)對(duì)應(yīng)的GPIOx端口置1
發(fā)表于 11-26 11:50
?1次下載
GPIO即通用輸入/輸出 (General Purpose Input Output)
包括:
兩個(gè)32位的配置寄存器 GPIOx->CRL,GPIOx->CRH
兩個(gè)32位的數(shù)據(jù)
發(fā)表于 01-11 09:03
?1.3w次閱讀
對(duì)于GPIO端口,每個(gè)端口有16個(gè)引腳,每個(gè)引腳的模式由寄存器的四個(gè)位控制,每四位又分為兩位控制引腳配置(CNFy[1:0]),兩位控制引腳的模式
發(fā)表于 12-04 14:54
?1.3w次閱讀
本文主要介紹STM32F103系列芯片的地址映射和寄存器映射原理,GPIO端口的初始化設(shè)置三步驟(時(shí)鐘配置、輸入輸出模式設(shè)置、最大速率設(shè)置)。
發(fā)表于 12-04 12:06
?11次下載
文章目錄一、STM32F103系列芯片的地址映射和寄存器映射原理1.寄存器2.地址映射和寄存器映射原理二、GPIO端口的初始化
發(fā)表于 12-05 14:21
?10次下載
,一般高16位保留BSRR寄存器32位分為低16位BSRRL和高16位BSRRH,BSRRL配置一組IO口的16個(gè)IO口的狀態(tài)(1),BSRRH配置復(fù)位狀態(tài)(0)。每組GPIO端口的寄存器
發(fā)表于 12-08 17:06
?5次下載
配置寄存器使STM32最小系統(tǒng)板上的LED燈點(diǎn)亮根據(jù)原理圖,要使D2點(diǎn)亮,需要將PC13拉低,分為以下步驟:使能GPIO的時(shí)鐘配置GPIO13為輸出模式配置
發(fā)表于 12-08 17:21
?3次下載
GPIO工作模式1、浮空輸入模式 GPIO_Mode_IN_FLOATING引腳狀態(tài)不確定,引
發(fā)表于 12-08 17:21
?7次下載
、4個(gè) 32 位配置寄存器1、GPIOx_MODER——用于選擇 I/O 方向(輸入、輸出、AF(復(fù)用)、模擬)。2、GPIOx_OTYPER——用于選擇輸出類型(推挽或開漏)(IO口設(shè)置為輸入時(shí)不用設(shè)置此寄存器)3、GPIOx
發(fā)表于 12-28 19:26
?0次下載
1. GPIO相關(guān)寄存器1.1 配置寄存器(CRL、CRH)1.2 數(shù)據(jù)寄存器(IDR、ODR)1.3 位設(shè)置/清除
發(fā)表于 01-17 09:33
?2次下載
評(píng)論