当前位置: 首页 > news >正文

网站 验证码 错误商丘市住房和城乡建设厅网站

网站 验证码 错误,商丘市住房和城乡建设厅网站,高端酒店网站模板免费下载,简约个人网站模板一:EXTI 简介 STM32F10x 外部中断/事件控制器(EXTI)包含多达 20 个用于产生事件/中断请求的边沿检测器。 EXTI 的每根输入线都可单独进行配置,以选择类型(中断或事件)和相应的触发事件(上升 沿触…

一:EXTI 简介

STM32F10x 外部中断/事件控制器(EXTI)包含多达 20 个用于产生事件/中断请求的边沿检测器。

EXTI 的每根输入线都可单独进行配置,以选择类型(中断或事件)和相应的触发事件(上升

沿触发、下降沿触发或边沿触发),还可独立地被屏蔽。

二:EXTI 配置步骤

(EXTI 相关库函数在 stm32f10x_exti.c 和stm32f10x_exti.h 文件中)

(1)使能 IO 口时钟,配置 IO 口模式为输入

(2)开启 AFIO 时钟,设置 IO 口与中断线的映射关系

1、使能
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
2、将端口A 映射 引脚0
GPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource15);

(3)配置中断分组(NVIC),使能中断

EXTI产生中断线 ---> 流向NVIC

NVIC初始化

NVIC_InitTypeDef NVIC_InitStructure; 
NVIC_InitStructure.NVIC_IRQChannel = EXTI15_10_IRQn;    //EXTI15 中断通道 
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=2; //抢占优先级 
NVIC_InitStructure.NVIC_IRQChannelSubPriority =3;      //子优先级 
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;        //IRQ 通道使能 
NVIC_Init(&NVIC_InitStructure);                       //根据指定的参数初始化 VIC 寄存器

(4)初始化 EXTI,选择触发方式

文件在stm32f10x_exti.c和 stm32f10x_exti.h 当中

void EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct);

函数形参是有一个结构体 EXTI_InitTypeDef 类型的指针变量

typedef struct 
{ uint32_t EXTI_Line;                 //中断/事件线  EXTIMode_TypeDef EXTI_Mode;         //EXTI 模式 EXTITrigger_TypeDef EXTI_Trigger;  //EXTI 触发方式 FunctionalState EXTI_LineCmd;       //中断线使能或失能 
}EXTI_InitTypeDef;EXTI_Line:EXTI 中断/事件线选择,可配置参数为 EXTI0-EXTI20,可参考上表。
EXTI_Mode:EXTI 模式选择,可以配置为中断模式 EXTI_Mode_Interrupt 和事件模式 EXTI_Mode_Event。 
EXTI_Trigger:触发方式选择,可以配置为上升沿触发 EXTI_Trigger_Rising、下降沿触发 EXTI_Trigger_Falling、上升沿和下降沿触EXTI_Trigger_Rising_Falling 。
EXTI_LineCmd:中断线使能或者失能,配置 ENABLE 为使能,DISABLE 为失能,我们这里要使用外部中断,所以需使能

(5)编写 EXTI 中断服务函数

中断服务函数名是固定的,在开始文件startup_stm32f10x_md.s 当中寻找

EXTI0_IRQHandler         
EXTI1_IRQHandler         
EXTI2_IRQHandler         
EXTI3_IRQHandler         
EXTI4_IRQHandler
EXTI15_10_IRQHandler     

stm32f10x_exti.h 函数

stm32f10x_exti.h 函数将外设 EXTI 寄存器重设为缺省值
void EXTI_DeInit(void);根据 EXTI_InitStruct 中指定的参数初始化外设 EXTI 寄存器
void EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct);把 EXTI_InitStruct 中的每一个参数按缺省值填入
void EXTI_StructInit(EXTI_InitTypeDef* EXTI_InitStruct);产生一个软件中断
void EXTI_GenerateSWInterrupt(uint32_t EXTI_Line); EXTI_Line:待使能或者失能的 EXTI 线路检查指定的 EXTI 线路标志位设置与否
FlagStatus EXTI_GetFlagStatus(uint32_t EXTI_Line);EXTI_Line:待检查的 EXTI 线路标志位清除 EXTI 线路挂起标志位
void EXTI_ClearFlag(uint32_t EXTI_Line);EXTI_Line:待清除标志位的 EXTI 线路检查指定的 EXTI 线路触发请求发生与否
ITStatus EXTI_GetITStatus(uint32_t EXTI_Line);EXTI_Line:待检查 EXTI 线路的挂起位清除 EXTI 线路挂起位
void EXTI_ClearITPendingBit(uint32_t EXTI_Line);EXTI_Line:待清除 EXTI 线路的挂起位

http://www.yayakq.cn/news/381082/

相关文章:

  • 搭建网站框架学校的二级网站怎么建设
  • 用手机做诱导网站jsp网站空间网站开发
  • 百度小说排行榜2020绵阳网站推广优化
  • 网站开发劣势家教
  • 网站里的搜索怎么做的做网站的如何开发业务
  • 网站突然没有收录wordpress微信机器人下载地址
  • 外贸网站推广方案可以商用的电视app永久软件
  • 做网站记者的出路是什么国家防疫政策最新调整
  • 南京做网站的公司有哪些常州网站建设找思创
  • 上海网站推广排名网站开发于制作总结
  • 沧州网站建设的公司用dw做网站首页
  • h5网站源代码网站花瓣飘落的效果怎么做
  • 弘泽建设集团网站深圳seo优化排名公司
  • 泊头做网站电话适合穷人开的小店
  • 网站做百度推广有没有效果雪白丰腴做美妇网站
  • 上海网站制作技术邢台推广网站建设电话
  • 招聘网站怎么做才能吸引人wordpress关闭插件
  • 大型门户网站建设需要哪些技术和注意事项永兴集团网站
  • 建设银行手机行网站网站建设中请稍后再访问
  • wordpress主题创建目录优化产业结构
  • 做房地产咨询网站怎么赢利建设银行教育网站
  • 做软件工资高还是网站wordpress换域名后
  • 做空间的网站织梦pt官网
  • c2c电子商务网站策划网站栏目设置说明
  • 建设一个跟京东一样的网站中国外贸网
  • 全国的p2p网站建设wordpress 自定义字段 调用
  • vm虚拟化建设网站上海网站建设定制开发
  • 哪个建设网站好制作logo设计
  • wordpress两个站合并万网域名续费查询
  • 当前网站开发什么语言右面是某网站建设立项需求