99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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實(shí)現(xiàn)與外部通訊、控制以及數(shù)據(jù)采集方案介紹

454398 ? 來(lái)源:博客園 ? 作者:謝嘉敏 ? 2020-10-19 12:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

GPIO是什么

GPIO是通用輸入輸出端口的簡(jiǎn)稱,簡(jiǎn)單來(lái)說(shuō)就是STM32可控制的引腳,STM32芯片的GPIO引腳與外部設(shè)備連接起來(lái),從而實(shí)現(xiàn)與外部通訊、控制以及數(shù)據(jù)采集的功能。
STM32芯片的GPIO被分成很多組,每組有16個(gè)引腳,如型號(hào)為STM32F103ZET6型號(hào)的芯片有GPIOA、GPIOB、GPIOC至GPIOG共7組GPIO,芯片一共144個(gè)引腳,其中GPIO就占了一大部分,所有的GPlO引腳都有基本的輸入輸出功能。
最基本的輸出功能是由STM32控制引腳輸出高、低電平,實(shí)現(xiàn)開關(guān)控制,如把GPIO引腳接入到LED燈,那就可以控制LED燈的亮滅,引腳接入到繼電器或三極管,那就可以通過(guò)繼電器或三極管控制外部大功率電路的通斷。
最基本的輸入功能是檢測(cè)外部輸入電平,如把GPIO引腳連接到按鍵,通過(guò)電平高低區(qū)分按鍵是否被按下。

點(diǎn)亮PB0 LED:

GPIO功能框圖

每個(gè)GPI/O端口有兩個(gè)32位配置寄存器(GPIOX-CRL,GPIOx-CRH),兩個(gè)32位數(shù)據(jù)寄存器(GPIOxIDR和GPIOX-ODR),一個(gè)32位置位/復(fù)位寄存器(GPIOx-BSRR),一個(gè)16位復(fù)位寄存器(GPIOx-BRR)和一個(gè)32位鎖定寄存器(GPIOX-LCKR).
根據(jù)數(shù)據(jù)手冊(cè)中列出的每個(gè)I/O端口的特定硬件特征,GPIO端口的每個(gè)位可以由軟件分別配置成多種模式:

輸入浮空

輸入上拉

輸入下拉

模擬輸入

開漏輸出

推挽式輸出

推挽式復(fù)用功能

開漏復(fù)用功能

每個(gè)I/O端口位可以自由編程,然而I/O端口寄存器必須按32位字被訪問(wèn)(不允許半字或字節(jié)訪問(wèn)),GPIOx-BSRR和GPIOxBRR寄存器允許對(duì)任何GPIO寄存器的讀/更改的獨(dú)立訪問(wèn);這樣,在讀和更改訪間之間產(chǎn)生IRQ時(shí)不會(huì)發(fā)生危險(xiǎn)。

圖上除了I/O引腳我們能在芯片外部看到,其余部分都在芯片內(nèi)部

1:保護(hù)模塊:當(dāng)I/O引腳輸入正電壓大于VDD,電流就會(huì)流向VDD不會(huì)流進(jìn)芯片內(nèi)部,從而保護(hù)電路(遠(yuǎn)大于VDD時(shí)二極管會(huì)燒壞,因此不能將引腳直接接電極,要用電機(jī)驅(qū)動(dòng)),反之輸入負(fù)電壓超過(guò)VSS時(shí),電流就會(huì)從VSS往外流。

2:推挽、開漏或關(guān)閉:用以下兩個(gè)寄存器配置,每4個(gè)位控制一個(gè)GPIO,配置輸入輸出的各種模式(右上的上拉下拉開關(guān)也是用這個(gè)寄存器設(shè)置的:10)。

簡(jiǎn)化電路圖:

當(dāng)INT輸入為1,取反后為0,上方的Ug

當(dāng)INT輸入為0,取反后為1,上方的Ug=Us,VDD3.3V電流流向Ug,VDD與OUT斷開;下方的Ug>Us,GND與OUT導(dǎo)通,OUT電流流向GND。

可以輸出高低電平,用于連接數(shù)字器件,高電平由VDD決定,低電平由VSS決定。

推挽結(jié)構(gòu)指兩個(gè)三極管受兩路互補(bǔ)的信號(hào)控制,總是在一個(gè)導(dǎo)通的時(shí)候另外一個(gè)截止,優(yōu)點(diǎn)開關(guān)效率效率高,電流大,驅(qū)動(dòng)能力強(qiáng)。

輸出高電平時(shí),電流輸出到負(fù)載,叫灌電流,可以理解成推,輸出低電平時(shí),負(fù)載電流流向芯片,叫拉電流,即挽。

開漏輸出一般只能輸出低電平,想輸出高電平要另外加上拉電阻,而且此時(shí)NMOS處于截止?fàn)顟B(tài)(當(dāng)INT為1時(shí))

