社区
C语言
帖子详情
实时操作系统RTOS下,如何事件驱动编程?
greensnake
2000-09-12 10:18:00
本人乃菜鸟级任务,有一个问题请教各位高手
在实时操作系统下,如何进行事件驱动编程?
具体的问题是这样的,
本人要做的编程任务中,由几个状态机实现,每个状态机中各有几个不同的状态,
状态的转变靠事件驱动(某一共享变量的值的改变,或者申请的系统时钟到时),
这几个状态机只能在一个任务中,也就是说,只能开一个任务,便要实现这几个状态机。
请各位高手帮帮忙!急!
...全文
451
2
打赏
收藏
实时操作系统RTOS下,如何事件驱动编程?
本人乃菜鸟级任务,有一个问题请教各位高手 在实时操作系统下,如何进行事件驱动编程? 具体的问题是这样的, 本人要做的编程任务中,由几个状态机实现,每个状态机中各有几个不同的状态, 状态的转变靠事件驱动(某一共享变量的值的改变,或者申请的系统时钟到时), 这几个状态机只能在一个任务中,也就是说,只能开一个任务,便要实现这几个状态机。 请各位高手帮帮忙!急!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yd614
2001-02-10
打赏
举报
回复
人太少了!
icecore
2000-09-12
打赏
举报
回复
如果这个变量的改变是你的操作造成的,你可以用类似com中的那种fire函数来解决.
如果这个变量的改变不是你可以操作的(比如是硬件操作的结果),你可以用RTOS中的
系统软时钟来定时监控,再用fire函数来引发.
嵌入式
实时操作系统
small
RTOS
51原理及应用
编辑推荐 本书主要特点: 分为原理篇和应用篇,原理与实践相结合,两篇相对独立,又紧密联系。 原理篇以分析源码为特色,深入浅出地介绍
RTOS
的基本概念以及Small
RTOS
51的工作原理。 应用篇以DP-51单片综合仿真实验仪为硬件平台,通过对单片机常用和热门外围器件实用驱动程序的分析,详细介绍基于Small
RTOS
51的
编程
方法,以及如何为这些外围器件编写中间件,并给出一个完整的例子,让读者全面掌握基于Small
RTOS
51的
编程
方法,体会了
RTOS
下
编程
的优点。 内容简介 Small
RTOS
51是为51系列单片机而编写的。它是完全免费的、源代码公开的多任务
实时操作系统
。它可在无任何外部数据存储器的单片80C51系统上运行,并且是可移植的。全书分两部分。第一部分为基础篇,介绍Small
RTOS
51和一些基本概念,并详细分析Small
RTOS
51的工作原理。第二部分为应用篇,给出部分常用硬件在Small
RTOS
51下驱动程序的源代码。这些源代码在DP—51单片机仿真实验仪上全部调试通过,且只要经过很少的改动,或是不改动,就可以在其他环境下使用。应用篇还通过对这些源代码的分析,让读者理解基于
RTOS
的
编程
方法,并给出完整的例子让读者全面掌握基于
RTOS
的
编程
方法。 本书可以作为高等院校相关专业的课程教材、实验参考资料或课外读物,对嵌入工应用开发人员也有重要的参考价值。 目录 第一部分 原理篇 第0章 绪论 第1章 Small
RTOS
51简介 1.1 Small
RTOS
51的特点 1.2 Small
RTOS
51的运行条件 1.3 Small
RTOS
51的存储器需求 1.4 Small
RTOS
51的任务堆栈的计算 1.5 关于可重入功能 1.6 关于C51的库函数 1.7 关于51系列单片机派生类型的多数据指针和数学单元 1.8 关于51系列单片机的寄存器段 1.9 关于局部变量 第2章 基本概念 2.1 嵌入式系统 2.2 实时系统 2.3 前、后台系统 2.4 操作系统 2.5
实时操作系统
2.6 代码的临界区 2.7 资源 2.8 共享资源 2.9 任务 2.10 任务切换 2.11 内核 2.12 调度 2.13 非占先式内核 2.14 占先式内核 2.15 可重入性 2.16 任务优先级 2.17 信号量 2.18 死锁 2.19 消息队列 2.20 中断 2.21 时钟节拍 第3章 一个简单的例子 3.1 Small
RTOS
51的安装及目录结构 3.2 例子简介 3.3 Config、h、Os_cfg、h和Os_cpu.h 3.4 与
编程
器无关的数据类型 3.5 OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL() 3.6 main()函数 3.7 建立任务 3.8 删除任务 3.9 用户任务 3.10 软非屏蔽中断 3.11 中断服务程序的编写 3.12 Os_cpu.h可改变的其他内容 3.13 Small
RTOS
51的其他注意事项 第4章 任务管理—核心的核心 4.1 临界区 4.2 任务 4.3 任务状态 4.4 与任务相关的数据结构 4.5 任务调度 4.6 Small
RTOS
51中的中断处理 4.7 时钟节拍 4.8 Small
RTOS
51初始化和启动 4.9 建立任务 4.10 任务堆栈 4.11 删除任务 4.12 时间服务及任务的挂起和恢复 4.13 获取当前Small
RTOS
51的版本号 4.14 OSInt…()函数 第5章 如何切换任务 5.1 CPU可以执行多个任务的原因 5.2 CPU怎样运行才能执行多个任务 5.3 何时进行任务切换 5.4 Small
RTOS
51任务切换时的程序框图 5.5 数组OSTsakStackBotton[]和Small
RTOS
51的堆栈结构 5.6 变量OSFastSwap 5.7 常量数值OSMapTb[] 5.8 软非屏蔽中断的堆栈SP2[] 5.9 中断切换函数OSIntCtxSw()OSIntCtxSw() 5.10 任务主动放弃CPU-OS_TASK_SW() 5.11 堆栈变换函数C_OSCtxSw() 5.12 恢复新任务环境LoadCtx() 5.13 优先级最低的任务OSIdle() 5.14 Small
RTOS
51初始化函数OSStart() 5.15 系统时钟节拍中断OSTickISR() 第6章 任务之间的通信和同步之信号量 6.1 概述 6.2 使Keil C51函数具有重入性的特殊方法 6.3 数据结构 6.4 IN_OS_SEM_CHK宏及相关代码 6.5 初始化一个信号量 6.6 等待一个信号量 6.7 发送一个信号量 6.8 无等待地请求一
基于
实时操作系统
的单片机多任务应用程序设计
基于
实时操作系统
的单片机多任务应用程序设计。通过深入剖析μC/OS-Ⅱ内核架构,之后理解和读懂small
RTOS
微型嵌入式操作系统的内核。实现多任务的驱动程序,实现LED驱动、串口驱动和键盘驱动。
small_
rtos
.rar_
rtos
51_small
rtos
51_多任务 书
Small
RTOS
51是为51系列单片机而编写的。它是完全免费的、源代码公开的多任务
实时操作系统
。它可在无任何外部数据存储器的 单片80C51系统上运行,并且是可移植的。全书分两部分。第一部分为基础篇,介绍Small
RTOS
51和一些基本概念,并详细分析 Small
RTOS
51的工作原理。第二部分为应用篇,给出部分常用硬件在Small
RTOS
51下驱动程序的源代码。这些源代码在DP51单片机仿 真实验仪上全部调试通过,且只要经过很少的改动,或是不改动,就可以在其他环境下 使用。应用篇还通过对这些源代码的分析,让读者理解基于
RTOS
的
编程
方法,并给出完整的例子让读者全面掌握基于
RTOS
的
编程
方法。
Event Driven Class OSAL 模拟操作系统
OSAL_EventDrivenClass借鉴了TI OSAL/NXP
RTOS
/Free
RTOS
/RT-Thread等操作系统优势,兼顾了代码小/逻辑简单/等优势,适用于低端MCU开发使用. 网络上有大量把OSAL叫做“操作系统抽象层”,而我认为“操作系统抽象层”这个词应该说是为了抽象不同操作系统的API,将系统API统一,然后我们所看到OASL并非此功能,这里不做过多讨论。 •本人理解OSAL只是一个裸机编码框架,并非操作系统,然后OSAL实现了让裸机写程序,就像在操作系统上写程序一样简单,所以OSAL是一个适用于低端MCU的
编程
框架;为了简化后面文档,后面把OSAL当做操作系统处理。 EventDrivenClassOSAL: •是一个由
事件驱动
类的OSAL,顾名思义此OSAL完全由事件进行驱动,没有事件任务就没有事干,那么OSAL就会调度空闲任务,等待事件的发生.
北京中科信软实时嵌入式系统 VxWorks培训1
培训目标: After this course, students will be able to: Design, develop, debug, build, and test real-time applications in a target-host development environment with Workbench and VxWorks. Efficiently use the tools and functionality of WorkbenchCourse Format. 培训对象:Developers who work with Workbench and GPP, VE . Specific questions are addressed . New project members on teams already using VxWorks products. Labsessions allow hands-on application of course concepts. Managers who want a quick understanding Workbench components. Senior engineers who want to evaluate VxWorks technology Global Reach of Wind River Education Services 学员基础:One year of C programming,Basic understanding of operating systems and debugging techniques,Functional knowledge of Windows 培训大纲: 实时多任务操作系统(
RTOS
)简介 (
RTOS
)的基础及特性 实时多任务操作系统(
RTOS
)的任务管理。 (
RTOS
)任务间的通信机制。 异常、中断和定时器程序设计。 实时应用系统设计概要; VxWorks系统概述 VxWorks操作系统的配置和启动 VxWorks组件概述 VxWorks文件系统 VxWorks网络系统、 VxWorks图形系统 VxWorks操作系统的编译和重新配置 VxWorks 6.x操作系统的体系结构内核配置 VxWorks 交叉开发调试原理 嵌入式系统软硬件配置及引导过程 定制内核VxWorks VxWorks应用开发流程 VxWorks实时多任务系统 实时应用系统交叉开发环境的特点 VxWorks实时内核基本概念 VxWorks 内核的功能和特性; 实时多任务程序设计和调试 实时多任务应用系统设计要点; 多任务程序调试及分析 多任务系统的状态和控制 VxWorks 内核定制。 实时多任务的VxWorks
编程
。 案例讲解与演练 VxWorks 设备驱动 VxWorks 设备 I/O策略 轮巡和中断 字符设备驱动 块设备驱动 Tornado 串行设备 网络驱动 VxWorks事件及事件的使用 VxWorks信号灯的使用 任务间交互通信的程序设计 任务间通信概述 共享存储器方式 消息队列方式 管道方式 案例讲解 内存管理程序设计 系统内存的管理及分配 系统内存的程序设计 系统的异常、中断和定时器程序设计 异常处理和相关信号 中断服务程序(ISR) 定时器程序 案例讲解 基于VxWorks操作系统的BSP设计开发(重点) BSP基本原理 BSP 系统硬件及相关硬件 BSP组织部分 BSP的创建 BSP 系统配置文件 BSP开发环境的建立 BSP的开发与调试 嵌入式系统硬件抽象层 BSP的设计与实现 案例讲解 Workbench Overview/Target Manager Workbench perspectives Help resources Cross-development set-up Target manager conguration Case practice Questions Project Management Workspaces Workbench projects VxWorks projects types Workbench Host Shell Interpreters Cross-development with Host Shell Case practice Questions Workbench Source Analysis Static analysis Editor Working sets Views Debugging and Analyzing Applications Basic debugging System debugging System Viewer usage Workbench ScopeTools StethoScope ProfileScope MemScope CoverageScope TraceScope Case practice Questions
C语言
69,368
社区成员
243,081
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章