历史上的今天
今天是:2025年04月23日(星期三)
2019年04月23日 | Stm32外部中断以及NVIC笔记
2019-04-23 来源:eefocus
1.外部中断
1.概念:
<1>:当某种事件发生时,CPU自动停止所干的事 从而去临时处理突发事件
<2>:对于Stm32F103rc而言,一共有60个可屏蔽中断(外部中断),16个内核中断

2.设置方法:
<1>:初始化相关的IO口
<2>:开启复用时钟,设置IO口和中断线的映射关系
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);//外部中断,需要使能AFIO时钟
<3>开启与该IO口想对的线上中断和设置触发条件
库函数:
GPIO_EXTILineConfig(GPIO_PortSourceGPIOC,GPIO_PinSource5);
EXTI_InitStructure.EXTI_Line=EXTI_Line5;
EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;//下降沿触发
EXTI_InitStructure.EXTI_LineCmd = ENABLE;
EXTI_Init(&EXTI_InitStructure); //根据EXTI_InitStruct中指定的参数初始化外设EXTI寄存器
寄存器:
EX_NVIC_Config(GPIO_C,5,FTIR);
<4>:配置NVIC,使能中断
库函数:
NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn; //使能按键所在的外部中断通道
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x02; //抢占优先级2
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x02; //子优先级1
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //使能外部中断通道
NVIC_Init(&NVIC_InitStructure); //根据NVIC_InitStruct中指定的参数初始化外设NVIC寄存器
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置分组情况 一般放在主函数里
寄存器:
MY_NVIC_Init(2,2,EXTI0_IRQn,2)
<5>:设置中断服务函数(库函数寄存器一致)
oid EXTI0_IRQHandler(void)
{
delay_ms(10); //消抖
if(WK_UP==1)
{
LED0=!LED0;
LED1=!LED1;
}
EXTI_ClearITPendingBit(EXTI_Line0); //清除EXTI0线路挂起位
//EXTI->PR=1<<5;
}
注:
NVIC中包括配置抢占优先级和响应优先级,一般而言,高抢占打断低抢占,高响应不能打断低响应,响应越高先执行(Stm32F1系列 一共可以设置0-4级响应 0为最高,4最低)
下一篇:STM32学习笔记-SPI通讯
史海拾趣
|
请问各位大侠,能不能把wince4.2的bsp直接移植到wince6.0? 我现在手里有块2440的板子,系统是wince5.0,我看了一下BSP的目录,判断应该是从wince4.2移植过来的,目录和wince4.2相同,现在我想把这个系统移植到wince6.0,不知可否?怎样移植,都注意写什么?谢谢大家!… 查看全部问答> |
|
我用的FLASH型号是一个AMD兼容的NOR FLASH, 2M的,划入TFFS的是高1.5M,也就是FORMAT参数为: tffsDevFormatParams myDefaultParams = { { &nbs ...… 查看全部问答> |
|
准备开始试用MSP430 C2500套件,先是要将平台搭建好,具体光盘资料上有详细。 虽然套件说明上有适用温度范围,但是咱还是自己测试下比较放心,先测试下最高能承受的温度,用火烤…… 下午再测试下最低温度…… 注意:本测试纯属娱 ...… 查看全部问答> |
|
ADXL354倾角传感器资料~~~~~~~~~(2011电子设计大赛) 自己从网上搜集的资料啊 [ 本帖最后由 shengruxiahua 于 2011-8-27 09:04 编辑 ]… 查看全部问答> |
|
新手求帮助,关于2553官方例程中mclk的问题 P1.1的输出频率为什么是mclk/10呀? //****************************************************************************** // MSP430G2xx3 Demo - Basic Clock, Output Buffered SMCLK, AC ...… 查看全部问答> |
|
有资料上说149的AD采样速度高达200ksps,那么MSP430F5525的AD采样速度有多少啊? 有资料上说149的AD采样速度高达200ksps,那么MSP430F5525的AD采样速度有多少啊?… 查看全部问答> |