輸出高電平時(shí),VDD如果是3.3V,OUT就輸出3.3V,VDD如果是5V,OUT就輸出5V

只能輸出低電平,不能輸出高電平。

如果要輸出高電平,則需要外接上拉。

開漏輸出具有"線與"功能,一個(gè)為低,全部為低,多用于I2C和SMBUS總線。

3:輸出數(shù)據(jù)寄存器:用以下寄存器配置,可以直接設(shè)置ODR,也可以先設(shè)置BSRR,最后ODR會(huì)被更改。

(右上的上拉下拉開關(guān)也是用這個(gè)BSRR寄存器設(shè)置的)

4:復(fù)用功能輸出:用外設(shè)輸出時(shí)(例如串口),第3部分就沒(méi)用了。

5:輸入數(shù)據(jù)寄存器:讀出引腳數(shù)據(jù)

6:復(fù)用功能輸入:外設(shè)引腳輸入。

7:模擬輸入:ADC采集,不經(jīng)過(guò)肖特基觸發(fā)器

GPIO輸出初始化順序

1、選定具體的GPIO
2、配置GPIO工作模式(CRL和CRH寄存器)
3、控制GPIO輸出高低電平(ODR,BRR和BSRR)

點(diǎn)亮B0 LED


編輯:hfy

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

    關(guān)注

    242

    文章

    23849

    瀏覽量

    674385
  • 三極管
    +關(guān)注

    關(guān)注

    145

    文章

    3658

    瀏覽量

    124706
  • 繼電器
    +關(guān)注

    關(guān)注

    133

    文章

    5438

    瀏覽量

    151544
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1280

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    風(fēng)機(jī) PLC 全參數(shù)實(shí)時(shí)數(shù)據(jù)采集與遠(yuǎn)程智能控制系統(tǒng)方案

    PLC風(fēng)機(jī)數(shù)據(jù)采集遠(yuǎn)程控制系統(tǒng)方案
    的頭像 發(fā)表于 06-27 16:51 ?179次閱讀

    數(shù)據(jù)采集卡與步進(jìn)電機(jī)

    本文介紹了步進(jìn)電機(jī)的工作原理,以及如何使用數(shù)據(jù)采集控制步進(jìn)電機(jī)動(dòng)作。
    的頭像 發(fā)表于 05-26 15:53 ?714次閱讀
    <b class='flag-5'>數(shù)據(jù)采集</b>卡與步進(jìn)電機(jī)

    CNC數(shù)據(jù)采集到MES系統(tǒng)方案

    將CNC數(shù)據(jù)采集到MES系統(tǒng)的方案,旨在實(shí)現(xiàn)生產(chǎn)過(guò)程的數(shù)字化、自動(dòng)化和智能化管理。以下是一個(gè)詳細(xì)的方案介紹: 一、
    的頭像 發(fā)表于 03-14 15:13 ?423次閱讀
    CNC<b class='flag-5'>數(shù)據(jù)采集</b>到MES系統(tǒng)<b class='flag-5'>方案</b>

    數(shù)據(jù)采集控制系統(tǒng)應(yīng)用說(shuō)明

    在快速發(fā)展的科技時(shí)代,數(shù)據(jù)采集控制系統(tǒng)作為工業(yè)自動(dòng)化領(lǐng)域的核心組成部分,智能化應(yīng)用、廣泛融入,以極快的速度推動(dòng)著制造業(yè)的轉(zhuǎn)型升級(jí),提升生產(chǎn)效率,實(shí)現(xiàn)資源的優(yōu)化配置,為企業(yè)的可持續(xù)發(fā)展奠定堅(jiān)實(shí)
    的頭像 發(fā)表于 02-13 15:37 ?466次閱讀

    數(shù)據(jù)采集控制器是什么

    在現(xiàn)代信息科學(xué)和工業(yè)自動(dòng)化領(lǐng)域,數(shù)據(jù)采集控制器扮演著至關(guān)重要的角色,是連接物理世界與數(shù)字世界的橋梁,更是推動(dòng)智能化、自動(dòng)化進(jìn)程的關(guān)鍵技術(shù)。從智能制造到智慧城市,從環(huán)境監(jiān)測(cè)到醫(yī)療健康,數(shù)據(jù)采集
    的頭像 發(fā)表于 02-13 15:35 ?430次閱讀

    溫度變送器(傳感器)IO數(shù)據(jù)采集方案

    溫度變送器數(shù)據(jù)采集方案主要涵蓋以下幾個(gè)方面: 一、數(shù)據(jù)采集方式 溫度變送器的數(shù)據(jù)采集方式一般有兩種: ? 直接采集法 ?:這種
    的頭像 發(fā)表于 12-17 09:42 ?948次閱讀

    FPGA的多通道數(shù)據(jù)采集傳輸系統(tǒng)

    一、系統(tǒng)總體方案設(shè)計(jì) 為了滿足油田增壓站對(duì)數(shù)據(jù)采集的需求,我們?cè)O(shè)計(jì)了一套基于FPGA的多通道數(shù)據(jù)采集與傳輸系統(tǒng)。系統(tǒng)以FPGA作為主控制器,利用外部
    的頭像 發(fā)表于 12-09 10:45 ?820次閱讀
    FPGA的多通道<b class='flag-5'>數(shù)據(jù)采集</b>傳輸系統(tǒng)

    stm32 GPIO中斷配置教程

    理解GPIO中斷 在STM32中,GPIO中斷允許微控制器在引腳狀態(tài)變化時(shí)(如從低到高或從高到低)立即響應(yīng),而無(wú)需不斷輪詢引腳狀態(tài)。這對(duì)于處理外部
    的頭像 發(fā)表于 11-19 15:53 ?3484次閱讀

    STM32 GPIO的八種工作模式

    GPIO (general purpose input output)是通用輸入輸出端口的簡(jiǎn)稱,簡(jiǎn)單來(lái)說(shuō)就是軟件可控制的引腳,STM32芯片的GPIO引腳與
    的頭像 發(fā)表于 11-06 09:40 ?2019次閱讀
    <b class='flag-5'>STM32</b> <b class='flag-5'>GPIO</b>的八種工作模式

    PLC數(shù)據(jù)采集解決方案

    一、背景及需求分析 隨著工業(yè)自動(dòng)化程度的不斷提升,PLC作為工業(yè)控制系統(tǒng)的核心部件,其數(shù)據(jù)采集與監(jiān)控的準(zhǔn)確性和實(shí)時(shí)性變得尤為重要。然而,傳統(tǒng)的PLC控制系統(tǒng)往往存在數(shù)據(jù)孤島、效率低下、
    的頭像 發(fā)表于 10-31 15:58 ?763次閱讀
    PLC<b class='flag-5'>數(shù)據(jù)采集解決方案</b>

    和利時(shí)PLC數(shù)據(jù)采集網(wǎng)關(guān)有什么功能

    和利時(shí)PLC數(shù)據(jù)采集網(wǎng)關(guān)是一款專為工業(yè)自動(dòng)化領(lǐng)域設(shè)計(jì)的設(shè)備通訊終端產(chǎn)品,具備多種功能,為工業(yè)設(shè)備的遠(yuǎn)程監(jiān)控、控制和維護(hù)提供了強(qiáng)有力的支持。以下是和利時(shí)PLC數(shù)據(jù)采集網(wǎng)關(guān)的主要功能
    的頭像 發(fā)表于 10-30 13:45 ?664次閱讀
    和利時(shí)PLC<b class='flag-5'>數(shù)據(jù)采集</b>網(wǎng)關(guān)有什么功能

    紡絲機(jī)PLC數(shù)據(jù)采集解決方案

    紡絲機(jī)PLC數(shù)據(jù)采集解決方案通過(guò)集成PLC(可編程邏輯控制器)和工業(yè)物聯(lián)網(wǎng)技術(shù),實(shí)現(xiàn)紡絲機(jī)生產(chǎn)數(shù)據(jù)的實(shí)時(shí)采集、傳輸、監(jiān)控與分析。該
    的頭像 發(fā)表于 10-24 14:29 ?613次閱讀

    GPIO靜電放電防護(hù)方案

    GPIO靜電放電防護(hù)方案 方案簡(jiǎn)介 GPIO的全稱是General Purpose Input Output (通用輸入/輸出端口),簡(jiǎn)稱為GPIO
    的頭像 發(fā)表于 09-19 17:02 ?740次閱讀
    <b class='flag-5'>GPIO</b>靜電放電防護(hù)<b class='flag-5'>方案</b>

    SCADA數(shù)據(jù)采集網(wǎng)關(guān)是什么?有什么功能?

    數(shù)據(jù)采集網(wǎng)關(guān)不僅負(fù)責(zé)實(shí)時(shí)數(shù)據(jù)采集,還參與數(shù)據(jù)的處理、監(jiān)控和控制,是實(shí)現(xiàn)工業(yè)自動(dòng)化和提高生產(chǎn)效率
    的頭像 發(fā)表于 09-10 14:08 ?924次閱讀
    SCADA<b class='flag-5'>數(shù)據(jù)采集</b>網(wǎng)關(guān)是什么?有什么功能?

    CKS32F107xx系列MCU的GPIO內(nèi)部硬件結(jié)構(gòu)和工作模式

    GPIO是通用輸入輸出端口的簡(jiǎn)稱,也是CKS32可控制的引腳,CKS32芯片的GPIO引腳與外部設(shè)備連接起來(lái),從而實(shí)現(xiàn)
    的頭像 發(fā)表于 07-22 09:23 ?1280次閱讀
    CKS32F107xx系列MCU的<b class='flag-5'>GPIO</b>內(nèi)部硬件結(jié)構(gòu)和工作模式