色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

STM32外部中斷

冬至子 ? 來源:HyanLabviewCoder ? 作者:Happy Every Moment ? 2023-10-24 09:29 ? 次閱讀

68個可屏蔽中斷通道,包括EXTI,TIM,ADC,USART,SPI,I2C,RTC等多個外設(F1系列最多的數量,以型號為主);

使用NVIC統一管理中斷,每個中斷通道都擁有16個可編程優先等級,可以對優先級進行分組,進一步設置搶占優先級和響應優先級。

圖片

圖片

圖片

AFIO內部圖

圖片

EXTI內部圖

圖片

中斷和事件的區別

圖片

NVIC的中斷優先級由優先級寄存器的4位(0-15)決定,這四位可以進行切分,分為高N位的搶占優先級,

和4-n位的響應優先級;

搶占優先級高的可以中斷嵌套,響應優先級高的可以優先排隊,搶占優先級和響應優先級均相同的話,

按照中斷號排隊。

操作的是NVIC->IPRx寄存器

圖片

圖片

中斷示例

main

#include "stm32f10x.h" // Device header

#include "Delay.h"

#include "OUT1.H"

#include "Interrupt.h"

int main(void)

{

OUT1_Init();

Interrupt_Init();

OUT1_OFF();

while(1)

{

    Delay_s(5);

    OUT1_OFF();

}

}

interrupt.c

#include "stm32f10x.h" // Device header

#include "OUT1.h"

void Interrupt_Init (void)

{

//開啟GPIOC的時鐘控制

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);  

//開啟AFIO的時鐘控制

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);   

//EXTI的時鐘控制不需要開啟     

//NVIC也不需要開啟,NVIC是屬于內核內的外設    

                                                      

/*配置GPIO   */  

GPIO_InitTypeDef GPIO_InitStructur;

GPIO_InitStructur.GPIO_Mode=GPIO_Mode_IPU;      //設置成上拉輸入

GPIO_InitStructur.GPIO_Pin=GPIO_Pin_15;         //選擇15號Pin腳

GPIO_InitStructur.GPIO_Speed=GPIO_Speed_50MHz;  //不重要

GPIO_Init(GPIOC,&GPIO_InitStructur);            //選擇C組的GPIO

/*配置AIFO    */

GPIO_EXTILineConfig(GPIO_PortSourceGPIOC,GPIO_PinSource15);  //設置PC15為外部中斷線



/*配置EXIT    */

EXTI_InitTypeDef EXTI_Initstructure;

EXTI_Initstructure.EXTI_Line=EXTI_Line15;             //配置中斷線

EXTI_Initstructure.EXTI_LineCmd=ENABLE;               //是否開啟中斷

EXTI_Initstructure.EXTI_Mode=EXTI_Mode_Interrupt;     //配置成中斷

EXTI_Initstructure.EXTI_Trigger=EXTI_Trigger_Rising;  //配置成上升沿觸發

EXTI_Init(&EXTI_Initstructure);



/*配置NVIC   配置中斷分組  */

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);    //配置中斷搶占優先級和響應優先級分組



NVIC_InitTypeDef NVIC_InitStruct;

NVIC_InitStruct.NVIC_IRQChannel=EXTI15_10_IRQn;

NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE;

NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority=1; //配置搶占優先級

NVIC_InitStruct.NVIC_IRQChannelSubPriority=1;        //配置響應優先級    

NVIC_Init(&NVIC_InitStruct);

}

/*編寫中斷函數,中斷函數的名字都是固定的,中斷函數都是無參數無返回值的 */

/*編中斷函數的函數名可以在啟動文件startup_stm32f10x_md.s中可以找到 */

/*中斷函數的名字都是以_IRQHandler結尾 */

void EXTI15_10_IRQHandler(void)

{

if(EXTI_GetITStatus(EXTI_Line15)==SET)

{

    /*編寫中斷程序  */

    OUT1_ON();

    EXTI_ClearITPendingBit(EXTI_Line15);  //清除中斷標志位

}

}

interrupt.h

#ifndef __Interrupt_H

#define __Interrupt_H

void Interrupt_Init (void);

#endif

圖片

圖片

圖片

圖片

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

    關注

    31

    文章

    5336

    瀏覽量

    120260
  • STM32
    +關注

    關注

    2270

    文章

    10896

    瀏覽量

    355786
  • 外部中斷
    +關注

    關注

    1

    文章

    131

    瀏覽量

    15816
  • 時鐘控制
    +關注

    關注

    0

    文章

    17

    瀏覽量

    6821
  • AFIO
    +關注

    關注

    0

    文章

    6

    瀏覽量

    2946
