STM32F429--中断应用概览

发布者:水云间梦最新更新时间:2021-12-22 来源: eefocus关键字:STM32F429  中断应用  中断控制器 手机看文章 扫描二维码
随时随地手机看文章

01 异常类型

02 NVIC简介

03 优先级的定义

04 中断编程(顺序,寄存器


STM32的中断非常强大,STM32每个外设可以产生中断,可粗略认为,异常就是中断,中断就是异常。


一:

1.系统异常,体现在内核水平 -3~6

2.外部中断,体现在外设水平


二:

1- 嵌套向量中断控制器

NVIC ,用来控制这么多的外设中断

Nested vectored interrupt controller

两个重要的库文件:core_cm4.h和misc.h


2- 中断

中断使能寄存器

中断清除寄存器


中断使能悬起寄存器

中断清除悬起寄存器


中断有效位寄存器

中断优先级寄存器(8Bit wide)


软件触发中断寄存器


三:

中断优先级寄存器 NVIC_IPRx (0~93)可设置

NVIC->IPRx


四:

程序流程(结合功能框图编写)

1- 使能中断请求

2- 配置中断优先级分组

3- 配置NVIC寄存器,初始化NVIC_InitTypeDef结构体来实现;

4- 编写中断服务函数


英文定义介绍

1- 串口通信的使能TX,SPI的是IE

2- 软件仲裁

3- NVIC_InitTypeDef结构体

1- NVIC_IRQChannel :中断源

2- NVIC_IRQChannelPreemptionPriority:抢占优先级

3- NVIC_IRQChannelSubPriorty:子优先级

4- NVIC_IRQChannelCmd:使能或者失能

4- 中断服务函数 名字都写在启动文件,要与中断向量表名字一样,一般写在stmf4xx_it.c里面

关键字:STM32F429  中断应用  中断控制器 引用地址:STM32F429--中断应用概览

上一篇:STM32F429--系统滴答定时器
下一篇:STM32F429--RCC时钟树

推荐阅读最新更新时间:2024-11-08 18:44

FreeRTOS在STM32应用中的中断优先级设置问题
一、FreeRTOS中断设置介绍 FreeRTOSConfig.h中定义了两个宏,分别是: configKERNEL_INTERRUPT_PRIORITY configMAX_SYSCALL_INTERRUPT_PRIORITY configKERNEL_INTERRUPT_PRIORITY用来设置RTOS内核自己的中断优先级。因为RTOS内核中断不允许抢占用户使用的中断,因此这个宏一般定义为硬件最低优先级。configMAX_SYSCALL_INTERRUPT_PRIORITY用来设置可以在中断服务程序中安全调用FreeRTOS API函数的最高中断优先级。优先级小于等于这个宏所代表的优先级时,程序可以在中断服
[单片机]
FreeRTOS在STM32<font color='red'>应用</font>中的<font color='red'>中断</font>优先级设置问题
第13章 STM32F429启动过程详解
13.1 初学者重要提示 1、如果觉得学习本章节吃力的话,推荐看我们早期做的入门视频教程第8章。 http://www.armbbs.cn/forum.php?mod=viewthread&tid=15408 。 13.2 各个版本的启动文件介绍 这里各个版本的意思是指不同的编译器、不同的F4系列对应的启动文件。 13.2.1 不同编译器对应的启动文件 打开我们为本教程提供的工程文件,路径如下: LibrariesCMSISDeviceSTSTM32F4xxSourceTemplates 在这个文件里面有ST官方为各个编译器提供的启动文件。 看了上面的截图,大家会问怎么没有KEIL MDK呢?其实已经被放在了文
[单片机]
第13章 <font color='red'>STM32F429</font>启动过程详解
STM32F429之GPIO使用
STM32 IO模式 (1)浮空输入_IN_FLOATING ——浮空输入,可以做KEY识别,RX1 (2)带上拉输入_IPU——IO内部上拉电阻输入 (3)带下拉输入_IPD—— IO内部下拉电阻输入 (4) 模拟输入_AIN ——应用ADC模拟输入,或者低功耗下省电 (5)开漏输出_OUT_OD ——IO输出0接GND,IO输出1,悬空,需要外接上拉电阻,才能实现输出高电平。当输出为1时,IO口的状态由上拉电阻拉高电平,但由于是开漏输出模式,这样IO口也就可以由外部电路改变为低电平或不变 。可以读IO输入电平变化,实现C51的IO双向功能 (6)推挽输出_OUT_PP ——IO输出0-接GND, IO输出1 -接VCC,读
[单片机]
中断及定时器的应用
#include reg51.h #define uchar unsigned char #define uint unsigned int sbit K1=P3^7; uchar i,second_count, key_flag_idx; bit key_state; uchar dsy_code ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void delayms(uint ms) { uchar i; while(ms--) for(i=0;i 120;i++); } void key_event_handle() { if(k
[单片机]
<font color='red'>中断</font>及定时器的<font color='red'>应用</font>
6MHz时钟的单片机AT89C51系统时钟中断应用分析
  本文以6MHz时钟的单片机AT89C51系统为例,说明时钟中断的应用:   定时器初值与中断周期 时钟中断无需过于频繁,一般取20mS(50Hz)即可。如需要百分之一秒的时基信号,可取10mS(100Hz)。这里取20mS,用定时器T0工作于16位定时器方式(方式1)。T0的工作方式为:每过一个机器周期自动加1,当计满0FFFFh,要溢出时,便会产生中断,并由硬件设置相应的标志位供软件查询。即中断时比启动时经过了N+1个机器周期。所以,我们只要在T0中预先存入一个比满值0FFFFh小N的数,然后启动定时器,便会在N个机器周期后产生中断。这个值便是所谓的“初值”。下面计算我们需要的初值:时钟为6MHz,12个时钟周期为一个机器周
[单片机]
STM32F429 >> 20. CAN 通讯(二)
STM32 的 CAN 外设简介 STM32 的芯片中具有 bxCAN 控制器 (Basic Extended CAN),它支持 CAN 协议 2.0A 和2.0B 标准。 该 CAN 控制器支持最高的通讯速率为 1Mb/s;可以自动地接收和发送 CAN 报文,支持使用标准 ID 和扩展 ID 的报文;外设中具有 3 个发送邮箱,发送报文的优先级可以使用软件控制,还可以记录发送的时间;具有 2 个 3 级深度的接收 FIFO,可使用过滤功能只接收或不接收某些 ID 号的报文;可配置成自动重发;不支持使用 DMA 进行数据收发。 STM32 的 CAN 架构剖析 STM32 的有两组 CAN 控制器,其中 CAN1 是主
[单片机]
<font color='red'>STM32F429</font> >> 20. CAN 通讯(二)
PIC单片机多中断处理技术的应用与研究
   引言   PIC系列单片机中断源已经达到14个.可谓相当丰富;但同时也带来了一些难题:在处理多中断时不具备处理“高级优先处理”能力的问题,如此多的中断源在处理时很容易产生中断冲突,如何有效的处理中断到达时的时序,其算法应该如何实现成了首先需要解决的问题。    1 中断处理技术   对于PIC系列单片机,其设计上虽然有很多中断,但是并没有规定中断的优先级。当遇到中断的时候,不做任何判断,而是先把指针指向0004H(中断起始地址),至于接下来如何操作则完全交给用户“软处理”完成。其中断时序图如下: 图1 INT引脚中断时序图   中断现场的保护是中断技术中一个很重要的环节。对于PICl6F87X单片机,在进人中断
[单片机]
PIC单片机多<font color='red'>中断</font>处理技术的<font color='red'>应用</font>与研究
STM32F429 >> 15. IWDG_独立看门狗
STM32 有两个看门狗,一个是独立看门狗,另一个是窗口看门狗 独立看门狗用通俗一点的话来解释就是一个 12 位的递减计数器,当计数器的值从某个值一直减到 0 的时候,系统就会产生一个复位信号,即 IWDG_RESET。如果在计数没减到 0 之前,刷新了计数器的值的话,那么就不会产生复位信号,这个动作就是我们经常说的喂狗。看门狗功能由 VDD 电压域供电,在停止模式和待机模式下仍能工作。 IWDG 功能框图 ①. 独立看门狗时钟 独立看门狗的时钟由独立的 RC 振荡器 LSI 提供,即使主时钟发生故障它仍然有效。LSI 的频率一般在 30~60KHZ 之间,根据温度和工作场合会有一定的漂移,我们一般取 40KHZ。
[单片机]
<font color='red'>STM32F429</font> >> 15. IWDG_独立看门狗
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved