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)不再提示

GPIO做輸出還能作外部中斷輸入嗎?

茶話MCU ? 來(lái)源:ST MCU 信息交流 ? 2020-07-05 10:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

偶爾會(huì)有人問(wèn)起STM32芯片的GPIO做輸出時(shí)還是否可能作為外部中斷觸發(fā)輸入,這里一起聊聊該話題。

作為STM32芯片,其外部中斷觸發(fā)源可以是硬件模式或軟件模式。所謂軟件模式就是通過(guò)操作相關(guān)寄存器產(chǎn)生內(nèi)部中斷觸發(fā)信號(hào)并向內(nèi)核NVIC控制器申請(qǐng)中斷。硬件模式自然是指來(lái)自GPIO引腳的電平跳變信號(hào)經(jīng)邊沿檢測(cè)器形成中斷觸發(fā)信號(hào)向內(nèi)核申請(qǐng)中斷?!咀ⅲ哼€有個(gè)別外設(shè)事件也可以作為外部中斷觸發(fā)源映射到外部中斷控制器?!?/p>

我們這里要談的是基于硬件模式的外部中斷話題。當(dāng)STM32的GPIO作為輸出時(shí),可能是通用GPIO輸出也可能是基于其它外設(shè)復(fù)用情況下的輸出,即復(fù)用輸出。

下圖是GPIO作為基本輸入輸出時(shí)的功能框圖。

下面是GPIO作為其它外設(shè)的復(fù)用輸出腳時(shí)的功能框圖。

不難看出,所謂GPIO復(fù)用輸出,就是將自身輸出數(shù)據(jù)寄存器與輸出控制電路及外部管腳斷開來(lái),并將輸出控制電路及外部管腳借讓給其它外設(shè)使用。通俗點(diǎn)說(shuō),所謂GPIO復(fù)用輸出就是其它外設(shè)找GPIO借道而已。

從上面兩幅圖來(lái)看,不論GPIO通用輸出還是復(fù)用輸出,外部管腳的電平都可以連接到內(nèi)部輸入單元,管腳上的電平也應(yīng)該可以被內(nèi)部邊沿檢測(cè)器檢測(cè)到。也就是說(shuō),即使GPIO作為輸出,只要管腳上的電平跳變能被邊沿檢測(cè)器識(shí)別,按理可以作為外部中斷觸發(fā)源。

下面不妨用個(gè)簡(jiǎn)單的實(shí)例驗(yàn)證下。

這里使用一塊STM32F4系列的開放板,通過(guò)定時(shí)器1的通道1輸出8個(gè)PWM信號(hào),同時(shí)將該定時(shí)器輸出通道所用管腳PA8配置為上升沿觸發(fā)的外部中斷輸入。PC13接一個(gè)按鍵,每按鍵一次啟動(dòng)定時(shí)器輸出8個(gè)脈沖。

我使用STM32CubeMx圖形化工具進(jìn)行配置。因?yàn)橐裀WM輸出腳同時(shí)配置為外部中斷輸入這里不好操作。我先借用旁邊的PA9進(jìn)行配置,等生成初始化代碼后我再將PA9改成PA8以及對(duì)應(yīng)的中斷矢量。TIM1配置在單脈沖模式,我在PC3按鍵中斷里啟動(dòng)TIM1的計(jì)數(shù)器。

TIM1的基本配置如下:

再就是兩個(gè)GPIO端口PC13/PA9的EXTI配置,分別對(duì)應(yīng)按鍵腳和PWM輸出腳。

時(shí)鐘、調(diào)試口等配置完畢后生成初始化代碼,然后在代碼里將之前基于PA9生成的代碼改為基于TIM1-CH1的輸出腳PA8的。

主程序功能代碼很簡(jiǎn)單,就是配置TIM1-CH1的pwm輸出。

在用戶按鍵中斷程序里啟動(dòng)TIM1的計(jì)數(shù)器。

在基于PWM輸出腳PA8對(duì)應(yīng)的外部中斷程序里對(duì)中斷次數(shù)進(jìn)行統(tǒng)計(jì)。因它被配置為上沿觸發(fā),每次連續(xù)輸出8個(gè)脈沖的話,統(tǒng)計(jì)值應(yīng)該為8。

下面看看代碼運(yùn)行結(jié)果:

每按鍵一次輸出8個(gè)脈沖,沒有問(wèn)題。

再看看基于這個(gè)8個(gè)輸出脈沖統(tǒng)計(jì)到中斷次數(shù),也確實(shí)為8次?!救缦聢D所示]

顯然,當(dāng)GPIO做為輸出時(shí)還是可以感受到外部管腳電平的變化情況,并可以做為外部中斷觸發(fā)源申請(qǐng)中斷。結(jié)合上面GPIO輸出模式下的功能框圖來(lái)看,當(dāng)它被配置為輸出時(shí)是具備雙向特性的。當(dāng)然,一般來(lái)講,如果希望GPIO做為雙向驅(qū)動(dòng)口使用時(shí),建議將其配置為OD開漏結(jié)合上拉模式。比方在做I2C應(yīng)用時(shí),將通信GPIO端口配置為開漏模式結(jié)合上拉電阻即可進(jìn)行雙向數(shù)據(jù)通信,無(wú)須對(duì)通信口的GPIO模式來(lái)回切換。

聲明:本文內(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)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5433

    瀏覽量

    124385
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1280

    瀏覽量

    54034

原文標(biāo)題:GPIO做輸出還能作外部中斷輸入嗎?