收藏 人收藏

    評論

    相關推薦

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

    本文用STM32CubeIDE軟件實現STM32外部中斷實例。
    的頭像 發表于 08-24 09:09 ?4354次閱讀

    STM32外部中斷的設置

    發現了一個關于STM32外部中斷的設置小文章
    發表于 03-13 16:04

    STM32外部中斷的怎么配置

    STM32中斷分組STM32外部中斷的配置過程使用GPIO口接按鍵進行外部
    發表于 03-02 07:34

    詳細解析STM32外部中斷

    說明:本文旨在詳細解析STM32外部中斷,以實現按鍵觸發外部中斷。其中包含“編程流程”、“程序代碼”、“代碼解析”、“原理分析”、“小結”
    發表于 08-13 07:50

    STM32外部中斷簡介

    STM32外部中斷+TFTLCD顯示STM32外部中斷簡介S
    發表于 08-16 07:46

    stm32外部中斷簡介

    stm32外部中斷實驗
    發表于 08-17 08:20

    STM32外部中斷中斷通道是什么?

    STM32外部中斷中斷通道是什么?
    發表于 11-16 09:12

    STM32外部中斷怎么設置?

    STM32外部中斷怎么設置?
    發表于 11-18 07:36

    STM32外部中斷實現紅外遙控功能

    STM32外部中斷實現紅外遙控功能。
    發表于 12-14 15:49 ?67次下載

    STM32_外部中斷程序

    STM32 外部中斷程序,很好的學習資料,快來下載吧
    發表于 02-15 17:09 ?30次下載

    STM32外部中斷實驗-EXTI

    STM32 外部中斷簡介STM32 的每個 IO 都可以作為外部中斷
    發表于 11-29 16:06 ?9次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>外部</b><b class='flag-5'>中斷</b>實驗-EXTI

    STM32外部中斷邊沿觸發存在延時問題

    STM32外部中斷時延問題概括:通過軟件調試,示波器觀察的方式,來分析外部中斷存在時延的原因。在調試模擬SPI接收的時候,想用
    發表于 12-27 18:27 ?20次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>外部</b><b class='flag-5'>中斷</b>邊沿觸發存在延時問題

    STM32 外部中斷實驗參考程序

    STM32 外部中斷實驗程序,供STM32初學者參考。
    發表于 12-30 10:46 ?41次下載

    STM32如何配置外部中斷STM32外部中斷配置步驟

    STM32如何配置外部中斷STM32外部中斷配置步驟? 作為一款現代化的微控制器,
    的頭像 發表于 10-26 17:47 ?3536次閱讀

    STM32外部中斷大問題

    出現這種情況,明明沒有觸發外部中斷,可是中斷服務函數還是不斷的++。問題一:電氣噪聲和抖動電氣噪聲和抖動是常見的問題,可能會導致STM32外部
    的頭像 發表于 11-08 08:00 ?2266次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>外部</b><b class='flag-5'>中斷</b>大問題
    主站蜘蛛池模板: 午夜天堂AV久久久噜噜噜| 伊人久久天堂| 久久精品中文闷骚内射| 床伴在线观看免费高清完整泰剧第四集 | 国产麻豆精品传媒AV国产在线| 真实伦 乱| 亚洲国产cao| 日韩AV成人无码久久精品老人 | 日本一区不卡在线播放视频免费| 花蝴蝶hd免费| 国产精品99亚发布| xfplay 无码专区 亚洲| 中国特级黄色大片| 亚洲免费无码中文在线| 乌克兰16~18sex| 人与禽物videos另类| 免费国产麻豆传| 久久久久久久久女黄| 国产色播视频在线观看| 儿子操妈妈视频| 把内衣脱了把奶露出来| 91免费永久在线地址| 中文天堂www资源| 亚洲一级毛片免费在线观看| 性做久久久久久久久浪潮| 三级黄色视屏| 人人做人人干| 人人干人人插| 清晨紧湿爱运动h高h| 欧美一级久久久久久久大| 免费女人光着全身网站| 老司机深夜福利ae 入口网站| 精品一区二区三区AV天堂| 国产午夜免费视频片夜色| 国产精品久久人妻无码网站一区L 国产精品久久人妻无码蜜 | 99久久精品费精品蜜臀AV| 在线中文字幕亚洲日韩| 一个人在线观看免费高清视频在线观看| 无人区在线日本高清免费| 无套暴躁白丝秘书| 亚洲AV色香蕉一区二区9255|