江科大stm32学习笔记——【5-1】EXIT外部中断

1.中断系统

中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处理完成后返回原来被暂停的位置继续运行。

外部中断:引脚发生电平跳变

定时器:定时的时间到了

串口通信:接收到了数据

中断优先级:当有多个中断源同时申请中断时,CPU会根据中断源的轻重缓急进行裁决,优先响应更加紧急的中断源

中断嵌套:当一个中断程序 正在运行时,又有新的更高优先级的中断源申请中断,CPU再次暂停当前中断程序,转而处理新的中断程序,处理完后依次进行返回

2.STM32中断

STM32中断包含EXIT外部中断TIM定时器ADC模数转换器USART串口SPI通信I2C通信RTC实时时钟等多个外设,几乎所有模块都可以申请中断。

NVIC是STM32中用来管理中断,分配优先级的。

3.NVIC(嵌套中断向量控制器)

NVICSTM32中用来管理中断,分配优先级的

①基本结构:内核外设

 

n指一个外设可能会同时占用多个中断通道,所以有n条线

②NVIC优先级分组 

 NVIC的中断优先级由优先级寄存器的4位(0~15)决定,数字越小优先级越高。

抢占优先级高的可以中断嵌套,响应优先级高的可以优先排队。抢占优先级和响应优先级均相同的按中断号排队。

当自己的程序突发情况比较多就选3/4组这种抢占优先级比较多的配置方式 

4.EXTI外部中断 

基本功能:监测指定GPIO口的电平信号,引脚电平变化,申请中断

支持的触发方式:上升沿,下降沿,双边沿(上升沿和下降沿都可以触发中断),软件触发 

支持的GPIO口:所有GPIO口,但相同的Pin不能同时触发中断 eg.PA1和PB1

通道数:16个GPIO_Pin,外加PVD输出,RTC闹钟,USB唤醒,以太网唤醒 

触发响应方式:中断响应/事件响应(不触发中断,触发别的外设操作)

基本结构:

 

框图:

 

 5.AFIO复用IO口

在STM32中,AFIO主要完成两个任务:复用功能引脚重映射,中断引脚选择

6. 旋转编码器

用来测量位置,速度或旋转方向的装置,当其旋转轴旋转时,其输出端可以输出与旋转速度和方向对应的方波信号,读取方波信号的频率和相位信息即可得知旋转轴的速度和方向。

旋转轴旋转时,两个触点以相位相差90度的方式交替导通。

C1/2是滤波电容,R1/2是上拉电阻 ,R3/4是限流电阻。

<think>好的,我需要处理用户关于科大STM32学习资料的查询。首先,用户希望获取相关的笔记、教程和资料,同时系统级指令要求我按照特定格式回答,包括正确使用LaTeX数学表达式,生成相关问题,并在引用末尾添加标识。 首先,我要检查用户提供的引用内容。引用[1]提到了新建工程时复制启动文件的步骤,引用[2]解释了ADC的作用,引用[3]涉及蜂鸣器的接线和代码。这些引用都是用户提供的站内资料,需要正确对应到回答中。 接下来,根据用户的问题,需要整理这些引用内容,给出结构清晰的回答。可能需要分点说明各个笔记的内容,比如新建工程、ADC模块、蜂鸣器配置等。同时,需要确保按照要求使用正确的LaTeX格式,例如在涉及数学公式的地方用$...$包裹,但根据引用内容,可能暂时没有数学公式,所以需要确认是否有必要添加,或者用户的问题是否需要涉及数学部分。不过当前问题主要关于STM32学习资料,可能不需要数学表达式,但需遵循系统指令,如果有相关内容则应用。 然后,生成相关问题。根据用户提供的示例,问题应围绕主题展开,例如资料获取方法、ADC的应用、端口配置注意事项等。需要确保问题与引用内容相关,并且帮助用户进一步探索主题。 还需要注意回答的中文要求,以及引用的自然添加。例如,在提到新建工程步骤时,末尾添加[^1],在ADC解释后添加[^2],蜂鸣器接线部分添加[^3]。 现在需要组织回答的结构: 1. 新建工程的步骤(引用[1]) 2. ADC模块的作用(引用[2]) 3. 蜂鸣器配置注意事项(引用[3]) 4. 资料获取途径总结 然后生成相关问题,如资料下载方法、ADC应用实例、避免使用的端口等。 最后,检查是否符合所有系统指令,包括LaTeX的正确使用(虽然当前可能不需要,但如果有变量或代码部分,需正确格式化),引用标识的位置,以及问题的相关性。 可能遇到的问题:用户提供的引用中没有涉及数学内容,所以需要确认是否需要强制加入数学表达式,但根据问题内容,可能不适用,因此可忽略数学部分,或寻找是否有隐含的数学点。例如,ADC转换可能涉及数字变量的处理,但用户引用中未提到具体数学公式,所以可能不需要。因此,重点放在正确引用和问题生成上。 现在开始撰回答,确保每个引用段落末尾自然添加标识,结构清晰,分点说明,然后列出相关问题。</think>以下是关于科大STM32学习资料的整理与说明: ### 一、科大STM32学习笔记核心内容 1. **新建工程配置** 在STM32工程创建中,需复制启动文件至指定目录。具体步骤为:在官方固件库路径`STM32F10x_StdPeriph_Lib_V3.5.0/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/arm`中找到8个`.s`启动文件,将其粘贴到工程文件夹内的`Start`目录中[^1]。 2. **ADC模块解析** ADC(模数转换器)用于将模拟电压信号转换为数字变量,例如读取传感器电压值。STM32通过ADC将引脚上的连续电压映射为寄存器中的数字量,供程序进行显示、逻辑判断等操作[^2]。 3. **外设配置注意事项** 以蜂鸣器为例,需选择有源高电平触发类型,接线时注意`GND`接地、`VCC`接正极、`I/O`接指定引脚(如`PB12`)。需避免使用默认调试端口`PA15`、`PB3`、`PB4`,否则需额外配置[^3]。 ### 二、资料获取途径 - **官方教程**:通过科大提供的“STM32入门教程”配套资料获取固件库、示例代码等。 - **实验代码**:参考笔记中的代码片段,如蜂鸣器驱动逻辑: ```c void Beep_Init(void) { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); GPIO_InitTypeDef GPIO_InitStruct; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStruct.GPIO_Pin = GPIO_Pin_12; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOB, &GPIO_InitStruct); } ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值