在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

用STM32CubeIDE軟件實現STM32外部中斷實例

8Y52_c_stm32 ? 來源:ARM與嵌入式 ? 作者:保生 ? 2022-08-24 09:09 ? 次閱讀

本文用STM32CubeIDE軟件實現STM32外部中斷實例。

新建工程

“File”-“New”-“STM32 Project”。

7b81411a-22d2-11ed-ba43-dac502259ad0.png

輸入芯片型號STM32F103ZE。

7b901488-22d2-11ed-ba43-dac502259ad0.png

選擇相應封裝,下一步。

7ba59dd0-22d2-11ed-ba43-dac502259ad0.png

填寫項目名,選擇工程位置,下一步。

7bbd5a4c-22d2-11ed-ba43-dac502259ad0.png

配置時鐘、調試模式

選擇高速外部時鐘。

7be491a2-22d2-11ed-ba43-dac502259ad0.png

HCLK總線時鐘處輸入72,回車,配置使用最高時鐘頻率。

7bf80282-22d2-11ed-ba43-dac502259ad0.png

調試模式選擇串行,方便下載程序。

7c18918c-22d2-11ed-ba43-dac502259ad0.png

配置管腳外設

本實例中用到了LED1與KEY_LEFT,找到相應電路圖。

7c2a1600-22d2-11ed-ba43-dac502259ad0.png

7c4a2e54-22d2-11ed-ba43-dac502259ad0.png

7c5b86c2-22d2-11ed-ba43-dac502259ad0.png

可見LED1對應PC0管腳,低電平點亮。按鍵K1對應PE2管腳,低電平有效。

PC0配置為GPIO_Output,GPIO輸出模式

7c850d80-22d2-11ed-ba43-dac502259ad0.png

PE2配置為GPIO_EXTI2,GPIO中斷線2。

7c97c81c-22d2-11ed-ba43-dac502259ad0.png

對GPIO進行配置,可以看到PC0、PE2兩個管腳。

PC0管腳的配置:

GPIO輸出電平,“High”,復位后高電平,LED1熄滅狀態。

GPIO模式,“OutputPushPull”,推挽輸出,相關文章:梳理清楚推挽、開漏、OC、OD。

GPIO上拉下拉,“Pull-up”,上拉,默認高電平,避免管腳電平狀態不穩定

7ca8f7ae-22d2-11ed-ba43-dac502259ad0.png

PE2管腳的配置,GPIO模式這里有6個選項,分別是:

上升沿觸發的外部中斷

下降沿觸發的外部中斷

上升/下降沿觸發的外部中斷

上升沿觸發的事件中斷

下降沿觸發的事件中斷

上升/下降沿觸發的事件中斷

“外部中斷”與“事件中斷”的區別:

“事件中斷”可以由硬件自動完成這個事件產生的結果,比如引起DMA操作、AD轉換等,響應速度更快。

而本例中需要中斷服務函數才能完成中斷后產生的結果,是“外部中斷”

由電路圖可知,KEY1按鍵按下時為低電平,過程中會產生一個下降沿,所以選擇“下降沿外部中斷”這一項。

按鍵低電平有效,選擇上拉,給管腳一個穩定的電平狀態,不按下時為默認的高電平。

7cc38042-22d2-11ed-ba43-dac502259ad0.png

配置NVIC嵌套向量中斷控制器

NVIC就是用來控制中斷響應的,如下圖列出了各個中斷。可以分別配置其使能狀態、搶占優先級與響應優先級。

7ce2dbe0-22d2-11ed-ba43-dac502259ad0.png

因為PE2配置為GPIO_EXTI2中斷,它出現在了列表中。同時出現的還有SysTick,它是HAL_Delay的時基來源,如下圖note處所說的,每隔一個固定時間產生一次中斷。

因為下文中斷服務函數代碼中用到了HAL_Delay延時函數,把SysTick與EXTI2的搶占優先級分別設置為0與2。在這里,數值越大優先級越小。

7cf4ea24-22d2-11ed-ba43-dac502259ad0.png

配置中斷服務函數

進行上述配置之后,點擊生成代碼。

