uC/OS 的中断 —— uC/OS学习笔记(三)
来源:互联网 发布:js读取本地xml文件 编辑:程序博客网 时间:2024/04/29 00:51
1. 常见名词
a) 中断服务子程序:应中断请求而运行的程序
b) 中断向量:中断服务子程序的入口地址
2. uC/OS的中断过程
系统接收到中断请求后,如果这时CPU处于中断允许状态,系统就会立刻终止正在运行的任务,而按照中断向量的指向运行中断服务子程序。
对于可剥夺型内核uC/OS而言,中断服务子程序运行结束之后,系统将会根据情况进行一次任务调度去运行优先级最高的就绪任务,而不一定接着运行被中断的任务。
3. 中断嵌套
uC/OS 2 系统允许中断嵌套,即高优先级别的中断源的中断请求可以中断低优先级别的中断服务程序运行。
为了记录中断嵌套的层数,uC/OS 2系统定义了一个全局变量OSIntNesting。通过调用函数OSIntEnter()来将这个全局变量加1,从而用它来记录中断嵌套的层数。当中断 服务程序完成后,调用OSIntExit()函数,来让OSIntNesting置0。
4. 应用程序的临界段(重要)
a) 实际上对于应用程序来说,比较重要的概念就是临界段,中断在uC/OS中到底如何运作只用看一下即可。
在uC/OS中,用OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()这两个宏来封装与系统硬件相关的关中断和开中断指令
b) 不要在临界段中调用uC/OS提供的功能函数。
- uC/OS 的中断 —— uC/OS学习笔记(三)
- uC/OS 的中断——uC/OS学习笔记(三)
- uC/OS 的时钟和时间——uC/OS学习笔记(四)
- uC/OS 的任务——uC/OS学习笔记(二)
- uC/OS 的消息邮箱——uC/OS学习笔记(五)
- uC/OS 系统的裁剪——uC/OS学习笔记(六)
- uC/OS 的操作错误总结——uC/OS学习笔记(零)
- uC/OS 的消息队列——uC/OS学习笔记(七)
- uc/os的中断
- uc/os-iii学习笔记-中断管理
- uC/OS-III 学习笔记(一)——uC/OS-III移植
- uC/OS-II系统学习笔记(4)—— uC/OS-II概述上篇
- uC/OS-II系统学习笔记(5)—— uC/OS-II概述下篇
- uc/os学习笔记1【uc/os的任务管理】
- UC/OS-II 的中断
- uC/OS-II学习笔记(1)
- uC/OS-II学习笔记(2)
- uC/OS-II学习笔记(3)
- wince usb驱动中的CHub::AttachDevice函数
- ubuntu上AMD显卡驱动黑屏问题的一种解决办法
- UVA 11107 Life Forms(后缀数组 OR hash)
- ObjectARX学习笔记(四)----中如何得到当前模块的句柄 HMODEL
- 无线局域网如何设置电脑固定ip
- uC/OS 的中断 —— uC/OS学习笔记(三)
- SQL查询前几条数据的方法
- linux起步(win7下安装双系统-CentOS)
- uva 146 ID Codes
- Valid Palindrome
- Linux网络编程(2):基于TCP的套接字编程
- js代码加密
- 有C++、Java、C#,为什么还要学C语言?
- android的jar包生成及使用