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

湖南营销型企业网站开发手机网站建设动态

湖南营销型企业网站开发,手机网站建设动态,建设网站专业公司,给自己的爱人做网站增强版实验简介 EXTI5和EXTI9共享一个中断源 下面的类似 EXTI0到4各自拥有一个中断源 改变引脚 PA0和PA1改变为PA5 和PA6 EXTI的重映射 之前是把PA0映射到EXTI0 PA1映射到EXTI1上 现在是要把PA5和PA6分别映射到EXTI5和6上 EXTI进行初始化 NVIC初始化 编写中断函数 因为EXTI…增强版实验简介 EXTI5和EXTI9共享一个中断源 下面的类似 EXTI0到4各自拥有一个中断源 改变引脚 PA0和PA1改变为PA5 和PA6 EXTI的重映射 之前是把PA0映射到EXTI0 PA1映射到EXTI1上 现在是要把PA5和PA6分别映射到EXTI5和6上 EXTI进行初始化 NVIC初始化 编写中断函数 因为EXTI5和6都可以触发同一个中断源 所以要判断到底是哪一个触发的 就要去查中断挂起寄存器的值 如果是第一个为1就是EXTI5触发的 如果是第二个为1那就是EXTI6触发的 #include stm32f10x.h #include stm32f10x_pal.hint main(void) {NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);PAL_Init();// 1. 初始化IO引脚// 将PA0和PA1分别设置为输入上拉模式// 开启GPIOA的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);// PA0, PA1GPIO_InitTypeDef GPIOInitStruct;GPIOInitStruct.GPIO_Pin GPIO_Pin_5 | GPIO_Pin_6;GPIOInitStruct.GPIO_Mode GPIO_Mode_IPU;GPIO_Init(GPIOA, GPIOInitStruct);// 2. 配置EXTI的引脚映射// 开启AFIO的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);// PA0 - EXTI0GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource5);// PA1 - EXTI1GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource6);// 3. 初始化EXTI// 3.1. 初始化EXTI5EXTI_InitTypeDef EXTIInitStruct;EXTIInitStruct.EXTI_Line EXTI_Line5;EXTIInitStruct.EXTI_Mode EXTI_Mode_Interrupt;EXTIInitStruct.EXTI_Trigger EXTI_Trigger_Rising;EXTIInitStruct.EXTI_LineCmd ENABLE;EXTI_Init(EXTIInitStruct);// 3.2. 初始化EXTI6EXTIInitStruct.EXTI_Line EXTI_Line6;EXTIInitStruct.EXTI_Mode EXTI_Mode_Interrupt;EXTIInitStruct.EXTI_Trigger EXTI_Trigger_Rising;EXTIInitStruct.EXTI_LineCmd ENABLE;EXTI_Init(EXTIInitStruct);// 4. 初始化NVICNVIC_InitTypeDef NVICInitStruct;// 4.1. EXTI0 EXTI5,EXTI6共用一个中断源 写一个就可以了NVICInitStruct.NVIC_IRQChannel EXTI9_5_IRQn;NVICInitStruct.NVIC_IRQChannelPreemptionPriority 0;NVICInitStruct.NVIC_IRQChannelSubPriority 0;NVICInitStruct.NVIC_IRQChannelCmd ENABLE;NVIC_Init(NVICInitStruct);// 5. 初始化PC13RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);GPIOInitStruct.GPIO_Pin GPIO_Pin_13;GPIOInitStruct.GPIO_Mode GPIO_Mode_Out_OD; // Open-drainGPIOInitStruct.GPIO_Speed GPIO_Speed_2MHz;GPIO_Init(GPIOC, GPIOInitStruct);while(1){} }void EXTI9_5_IRQHandler(void) {if(EXTI_GetITStatus(EXTI_Line5)SET) // EXTI5触发的中断{//清除中断源EXTI_ClearITPendingBit(EXTI_Line5);//点灯GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_RESET);}if(EXTI_GetITStatus(EXTI_Line6)SET) //EXTI6触发的中断{//清除中断源EXTI_ClearITPendingBit(EXTI_Line6);//灭灯GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_SET);} }EXTI的PAL库编程 标准库编程的不足 初始化IO引脚就要使能GPIOA和C的时钟调用GPIO_Init函数初始化GPIOA GPIOC的引脚 输入还是输出模式 输出的速度输入就不用设置 然后IO引脚的重映射 使能AFIO的时钟调用函数GPIO_EXTILineConfig把PA5和PA6分别映射到EXTI5 EXTI6上去 然后再初始化EXTI 调用EXTI INIT函数 EXTI的通道 EXTI的模式事件还是中断模式等等 然后还要初始化NVIC 还要查明中断来自于那个通道 因为PA5和PA6是共用中断源 要是是PA1和PA0就各自用中断源 无需判断中断来自于那个通道 PAL库编程接口简介 EXTI PAL库 编程分为三个部分 填写初始化参数初始化了一切就是没有关闭中断屏蔽 使能EXTI的通道就是闭合中断屏蔽 编写中断响应函数 在标准库中我们是使用弱方法 覆盖掉函数名 在中断函数中我们查询了中断挂起位的值分辨到底是那个PA5还是PA6引起的触发中断还清除了中断 在PAL库中只需要调用一个函数接口就可以完成这两件事
http://www.hkea.cn/news/14344298/

相关文章:

  • 自己做的网站用别的电脑怎么访问长沙网站制作品牌
  • 爱站网反链查询网站公司的客户怎么来
  • 制作网站的公司哪家比较好申请域名步骤
  • 河南省建设厅专业业务系统网站营销型wordpress模板下载
  • 容桂网站设计制作平面广告作品分析
  • 推荐做幻灯片搜图网站搜索网站大全排名
  • 搭建网站需要什么技术一元夺宝网站建设
  • 学vue可以做pc网站菏泽网架公司
  • 网站服务器++免费手机网站怎么dw做
  • 网站打开的速度特别慢的原因网站建设 大纲
  • 你去湖北省住房城乡建设厅网站查iosapp开发用什么语言
  • 宝塔做两个网站6开公司要做哪些准备
  • 网站建设公司的发展前景乐山做网站
  • 网站建设教程哪个好如何做网盟推广网站
  • 广州公司注册代理公司注册服务苏州seo关键词优化方法
  • dw手机销售网站制作c# 手机版网站开发
  • 怎么用vs2008做网站网站空间如何选择
  • 百度关键词查询网站php音乐外链网站源码
  • 佛山网站建设电话西部数码网站管理助手2.0
  • 百度手机网站优化指南济南网站推广哪家好
  • 品牌企业网站建设公司软件开发工程师中级职称
  • 网站开发购物店找个免费网站这么难吗
  • ftp上传文件到网站网站响应式和非响应式
  • 辽源网站建设免费网页制作软件哪里找
  • 金顺广州外贸网站建设天元建设集团有限公司股份
  • 网站利用百度离线地图扫码支付做进商城网站
  • 网站建设的可用性中国设计联盟网服务内容
  • 泰安网站建设优化案例报告惠州市中国建设银行网站
  • 商务局网站溪江农贸市场建设建设工程专业承包交易中心网站
  • 基于html5开发的网站开发厦门网站建设公司哪家好