- 1
- 2
- 3
- 4
- 5
固件中断与主循环的分工配合.docx
资料介绍
固件里的中断和主循环怎么配合:别让中断"扛太多"
一、中断和主循环的分工
嵌入式固件里,中断(ISR,Interrupt Service Routine)和主循环(或RTOS任务)是配合工作的。理想的分工是:中断负责"快速响应"(检测到事件、收数据、置标志),主循环负责"慢速处理"(处理数据、做逻辑、控制外设)。
但很多人写固件,把太多工作放在中断里(在中断里做耗时操作、处理复杂逻辑),结果中断"扛太多",导致系统实时性差、中断阻塞、甚至程序跑飞。
二、中断里放太多工作的后果
2.1 阻塞其他中断
中断里如果做耗时操作(处理数据、复杂计算、printf),会一直占用CPU,其他中断(尤其是高优先级的)等不到处理,实时性差。
2.2 系统实时性差
中断里耗时长,主循环/其他任务被耽误,整体响应慢。
2.3 嵌套/重入问题
中断里调用可能重入的函数(printf、某些库函数),可能有重入问题,出bug。
2.4 定时不准
如果某个定时中断里做耗时操作,它本身的下一次触发会被耽误,定时不准。
部分文件列表
| 文件名 | 大小 |
| 固件中断与主循环的分工配合.docx | 37K |
相关下载
- 大唐杯仿真平台使用方法介绍
- PCB做板阻抗要求计算.xls
- PCB转Gerber方法.doc
- USB3.0-ALTERA-DDR2开发板入门指南.pdf
- EZ-USB FX3 I2C Boot Option.pdf
- EZ-USB FX3 Hardware Design Guidelines.pdf
- CYPRESS USB3.0 FX3 DEBUG仿真设置——Eslips...
- CYUSB3KIT-001 FX3 DVK Schematic PDF 硬件原...
- CYUSB3KIT-001 FX3 DVK Schematic CADENCE 设...
- Altera_cyclone III -DDR2-USB3.0开发板CADEN...
最新上传
-
yahuang001 打赏3.00元 3天前
-
yahuang001 打赏1.00元 3天前
-
zhongshaoxiong 打赏3.00元 3天前
-
他山之石可攻玉 打赏60.00元 3天前
用户:烟雨
-
江岚 打赏210.00元 3天前
用户:潇潇江南
-
江岚 打赏100.00元 3天前
-
21ic下载 打赏310.00元 3天前
用户:gsy幸运
-
21ic下载 打赏310.00元 3天前
用户:zhengdai
-
21ic下载 打赏310.00元 3天前
用户:江岚
-
21ic下载 打赏210.00元 3天前
用户:潇潇江南
-
21ic下载 打赏60.00元 3天前
用户:他山之石可攻玉
-
21ic下载 打赏60.00元 3天前
用户:烟雨
-
21ic下载 打赏60.00元 3天前
用户:w178191520
-
21ic下载 打赏60.00元 3天前
用户:w993263495
-
21ic下载 打赏110.00元 3天前
用户:xzxbybd
-
21ic下载 打赏60.00元 3天前
用户:zq_1943
-
21ic下载 打赏20.00元 3天前
用户:kk1957135547
-
21ic下载 打赏20.00元 3天前
用户:sun2152
-
21ic下载 打赏20.00元 3天前
用户:铁蛋锅
-
21ic下载 打赏20.00元 3天前
用户:xuzhen1
-
21ic下载 打赏20.00元 3天前
用户:w1966891335
-
21ic下载 打赏35.00元 3天前
用户:有理想666
-
21ic下载 打赏15.00元 3天前
用户:nuaanuaa111
-
21ic下载 打赏20.00元 3天前
用户:liqiang9090
-
21ic下载 打赏15.00元 3天前
用户:ningmengge
-
21ic下载 打赏10.00元 3天前
用户:mulanhk
-
21ic下载 打赏5.00元 3天前
用户:asys
-
21ic下载 打赏10.00元 3天前
用户:舞蹈荀彧
-
21ic小能手 打赏5.00元 3天前
资料:磁编码器开源方案
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏50.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏10.00元 3天前
-
21ic小能手 打赏10.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏3.00元 3天前




全部评论(0)