历史上的今天
返回首页

历史上的今天

今天是:2024年08月26日(星期一)

正在发生

2021年08月26日 | STM32 中断配置 自我学习总结

2021-08-26 来源:eefocus

简单记录一下STM32 的中断配置说明!


----第一部分是---中断向量表-----



--------这个只是简单参照----不同版本也有些不一样--但是大同小异----自己可以到启动文件---startup_stm32f10x_hd.s中去查找。


----第二部分---中断优先级配置


static void NVIC_Configuration(void)

{

  NVIC_InitTypeDef NVIC_InitStructure;


  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);  //分组


  NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;  //主要地方

  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;  //抢占

  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;  //次优先级

  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

  NVIC_Init(&NVIC_InitStructure);

}

----第三部分---中断端口等配置


void EXTI_PA0_Config(void)

{

  GPIO_InitTypeDef GPIO_InitStructure; 

  EXTI_InitTypeDef EXTI_InitStructure;


  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO,ENABLE);


  NVIC_Configuration();


  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;       

  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;  //端口上拉

  GPIO_Init(GPIOA, &GPIO_InitStructure);


  GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource0);  //PA0为外部中断输入端

  EXTI_InitStructure.EXTI_Line = EXTI_Line0;  

  EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;  //中断模式---另一个是事件模式

  EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;  //触发方式是下降沿

  EXTI_InitStructure.EXTI_LineCmd = ENABLE;  //使能

  EXTI_Init(&EXTI_InitStructure); 

}


----第四部分---中断函数


void EXTI0_IRQHandler(void)

{

  if(EXTI_GetITStatus(EXTI_Line0) != RESET)  //产生相应中断

  { 

    .........................

    EXTI_ClearITPendingBit(EXTI_Line0);   //清除中断标志位

  }  

}


推荐阅读

史海拾趣

HB公司的发展小趣事

转折:1985年,Hartmann Codier GmbH迎来了一个重要的转折点——被瑞士公司Phoenix Mecano AG收购。这一收购不仅为公司带来了雄厚的资金支持,更为其开放了国际市场,引入了海外分销渠道。

成果:借助Phoenix Mecano AG的全球网络,Hartmann Codier GmbH迅速将产品推向了全球40多个国家,极大地提升了品牌知名度和市场份额。同时,公司也加强了与国际客户的合作,共同推动电子行业的发展。

Actel公司的发展小趣事

服务:Hartmann Codier GmbH深知客户是企业发展的基石。因此,公司始终将客户服务放在首位,致力于为客户提供优质的产品和服务。公司建立了完善的客户服务体系,包括售前咨询、售中支持和售后服务等环节。

成果:通过不断优化客户服务流程和提高服务质量,Hartmann Codier GmbH赢得了广大客户的信赖和支持。公司与客户之间建立了长期稳定的合作关系,共同推动了电子行业的繁荣发展。同时,公司也根据客户的反馈和需求,不断改进产品和服务,以满足市场的不断变化和升级。

BOPLA公司的发展小趣事

近年来,随着环保意识的提高和政府对塑料污染治理的关注,BOPLA积极响应国家号召,开始研发和推广生物基可降解材料。经过多年的努力,公司成功推出了BOPLA生物基膜材,实现了产品的绿色转型。这一创新不仅有助于减少塑料污染,还为公司赢得了更多的环保意识和绿色消费市场的青睐。

All Sensors公司的发展小趣事

在过去的30年里,All Sensors一直致力于为OEM客户设计定制各种经典的传感器。这些传感器不仅具有高精度、高可靠性和高灵敏度,还广泛应用于航天航空、医疗设备、环保仪器等多个领域。凭借卓越的产品性能,All Sensors的部分经典产品甚至被业界某大公司收购并发扬光大,进一步扩大了其在电子行业的影响力。

台湾固锝(GD)公司的发展小趣事
根据应用需求确定所需的增益范围。
Acutechnology公司的发展小趣事

Acutechnology公司自XXXX年创立之初,便专注于电子技术的研发与创新。创始团队由一群富有经验的电子工程师组成,他们对市场趋势有着敏锐的洞察力。在初创期,公司集中资源投入到一项具有前瞻性的技术研发项目中,经过多次试验和改进,最终成功开发出了一款具有竞争力的电子产品,为公司的后续发展奠定了坚实的技术基础。

问答坊 | AI 解惑

74LS系列中文资料

分享74LS系列的中文资料,从74LS00开始,包含了142种,常用的都有,都是PDF格式。希望对大家有帮助。…

查看全部问答>

ASIC门怎样计算?

ASIC芯片的逻辑门怎样计算?大家有知道的么?…

查看全部问答>

maplab ide下mcc编译出错。

MPLAB IDE V8.30下编译出现问题.这是我的第一个PIC单片机程序,请牛人帮忙。 #include void main(void){     TRISCbits.TRISC0 = 0;   //rc0 引脚设置为输出引脚     TRISDbits.TRISD0 = 0;     PORTC ...…

查看全部问答>

如何从ARM IC上读取IC信息

我们知道在x86架构上,我们可以通过汇编指令CPUID获取CPU的相关信息。 但是在ARM架构上,我们要如何获取类似于x86的CPU信息呢? 请高手指点。…

查看全部问答>

有是程序员联合开发网会员的吗?帮忙下个代码

急需一个代码,能否帮忙下载一下?感激不尽。。 源码地址  http://www.programsalon.com/downloads27/sourcecode/windows/detail86711.html 帮别人求的 对数学方面的编程不怎么熟悉 先找个参考 有是会员的能帮个忙吗? 我的信箱:fghl ...…

查看全部问答>

PCI总线问题

IDT的rc32434跑linux, 通过PCI总线挂4个Ti的DM642,四个DSP共享中断。 现在发现: 板子上电后,IDT向第四个DSP(离IDT最远)通过PCI总线下载程序是成功的,但是DSP程序跑起来后,IDT通过PCI总线去读DSP那边的内存,读出来的数总是0xFFFFFFFF。而 ...…

查看全部问答>

请问这样24V转5V能形成隔离效果吗?

         24V接的是感性负载,所以想通过这个方法隔离来防止24V对整块板子的干扰。 请问下这个电路可行吗?为什么?       加二极管之后,24V和5V就没有共地了,但是到底会不会有干 ...…

查看全部问答>

msp430 汇编中断函数

我用汇编编写TimerA0中断函数,主文件是c文件。主文件应该怎么调用才行? 我是这么做的,结果不行。 #include \"msp430f123.h\" extern __interrupt void TimerA0_isr() void main() {     //stop wdt     // ...…

查看全部问答>

DSP控制AD9850的困惑

使用的DSP是STM32F28335,还有一个AD9850。想用dsp控制AD9850,但是实验板上的SPI接口被接上别的东西了,所以想用MCBSP做SPI的功能,但是MCBSP一次最多发送32位,而ad9850需要输入40位的控制字。想问问高手,这样用MCBSP模拟SPI的功能  可以实 ...…

查看全部问答>

电源管理IC在线设计仿真工具Easy DesignSim帮你简化电源系统设计

电源管理IC在线设计仿真工具Easy DesignSim帮你简化电源系统设计   富士通半导体推出了一款用于电源管理IC(PMIC)的在线设计仿真工具,叫Easy DesignSim™。使用富士通丰富电源管理IC产品线(如转换器、开关、电源及充电控制装置等 ...…

查看全部问答>