日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]一、GPIO的綜合描述stm32每一個GPIO端口擁有2個32bits的configuration寄存器(GPIOx_CRL,GPIOx_CRH),2個32bits的數(shù)據(jù)寄存器(GPIOx_IDR,GPIOx_ODR),1個32bits的set/reset寄存器(GPIOx_BSRR),1個16bits的reset寄

一、GPIO的綜合描述

stm32每一個GPIO端口擁有2個32bits的configuration寄存器(GPIOx_CRL,GPIOx_CRH),2個32bits的數(shù)據(jù)寄存器(GPIOx_IDR,GPIOx_ODR),1個32bits的set/reset寄存器(GPIOx_BSRR),1個16bits的reset寄存器(GPIOx_BRR)和1個32bits的Lock寄存器(GPIOx_LCKR)。

(一)每一個IO引腳都可以使用軟件配置為以下幾種模式:

1. 浮空輸入

2. 帶上拉輸入

3. 帶下拉輸入

4. 模擬輸入

5. 開漏輸出——(此模式可實現(xiàn)hotpower說的真雙向IO)

6. 推挽輸出

7. 復用功能的推挽輸出

8. 復用功能的開漏輸出

模式7和模式8需根據(jù)具體的復用功能決定。

每一個IO引腳都可以單獨編程,但是每一個IO寄存器只能32bits訪問(半字或者字節(jié)訪問都被禁止)。

(二)專門的寄存器(GPIOx_BSRR和GPIOx_BRR)實現(xiàn)對GPIO口的原子操作,即回避了設置或清除I/O端口時的“讀-修改-寫”操作,使得設置或清除I/O端口的操作不會被中斷處理打斷而造成誤動作。

(三)每個GPIO口都可以作為外部中斷的輸入,便于系統(tǒng)靈活設計。

(四)I/O口的輸出模式下,有3種輸出速度可選(2MHz、10MHz和50MHz),這有利于噪聲控制。

(五)所有I/O口兼容CMOS和TTL,多數(shù)I/O口兼容5V電平。

(六)大電流驅動能力:GPIO口在高低電平分別為0.4V和VDD-0.4V時,可以提供或吸收8mA電流;如果把輸入輸出電平分別放寬到1.3V和VDD-1.3V時,可以提供或吸收20mA電流。

(七)具有獨立的喚醒I/O口。

(八)很多I/O口的復用功能可以重新映射。

(九)GPIO口的配置具有上鎖功能,當配置好GPIO口后,可以通過程序鎖住配置組合,直到下次芯片復位才能解鎖。此功能非常有利于在程序跑飛的情況下保護系統(tǒng)中其他的設備,不會因為某些I/O口的配置被改變而損壞——如一個輸入口變成輸出口并輸出電流。

二、GPIO的配置

(一) GPIO模式選擇和速度匹配

(1) 浮空輸入_IN_FLOATING ——浮空輸入,可以做KEY識別,RX1。

(2)帶上拉輸入_IPU——IO內部上拉電阻輸入。

(3)帶下拉輸入_IPD—— IO內部下拉電阻輸入。

(4) 模擬輸入_AIN ——應用ADC模擬輸入,或者低功耗下省電。

(5)開漏輸出_OUT_OD ——IO輸出0接GND,IO輸出1,懸空,需要外接上拉電阻,才能實現(xiàn)輸出高電平。當輸出為1時,IO口的狀態(tài)由上拉電阻拉高電平,但由于是開漏輸出模式,這樣IO口也就可以由外部電路改變?yōu)榈碗娖交虿蛔?。可以讀IO輸入電平變化,實現(xiàn)C51的IO雙向功能。

(6)推挽輸出_OUT_PP ——IO輸出0-接GND, IO輸出1 -接VCC,讀輸入值是未知的。

(7)復用功能的推挽輸出_AF_PP ——片內外設功能(I 2C的SCL,SDA)

