stm32定时器中断配置.doc

上传人:白大夫 文档编号:3273731 上传时间:2019-08-07 格式:DOC 页数:2 大小:15.50KB
返回 下载 相关 举报
stm32定时器中断配置.doc_第1页
第1页 / 共2页
亲,该文档总共2页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《stm32定时器中断配置.doc》由会员分享,可在线阅读,更多相关《stm32定时器中断配置.doc(2页珍藏版)》请在三一文库上搜索。

1、stm32定时器中断配置stm32中断stm32的Cortex内核具有强大的异常响应系统,它把能够打断当前代码执行流程的事件分为异常( excepTIon)和中断( terryp),并把它们用二个表管理起来,编号为015的称为内核异常,而16以上的则称为外部中断(外,相对内核而言),这个表就称为中断向量表。而STM32对这个表重新进行了编排,把编号从-3至6的中断向量定义为系统异常,编号为负的内核异常不能被设置优先级,如复位( Reset)、不可屏蔽中断(NMI)、硬错误( Hardfault)。从编号7开始的为外部中断,这些中断的优先级都是可以自行设置的。STM32的中断如此之多,配置起来并

2、不容易,因此,我们需要一个强大而方便的中断控制器NVIC,NVIC是属于 Cortex内核的器件。stm32中断配置配置STM32的中断只需要理解2个内容,配置4个变量即可。4个变量:NV|IC_ IRQChannel中断向量NVIC_ IRQChannelCmd使能/禁止NVIC_ IRQChannelPreempTIon Priority抢占优先级NVIC_IRQChannelSub Priority响应优先级两个内容:抢占优先级和响应优先级抢占优先级抢占是指打断其他中断的属性,即因为具有这个属性,会出现嵌套中断(在执行中断服务函数A的过程中被中断B打断,先执行完中断服务B再继续执行中断服

3、务A)。其属性编号越小,优先级别越高。响应优先级响应属性则应用在抢占属性相同的情况下,如果两个中断同时到达,则先处理响应优先级高的中断,再处理响应优先级低的中断。其属性编号越小,优先级别越高。若内核正在执行c的中断服务函数,则它能被抢占优先级更高的中断A打断,由于B和C的抢占优先级相同,所以C不能被B打断。但如果B和C中断是同时到达的,内核就会首先响应响应优先级别更高的B中断抢占优先级和响应优先级的数量由一个4位的数字来决定。第0组:所有4位用来配置抢占优先级,即NVIC配置的24=16种中断向量都是只有抢占属性,没有响应属性。第1组:最高1位用来配置抢占优先级,低3位用来配置响应优先级。抢占

4、优先级(0级,1级)响应优先级分别为07。第2组:2位用来配置抢占优先级,2位用来配置响应优先级。即22=4种抢占优先级,22=4种响应优先级。第3组:高3位用来配置抢占优先级,最低1位用来配置响应优先级。即有8种抢占优先级,2种响应2优先级。第4组:所有4位用来配置响应优先级。即6种中断向量具有都不相同的响应优先级。stm32中断的配置方法第一步定义一个中断配置结构体变量NVIC_Init TypeDef NVIC_IinitStructure;第二步建立中断优先级配置组NVIC_Ppriority Group Config (NVIC_Priority Group_1);第三步对结构体变量初始化NVIC_IRQChannel中断向量NVIC_IRQChannelCmd使能/禁止NVIC_IRQChannel PreempTIon Priority抢占优先级NVIC_IRQChannelSubPriority响应优先级第四步 NVIC_Init ( NVIC_InitStructure)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1