资料介绍
今天的内容主要讲述进入和退出中断的方法、临界区的介绍以及延时函数,取消延时函数和获取系统时间。
1、ucosIII中断
中断:应内部或外部异步事件的请求中止当前任务,而去处理异步事件所要求的任务的过程叫做中断。
进入中断
OSIntNestingCtr来记录中断嵌套次数,UCOSIII最多支持250级的中断嵌套。退出中断服务函数时要调用函数OSIntExit()。
退出中断
退出函数内部步骤如下:
1、系统是否运行。不符合则退出
2、关闭全局中断
3、中断嵌套次数和任务切换次数记录
4、进行中断级任务切换
临界区
1、临界段代码也叫做临界区,是指那些必须完整连续运行,不可被打断的代码段。当访问这些临界段代码的时候需要对这些临界段代码进行保护
2、宏OS_CFG_ISR_POST_DEFERRED_EN:
0:UCOSIII使用关中断的方式来保护临界段代码
1:采用给调度器上锁的方式来保护临界段代码。
3、UCOSIII定义了一个进入临界段代码的宏:OS_CRITICAL_ENTER(),定义了两个退出临界段代码的宏:OS_CRITICAL_EXIT和OS_CRITICAL_EXIT_NO_SCHED()。
时间管理
任务延时
· UCOSIII中的任务是一个无限循环并且还是一个抢占式内核,为了使高优先级的任务不至于独占CPU,可以给其他优先级较低任务获取CPU使用权的机会,UCOSIII中除空闲任务外的所有任务必须在合适的位置调用系统提供的延时函数或者任务调度函数,让当前的任务暂停运行一段时间并进行一个任务切换。
· 延时函数有两种,OSTimeDly()—指定节拍数和OSTimeDlyHMSM()—参数直观。
· OSTimeDly()函数有三种工作模式:相对模式、周期模式和绝对模式。
OSTimeDlyHMSM()函数仅在相对模式下工作。
取消任务延时
延时任务任务可通过在其他任务中调用函数OSTimeDlyResume()取消延时而进入就绪状态,此函数最后会引发一次任务调度。
获取和设置系统时间
· UCOSIII定义了一个CPU_INT32U类型的全局变量OSTickCtr来记录系统时钟节拍数,在调用OSInit()时被初始化为0,以后每发生1个时钟节拍,OSTickCtr加1。
· OSTimeSet()允许用户改变当前时钟节拍计数器的值,慎用!!!!!
· OSTimeGet()用来获取动迁时钟节拍计数器的值。
(mbbeetchina)
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- STM32之FreeRTOS:(一) 中断配置和临界段的使用
- UCOSIII学习笔记(二)任务管理、Hook函数、中断
- UCOSIII 系统(STM32任务管理)学习笔记
- 中断与事件关系的解剖资料下载
- Android电源管理设计资料下载
- STM32按键扫描/按键中断/外部中断资料下载
- Cortex-M3 NVIC与中断控制资料下载
- 中断时间间隔的中断服务程序实现免费下载
- FWLib3.5和uCOSIII3.03源代码资料免费下载 66次下载
- uCOSIII源代码资料下载 37次下载
- UCOS扩展例程-UCOSIII使用信号量访问共享资源区 19次下载
- UCOS扩展例程-UCOSIII时间片轮转调度 21次下载
- UCOS扩展例程-UCOSIII内存管理 25次下载
- 时间管理手册
- 西安交通大学管理学院项目时间管理 0次下载
- 多区飞行时间(ToF)传感器的特点 867次阅读
- RTOS中临界区的使用技巧 631次阅读
- RF-ADC后台校准原理及收敛时间测量 1933次阅读
- SIMATIC S7-1500 PLC时间中断组织块及其应用 2194次阅读
- 石墨烯制备新技能:超临界流体威廉希尔官方网站 993次阅读
- STM32中断系统的工作流程 2146次阅读
- 什么是RTOS临界段 986次阅读
- CKS32F4xx系列产品NVIC中断优先级管理单元讲解 948次阅读
- 三菱PLC中断程序如何触发 7530次阅读
- 8051单片机定时器溢出中断与CPU响应中断的时间误差分析 3971次阅读
- AVR单片机外部中断实例及下载烧录的方法 2107次阅读
- 什么是单片机的中断响应时间 9630次阅读
- 什么是临界段 RTOS临界段的作用是什么 1.1w次阅读
- ABB工业机器人中断是什么?中断的应用和程序的详细资料概述 3.7w次阅读
- 51单片机中断概述和中断源以及中断寄存器的详细资料概述 1.6w次阅读
下载排行
本周
- 1使用单片机实现七人表决器的程序和仿真资料免费下载
- 2.96 MB | 44次下载 | 免费
- 2Keysight B1500A 半导体器件分析仪用户手册、说明书 (中文)
- 19.00 MB | 4次下载 | 免费
- 3BT134双向可控硅手册
- 1.74 MB | 2次下载 | 1 积分
- 4一种新型高效率的服务器电源系统
- 0.85 MB | 1次下载 | 1 积分
- 5PR735,使用UCC28060的600W交错式PFC转换器
- 540.03KB | 1次下载 | 免费
- 6WTS-100(1.1) UWB 信标定位系统 彩页
- 540.48 KB | 1次下载 | 免费
- 7DV2004S1/ES1/HS1快速充电开发系统
- 2.08MB | 1次下载 | 免费
- 8MATLAB绘图合集
- 27.12 MB | 1次下载 | 5 积分
本月
- 1使用单片机实现七人表决器的程序和仿真资料免费下载
- 2.96 MB | 44次下载 | 免费
- 2UC3842/3/4/5电源管理芯片中文手册
- 1.75 MB | 15次下载 | 免费
- 3DMT0660数字万用表产品说明书
- 0.70 MB | 13次下载 | 免费
- 4ST7789V2单芯片控制器/驱动器英文手册
- 3.07 MB | 11次下载 | 1 积分
- 5TPS54202H降压转换器评估模块用户指南
- 1.02MB | 8次下载 | 免费
- 6STM32F101x8/STM32F101xB手册
- 1.69 MB | 8次下载 | 1 积分
- 7TPS92682-Q1帧定义和示例
- 891.71KB | 6次下载 | 免费
- 8HY12P65/HY12P66数字万用表芯片规格书
- 0.69 MB | 6次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935119次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420061次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233084次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191367次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183335次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81581次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73807次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65987次下载 | 10 积分
评论
查看更多