7d186a76-22d2-11ed-ba43-dac502259ad0.png

本實例中的中斷類型是“外部中斷”,通過中斷服務函數來實現。

打開stm32f1xx_it.c文件,找到中斷服務函數,它調用了GPIO中斷服務函數。

7d2c3952-22d2-11ed-ba43-dac502259ad0.png

F3找到這個函數的定義,在清除中斷標志位后,進入了Callback回調函數。

7d40ee60-22d2-11ed-ba43-dac502259ad0.png

這個Callback函數也是一個弱化函數,,可以重寫,如下圖的__weak標識。

7d4f0a04-22d2-11ed-ba43-dac502259ad0.png

回到stm32f1xx_it.c文件,在末尾user code處寫上中斷發生時要實現的結果。

7d648000-22d2-11ed-ba43-dac502259ad0.png

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 控制器
    +關注

    關注

    113

    文章

    16783

    瀏覽量

    181879
  • STM32
    +關注

    關注

    2281

    文章

    10976

    瀏覽量

    360724
  • 中斷
    +關注

    關注

    5

    文章

    902

    瀏覽量

    42293
  • GPIO
    +關注

    關注

    16

    文章

    1235

    瀏覽量

    53166

原文標題:STM32外部中斷實例

文章出處:【微信號:c-stm32,微信公眾號:STM32嵌入式開發】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    STM32CubeIDE入門教程 STM32CubeIDE安裝使用教程

    STM32CubeIDE是一個高級C / C ++開發平臺,具有用于STM32微控制器和微處理器的外設配置,代碼生成,代碼編譯和調試功能。它基于Eclipse??/ CDT框架和GCC工具鏈進行開發,并基于GDB進行調試。它允許現有幾百插件是完成了Eclipse的功能整合
    的頭像 發表于 06-08 09:19 ?1w次閱讀
    <b class='flag-5'>STM32CubeIDE</b>入門教程 <b class='flag-5'>STM32CubeIDE</b>安裝使用教程

    STM32CubeIDE SWV功能介紹

    開發環境,將Printf定位到串口上是正常的,但是在重定位到SWO上卻出現了無法打印的問題。客戶也參考了網上的教程,仍然無法實現,不知道是什么原因。 STM32CubeIDE 版本:V1.6.1 硬件
    的頭像 發表于 10-13 14:20 ?3958次閱讀
    <b class='flag-5'>STM32CubeIDE</b> SWV功能介紹

    Ubuntu 18.04 安裝 STM32CubeIDE 小記

    Ubuntu 18.04 安裝 STM32CubeIDE 小記
    發表于 11-18 17:36 ?9次下載
    Ubuntu 18.04 安裝 <b class='flag-5'>STM32CubeIDE</b> 小記

    如何用STM32CubeIDE軟件實現STM32外部中斷

    本文STM32CubeIDE軟件實現STM32外部中斷
    的頭像 發表于 11-22 10:15 ?5660次閱讀
    如何用<b class='flag-5'>STM32CubeIDE</b><b class='flag-5'>軟件</b><b class='flag-5'>實現</b><b class='flag-5'>STM32</b><b class='flag-5'>外部</b><b class='flag-5'>中斷</b>

    STM32CubeIDE XiP 和 BootROM介紹, XiP外部內存QSPI FLASH執行用戶代碼

    STM32CubeIDE XiP 和 BootROM介紹, XiP外部內存QSPI FLASH執行用戶代碼
    發表于 12-02 09:21 ?14次下載
    <b class='flag-5'>STM32CubeIDE</b> XiP 和 BootROM介紹, XiP<b class='flag-5'>外部</b>內存QSPI FLASH執行用戶代碼

    STM32CubeIDE使用

    參考STM32CubeIDE屬于一站式工具,本文帶你體驗它的強大第一個STM32CubeIDE項目STM32CubeIDE使用記錄STM32CubeIDE使用筆記(03):使用ST-L
    發表于 12-02 17:21 ?29次下載
    <b class='flag-5'>STM32CubeIDE</b>使用

    STM32CubeIDE初識

    STM32CubeIDE初識
    發表于 12-02 18:36 ?23次下載
    <b class='flag-5'>STM32CubeIDE</b>初識

    STM32CubeIDE安裝-NSIS Error問題

    STM32CubeIDE安裝-NSIS Error問題
    發表于 12-03 21:06 ?18次下載
    <b class='flag-5'>STM32CubeIDE</b>安裝-NSIS Error問題

    STM32CubeIDE的MCU開發

    以前做stm32嵌入式開發均使用的是破解版的keil軟件,現在工作需要無法按照此步驟進行,最近針對ST官方免費軟件STM32CubeIDE進行了相關調研工作。1
    發表于 12-05 12:21 ?25次下載
    <b class='flag-5'>STM32CubeIDE</b>的MCU開發

    第一個STM32CubeIDE項目

    使用STM32CubeIDE的第一個項目開始第一個項目添加代碼今天開始做一個STM32CubeIDE的第一個項目,首先需要說明的:STM32CubeIDE是一個免費的軟件開始第一個項目
    發表于 12-29 19:29 ?11次下載
    第一個<b class='flag-5'>STM32CubeIDE</b>項目

    STM32CUBEIDE(1)----安裝

    概述 STM32CubeIDE是一體式多操作系統開發工具,是STM32Cube軟件生態系統的一部分。 STM32CubeIDE是一種高級C/C++開發平臺,具有
    的頭像 發表于 11-22 09:52 ?1522次閱讀
    <b class='flag-5'>STM32CUBEIDE</b>(1)----安裝

    STM32CubeIDE安裝指南

    電子發燒友網站提供《STM32CubeIDE安裝指南.pdf》資料免費下載
    發表于 08-01 15:44 ?6次下載
    <b class='flag-5'>STM32CubeIDE</b>安裝指南

    巧用 STM32CubeIDE 之編譯警告

    巧用 STM32CubeIDE 之編譯警告
    的頭像 發表于 10-25 16:33 ?1225次閱讀
    巧用 <b class='flag-5'>STM32CubeIDE</b> 之編譯警告

    STM32CubeIDE快速入門指南

    電子發燒友網站提供《STM32CubeIDE快速入門指南.pdf》資料免費下載
    發表于 09-19 14:29 ?23次下載
    <b class='flag-5'>STM32CubeIDE</b>快速入門指南

    STM32CubeIDE找不到elf

    STM32CubeIDE是STMicroelectronics公司推出的一款集成開發環境(IDE),用于開發STM32系列微控制器的應用程序。它基于Eclipse開發平臺,并集成了ST的驅動程序
    的頭像 發表于 01-02 16:32 ?2377次閱讀
    主站蜘蛛池模板: 中文在线资源链接天堂 | 婷婷久久综合 | 扒开双腿爽爽爽视频www | 午夜欧美视频 | 94久久国产乱子伦精品免费 | 天天操天天干天天操 | 天天干天天天天 | 偷偷狠狠的日日2020 | 黄蓉吕文德欲乱系列小说 | 久久久久女人精品毛片九一 | 2018国产精品| 亚洲亚洲人成网站在线观看 | 特黄特a级特别特级特毛片 特黄特色大片免费播放路01 | 黄色免费在线网站 | 被cao到合不拢腿腐男男 | 好深好爽视频 | 国产欧美久久久精品影院 | 好看的一级毛片 | 天天操人人干 | 免费在线观看一区二区 | 性欧美高清强烈性视频 | 一级特黄aa大片免费播放视频 | 久久这里只有精品1 | 日本在线不卡一区二区 | 午夜伦y4480影院中文字幕 | 夜色资源站www国产在线观看 | 欧美黄色一级片视频 | 免费观看一级特黄欧美大片 | 色资源在线观看 | 成人a大片高清在线观看 | 国产精品久久久亚洲456 | a天堂在线观看 | 亚洲第一伊人 | 噜噜噜色网 | 亚洲αv久久久噜噜噜噜噜 亚洲аv电影天堂网 | 日本综合视频 | 97午夜精品 | 正在播放91大神调教偷偷 | 日本成人黄色网址 | 亚洲无色 | 国产精品午夜自在在线精品 |