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

贵州网站建设维护dedecms调取友情链接 网站类型

贵州网站建设维护,dedecms调取友情链接 网站类型,互联网营销师培训费用是多少,在线咨询具体的使用CubeMX新建工程的步骤看这里:STM32CubeMX学习笔记(3)——EXTI(外部中断)接口使用_cubemx exti-CSDN博客 之前一直都是在看野火的视频没有亲手使用CubeMX生成工程,而且野火给的例程代码框架和自动生成的框架也不一样&…

具体的使用CubeMX新建工程的步骤看这里:STM32CubeMX学习笔记(3)——EXTI(外部中断)接口使用_cubemx exti-CSDN博客

之前一直都是在看野火的视频没有亲手使用CubeMX生成工程,而且野火给的例程代码框架和自动生成的框架也不一样,原本想着对比着例程应该不会多难,但是动手实践下来还是有很多问题的,光看视频确实没有动手操作更能帮助理解。

1、使用CubeMX生成的是外设的初始化代码,应用代码需要自己加上。

本实验使用CubeMX生成的GPIO部分都在一个文件中,不管是接收中断信号的引脚PA0,PC13还是控制LED灯的引脚PB0,PB1,配置模式和初始化都在gpio.c这一个文件中,这与例程分别放在bsp_led.c和bsp_exti.c文件中不同,反正我目前是直接用了,没有新建板级支持包。

bsp_led.c文件放LED灯对应的引脚PB0  PB1的初始化。

bsp_exti.c文件放KEY对应的引脚PA0  PC13的EXTI模式和初始化。

应用代码部分就是在中断服务函数那里让LED翻转的程序。

2、整体流程就是按下按键产生中断跳转到对应中断服务函数中执行里面的程序

所以就是按键1对应引脚PA0,按下后产生中断跳转到中断服务函数执行使PB0电平反转的操作,对应的绿灯翻转。按键2同样。

3、在中断服务函数里面执行的程序

	if(__HAL_GPIO_EXTI_GET_IT(GPIO_PIN_0) != RESET) {// LED1 取反	digitalToggle(GPIOB,GPIO_PIN_0);//清除中断标志位__HAL_GPIO_EXTI_CLEAR_IT(GPIO_PIN_0);     }  

先判断是否产生中断,然后对应引脚电平取反,清除中断标志位 

问题1:

不清楚__HAL_GPIO_EXTI_GET_IT(GPIO_PIN_0)功能

  • __HAL_GPIO_EXTI_GET_IT(GPIO_PIN_0) 只能检查 EXTI 线 0 是否触发了中断,无法区分具体是哪个端口的引脚(如 PA0 或 PB0)。

  • 如果需要判断是否是 PA0 触发的中断,必须结合 HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) 来读取 PA0 的电平状态。

  • 在初始化时,确保 EXTI 线 0 只连接到 PA0,避免其他引脚干扰。

问题2:

需要定义:#define digitalToggle(p,i)        {p->ODR ^=i;}            //输出翻转状态

4、使用库函数

HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_0);       可以代替digitalToggle(p,i) 。

5、与使用回调函数的写法相比:

中断服务程序(ISR)通常是一个单独的函数,所有的中断逻辑都在这个函数内部实现。这种方式比较直接,适合简单的应用场景。

  1. 解耦设计:通过使用回调函数,可以将具体的中断处理逻辑从ISR中分离出来,ISR只需要负责调用相应的回调函数。这样做的好处是可以根据需要灵活地定义和修改中断处理逻辑,而无需更改ISR本身。

  2. 提高模块化和复用性:每个中断事件对应的处理逻辑都可以被封装成独立的回调函数,这不仅提高了代码的模块化程度,还使得这些处理逻辑可以在不同场景下重复利用。

  3. 增强灵活性:可以根据不同的条件或状态动态设置不同的回调函数,从而实现更加灵活的中断处理策略。

  4. 简化ISR:ISR变得更加简洁,主要职责是检查中断源并调用相应的回调函数。这样可以缩短ISR执行时间,减少对系统实时性的负面影响。

  5. 更好的实时响应:因为ISR的工作量减少,可以更快地响应中断事件,对于对时间敏感的应用来说非常重要。