(8)復用功能的開漏輸出_AF_OD——片內外設功能(TX1,MOSI,MISO.SCK)

GPIO輸出的速度匹配:

GPIO_Speed_10MHz 最高輸出速率10MHz

GPIO_Speed_2MHz 最高輸出速率2MHz

GPIO_Speed_50MHz 最高輸出速率50MHz

I/O口的輸出模式下,有3種輸出速度可選(2MHz、10MHz和50MHz),這個速度是指I/O口驅動電路的響應速度而不是輸出信號的速度,輸出信號的速度與程序有關(芯片內部在I/O口的輸出部分安排了多個不同響應速度的輸出驅動電路,用戶可以根據(jù)自己的需要選擇合適的驅動電路)。通過選擇速度來選擇不同的輸出驅動模塊,達到最佳的噪聲控制和降低功耗的目的。高頻的驅動電路,噪聲也高,當不需要高的輸出頻率時,請選用低頻驅動電路,這樣非常有利于提高系統(tǒng)的EMI性能。當然如果要輸出較高頻率的信號,但卻選用了較低頻率的驅動模塊,很可能會得到失真的輸出信號。

有一點是關鍵,即GPIO的引腳速度跟應用匹配(推薦10倍以上)。比如:

1) 對于串口,假如最大波特率只需115.2k,那么用2M的GPIO的引腳速度就夠了,既省電也噪聲小。

2 )對于I2C接口,假如使用400k波特率,若想把余量留大些,那么用2M的GPIO的引腳速度或許不夠,這時可以選用10M的GPIO引腳速度。

3 )對于SPI接口,假如使用18M或9M波特率,用10M的GPIO的引腳速度顯然不夠了,需要選用50M的GPIO的引腳速度。

(二) 在STM32中如何配置片內外設使用的IO端口

①配置輸入的時鐘;②初始化后即被激活(開啟);③如果使用該外設的輸入輸出管腳,則需要配置相應的GPIO端口(否則該外設對應的輸入輸出管腳可以做普通GPIO管腳使用);④再對外設進行詳細配置。

對應到外設的輸入輸出功能有下述三種情況:

①外設對應的管腳為輸出:需要根據(jù)外圍電路的配置選擇對應的管腳為復用功能的推挽輸出或復用功能的開漏輸出。

②外設對應的管腳為輸入:則根據(jù)外圍電路的配置可以選擇浮空輸入、帶上拉輸入或帶下拉輸入。

③ADC對應的管腳:配置管腳為模擬輸入。

如果把端口配置成復用輸出功能,則引腳和輸出寄存器斷開,并和片上外設的輸出信號連接。將管腳配置成復用輸出功能后,如果外設沒有被激活,那么它的輸出將不確定。

(三) 通用IO端口(GPIO)初始化:

1、 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | B | C, ENABLE):使能APB2總線外設時鐘;

2 、RCC_ APB2PeriphResetCmd (RCC_APB2Periph_GPIOA | B | C, DISABLE):釋放GPIO復位;

3、配置各個PIN端口(模擬輸入_AIN、輸入浮空_IN_FLOATING、輸入上拉_IPU、輸入下拉_IPD、開漏輸出_OUT_OD、推挽式輸出_OUT_PP、推挽式復用輸出_AF_PP、開漏復用輸出_AF_OD)和匹配速度。

4 、GPIO初始化完成

附注1:PLL(Phase Locked Loop): 為鎖相回路或鎖相環(huán),用來統(tǒng)一整合時脈訊號,使內存能正確的存取資料。PLL用于振蕩器中的反饋技術。許多電子設備要正常工作,通常需要外部的輸入信號與內部的振蕩信號同步,利用鎖相環(huán)路就可以實現(xiàn)這個目的。

附注2:STM32的GPIO口的輸出:開漏輸出和推挽輸出

1、推挽輸出與開漏輸出的區(qū)別:

