完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
在单片机运用中,EXTI的使用算是常规操作了。在32单片机中,EXTI的每个中断均可单独配置来选择类型(即中断和事件)以及相应的触发事件(上升沿触发、下降沿触发、边沿触发等),也可以进行单独屏蔽的操作。
如下是32中的EXTI框图,其中线路1–>2–>3–>4–>5为“中断”、而1–>2–>3–>6–>7–>8为“事件” 在上图可以看到,由于使用的是PCLK2,所以我们需要使能APB2时钟(关于STM32的时钟系统可以参考我的另一篇博客:浅析STM32F4xx时钟系统) 在32之中,EXTI共有23个线路(即0~22),其中前16个线路为对应的IO口的输入中断,也是本文所介绍的内容,之后的中断在我学习到之后会再与大家进行分享。 在EXTI0~15中,数字0-15对应的是每个端口的引脚编号。以下图为例,EXTI0则来自于由A—H端口的0号管脚。 在配置步骤中,主要有以下五步: (1)使能IO口,设置为输入 (2)开启SYSCFG时钟,设置IO口与中断间的映射关系 NVIC_InitTypeDef NVIC_InitStruct;//设置两结构体变量 EXTI_InitTypeDef EXTI_InitStruct; RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG,ENABLE);//使能外设时钟 SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA,EXTI_PinSource0);//对应映射为PA0管脚 (3)配置中断分组NVIC,使能中断 NVIC_InitStruct.NVIC_IRQChannel=EXTI0_IRQn; NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority=2;//设置抢占优先级 NVIC_InitStruct.NVIC_IRQChannelSubPriority=2;//设置响应优先级 NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE; NVIC_Init(&NVIC_InitStruct); (4)初始化EXTI,选择触发方式 EXTI_InitStruct.EXTI_Line=EXTI_Line0;//设置线路为0(因为连接的是PA0管脚) EXTI_InitStruct.EXTI_Mode=EXTI_Mode_Interrupt;//类型为中断 EXTI_InitStruct.EXTI_Trigger=EXTI_Trigger_Rising; //上升沿触发 EXTI_InitStruct.EXTI_LineCmd=ENABLE; EXTI_Init(&EXTI_InitStruct); (5)编写中断函数 void EXTI0_IRQHandler(void) { if(EXTI_GetITStatus(EXTI_Line0)==1)//判断中断状态 { delay_nms(10);//延时10ms消抖 if(KEY_UP==1) { led2=0; } } EXTI_ClearITPendingBit(EXTI_Line0); //清空中断符号 } |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1786 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1622 浏览 1 评论
1089 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
730 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1680 浏览 2 评论
1942浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
739浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
576浏览 3评论
599浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
561浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 21:15 , Processed in 0.886542 second(s), Total 77, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号