总的来说,使用中断回调函数可以使你的中断处理机制更加灵活、易于管理和扩展,同时也能提高系统的响应速度和整体性能。而不使用回调函数的方式则较为直接简单,适用于中断处理逻辑相对简单固定的场景。选择哪种方式取决于具体的应用需求和项目复杂度。


文章转载自:

http://4wELchuU.hrgxk.cn
http://n8NI1UaK.hrgxk.cn
http://ondASyMD.hrgxk.cn
http://wjCjPiyk.hrgxk.cn
http://DgVIOJMz.hrgxk.cn
http://Cdc37KEF.hrgxk.cn
http://eFG0Adtn.hrgxk.cn
http://GbwlD8e3.hrgxk.cn
http://L4AsJ7Li.hrgxk.cn
http://GjStlXxf.hrgxk.cn
http://hZ52SF5J.hrgxk.cn
http://7wP3f5vx.hrgxk.cn
http://q6N6DZNB.hrgxk.cn
http://q5xYIPDm.hrgxk.cn
http://zgifgjZh.hrgxk.cn
http://bPPnn9Ma.hrgxk.cn
http://hqi8AhVG.hrgxk.cn
http://yMXsu6Kz.hrgxk.cn
http://LlzuzTi3.hrgxk.cn
http://YCIbBU4k.hrgxk.cn
http://WotX0bae.hrgxk.cn
http://qYgOUbJ0.hrgxk.cn
http://SEBghEX7.hrgxk.cn
http://DmMh2ls4.hrgxk.cn
http://fTSuvIem.hrgxk.cn
http://cdDBcamq.hrgxk.cn
http://xxBLAB85.hrgxk.cn
http://iQIuQyhF.hrgxk.cn
http://0U31jIYb.hrgxk.cn
http://0HGIn7B9.hrgxk.cn
http://www.dtcms.com/wzjs/753243.html

相关文章:

  • 做百度糯米网站的团队公司网站建设济南兴田德润地址
  • 昆明体育城微网站建设效果图制作软件app
  • 网站建设小公司生存社交网站开发平台
  • 做网站需要备案吗电子商务网站建设与管理课程设计
  • seo人员要先对网站进行诊断网站建设的后期服务要包括什么软件
  • 建设安全工程信息网站微信小程序网站建设推广
  • 自建网站平台要多少钱wordpress 中国 论坛
  • 淘宝基地网站怎么做音乐网站设计怎么做
  • 律师网站建设推广湖南网站设计外包哪家好
  • 二手书店网站建设规划书为什么很多网站在维护
  • mvc在网站开发中的应用青岛app开发公司
  • 网站建设哪家好知道万维科技wordpress添加cnzz
  • 淘宝接单做网站wordpress自己创建数据库
  • 新乡网站优化公司推荐做韩国网站有哪些东西吗
  • wordpress分城市访问网站建设优化公司排名
  • 企业网站设计推荐wordpress商品展示模块
  • 南通做网站如何做百度网站推广
  • 提交收录网站免费发布外链
  • 网站删除代码一级a做爰片免费网站孕交视频
  • 用ps制作网站首页jsp网站开发环境配置
  • 河南省建设监理协会官网站四种营销策略
  • 阜宁做网站价格单位的网站建设费会计处理
  • 网站制作哪些分类asp新闻发布网站模板下载
  • 顺义企业建站费用佳城建站 网站
  • 网页设计个人网站作业贵州网站建设费用
  • 一站式做网站佛山建设企业网站
  • 永康市网站建设制作深圳网站建设大公司好
  • 网站 导航条施工企业公路工程审图ppt
  • 织梦响应式网站怎么做关键词优化是怎样收费的
  • 网站栏目页模板学生免费服务器