>>推挽輸出:可以輸出高,低電平,連接數(shù)字器件

>>開漏輸出:輸出端相當于三極管的集電極. 要得到高電平狀態(tài)需要上拉電阻才行. 適合于做電流型的驅動,其吸收電流的能力相對強(一般20ma以內).

推挽結構一般是指兩個三極管分別受兩互補信號的控制,總是在一個三極管導通的時候另一個截止.

要實現(xiàn) 線與 需要用OC(open collector)門電路.是兩個參數(shù)相同的三極管或MOSFET,以推挽方式存在于電路中,各負責正負半周的波形放大任務,電路工作時,兩只對稱的功率開關管每次只有一個導通,所以導通損耗小,效率高。輸出既可以向負載灌電流,也可以從負載抽取電流。

當端口配置為輸出時:

開漏模式:輸出 0 時,N-MOS 導通,P-MOS 不被激活,輸出0。

輸出 1 時,N-MOS 高阻, P-MOS 不被激活,輸出1(需要外部上拉電路),也就是說此模式下只有 N-MOS對輸出起作用;此模式可以把端口作為雙向IO使用。

推挽模式:輸出 0 時,N-MOS 導通,P-MOS 高阻,輸出0。

輸出 1 時,N-MOS 高阻,P-MOS 導通,輸出1(不需要外部上拉電路)。

簡單來說,開漏是0的時候接GND ,1的時候浮空;推挽是0的時候接GND ,1的時候接VCC。

2、開漏電路特點及應用

在電路設計時我們常常遇到開漏(open drain)和開集(open collector)的概念。所謂開漏電路概念中提到的“漏”就是指MOSFET的漏極。同理,開集電路中的“集”就是指三極管的集電極。開漏電路就是指以MOSFET的漏極為輸出的電路。一般的用法是會在漏極外部的電路添加上拉電阻。完整的開漏電路應該由開漏器件和開漏上拉電阻組成。

組成開漏形式的電路有以下幾個特點:

1) 利用 外部電路的驅動能力,減少IC內部的驅動。當IC內部MOSFET導通時,驅動電流是從外部的VCC流經(jīng)R pull-up ,MOSFET到GND。IC內部僅需很下的柵極驅動電流。

2) 可以將多個開漏輸出的Pin,連接到一條線上。形成 “與邏輯” 關系。當PIN_A、PIN_B、PIN_C任意一個變低后,開漏線上的邏輯就為0了。這也是I2C,SMBus等總線判斷總線占用狀態(tài)的原理。

3)可以利用改變上拉電源的電壓,改變傳輸電平。IC的邏輯電平由電源Vcc1決定,而輸出高電平則由Vcc2決定。這樣我們就可以用低電平邏輯控制輸出高電平邏輯了。

4)開漏Pin不連接外部的上拉電阻,則只能輸出低電平(因此對于經(jīng)典的51單片機的P0口而言,要想做輸入輸出功能必須加外部上拉電阻,否則無法輸出高電平邏輯)。

5)標準的開漏腳一般只有輸出的能力。添加其它的判斷電路,才能具備雙向輸入、輸出的能力。

應用中需注意:

1) 開漏和開集的原理類似,在許多應用中我們利用開集電路代替開漏電路。例如,某輸入Pin要求由開漏電路驅動。則我們常見的驅動方式是利用一個三極管組成開集電路來驅動它,即方便又節(jié)省成本。

2)上拉電阻R pull-up的 阻值 決定了 邏輯電平轉換的沿的速度 。阻值越大,速度越低功耗越小。反之亦然。

Push-Pull輸出就是一般所說的推挽輸出,在CMOS電

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。

關鍵字: 工業(yè)電機 驅動電源

LED 驅動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅動電源 照明系統(tǒng) 散熱

根據(jù)LED驅動電源的公式,電感內電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅動電源

關鍵字: LED 驅動電源 開關電源

LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅動電源
關閉