文章出處:【微信號(hào):stmcu832,微信公眾號(hào):茶話MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    第六章 外部中斷

    本章介紹W55MH32的IO口作為外部中斷輸入的使用。先闡述了NVIC(嵌套向量中斷控制器) 的結(jié)構(gòu)、寄存器、優(yōu)先級(jí)及相關(guān)函數(shù),再說(shuō)明EXTI(
    的頭像 發(fā)表于 05-26 16:27 ?504次閱讀
    第六章 <b class='flag-5'>外部</b><b class='flag-5'>中斷</b>

    基于小凌派RK2206開發(fā)板:OpenHarmony如何使用IoT接口控制GPIO中斷

    1、實(shí)驗(yàn)簡(jiǎn)介本實(shí)驗(yàn)將演示如何在小凌派-RK2206開發(fā)板上使用IOT庫(kù)的GPIO中斷模式,進(jìn)行GPIO編程開發(fā)。例程將創(chuàng)建一個(gè)任務(wù),通過(guò)配置GPIO引腳為
    的頭像 發(fā)表于 04-21 10:39 ?435次閱讀
    基于小凌派RK2206開發(fā)板:OpenHarmony如何使用IoT接口控制<b class='flag-5'>GPIO</b><b class='flag-5'>中斷</b>

    ADS2812UPS使用外部AD8364,PWM中斷觸發(fā)外部AD,但電流采樣不到是為什么?

    2812UPS使用外部AD8364,PWM中斷觸發(fā)外部AD,但電流采樣不到,請(qǐng)問(wèn)為什么?電壓能采樣到,我的電流霍爾是放在輸出濾波電感之前
    發(fā)表于 02-13 06:19

    GPIO使用教程 GPIO接口應(yīng)用

    交互,實(shí)現(xiàn)外部設(shè)備的控制和數(shù)據(jù)傳輸。 一、GPIO的基本概念 GPIO的全稱是General-Purpose Input/Output,即通用輸入/
    的頭像 發(fā)表于 01-31 10:10 ?3337次閱讀

    GPIO模塊與其他外設(shè)的連接方法

    輸入輸出模式。在輸入模式下,GPIO引腳可以讀取外部信號(hào)的狀態(tài);在輸出模式下,它們可以向
    的頭像 發(fā)表于 01-09 09:48 ?965次閱讀

    GPIO錯(cuò)誤排查與解決

    。輸入模式下,GPIO可以讀取外部信號(hào);輸出模式下,GPIO可以控制外部設(shè)備。正確配置
    的頭像 發(fā)表于 01-09 09:46 ?2296次閱讀

    GPIO在嵌入式系統(tǒng)中的作用

    在現(xiàn)代電子系統(tǒng)中,嵌入式系統(tǒng)因其小型化、低成本和高效率而變得越來(lái)越流行。這些系統(tǒng)廣泛應(yīng)用于從簡(jiǎn)單的家用電器到復(fù)雜的工業(yè)自動(dòng)化設(shè)備。在這些系統(tǒng)中,GPIO(通用輸入/輸出)接口是連接微控制器與
    的頭像 發(fā)表于 01-09 09:45 ?904次閱讀

    如何配置GPIO引腳

    在嵌入式系統(tǒng)設(shè)計(jì)中,GPIO(通用輸入/輸出)引腳是連接微控制器與外部世界的重要橋梁。它們可以被配置為輸入
    的頭像 發(fā)表于 01-09 09:39 ?1225次閱讀

    TMS320C645x DSP通用輸入/輸出(GPIO)用戶指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C645x DSP通用輸入/輸出(GPIO)用戶指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-17 15:56 ?0次下載
    TMS320C645x DSP通用<b class='flag-5'>輸入</b>/<b class='flag-5'>輸出</b>(<b class='flag-5'>GPIO</b>)用戶指南

    stm32 GPIO中斷配置教程

    在嵌入式開發(fā)中,STM32微控制器因其高性能和豐富的外設(shè)而廣受歡迎。GPIO(通用輸入/輸出中斷是STM32微控制器中常用的功能之一,它允許開發(fā)者在特定引腳上檢測(cè)到
    的頭像 發(fā)表于 11-19 15:53 ?3432次閱讀

    STM32 GPIO的八種工作模式

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

    gpio接口是干什么的 gpio四種輸入輸出模式怎么選擇

    GPIO接口的作用 GPIO(General Purpose Input/Output)接口,即通用輸入輸出接口,是一種用于連接和控制各種外部設(shè)備的數(shù)字接口。它由一組引腳組成,可以通過(guò)
    的頭像 發(fā)表于 10-06 16:07 ?7683次閱讀

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

    其他集成電路(IC)上常見的接口,它允許這些設(shè)備與外部世界進(jìn)行交互。GPIO接口提供了基本的數(shù)字信號(hào)功能,可通過(guò)軟件分別配置成輸入輸出,即能夠作為
    的頭像 發(fā)表于 09-19 17:02 ?730次閱讀
    <b class='flag-5'>GPIO</b>靜電放電防護(hù)方案

    STM32CUBEMX(11)--外部中斷(EXTI)

    配置此端口為中斷口。 GPIO 口連接到 16 個(gè)外部中斷 / 事件線如下圖 ??梢钥吹絇C13應(yīng)該是在EXTI13上。 外部
    發(fā)表于 09-10 15:44

    STM32 GPIO八種模式及工作原理詳解

    一. 前言 ??GPIO全稱General Purpose Input Output,是微控制數(shù)字輸入/輸出的基本模塊,可以實(shí)現(xiàn)微控制器與外部環(huán)境的數(shù)字進(jìn)行交換。借助
    的頭像 發(fā)表于 07-22 09:32 ?8857次閱讀
    STM32 <b class='flag-5'>GPIO</b>八種模式及工作原理詳解