电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子书籍>嵌入式系统的事件驱动型编程技术

嵌入式系统的事件驱动型编程技术

2017-09-27 | pdf | 4498KB | 次下载 | 免费

资料介绍

QP™ 嵌入式状态机

  全新的代码首先,本书提供了一套名为量子平台 QP 的全新的软件,它包含层次式事件处理器 QEP和实时框架 QF ,以及 2 个新的构件。从 6 年前本书第一版发行后 QP 经历了几次重要的改进。 PSICC 第版发行后引进的改进太多不能在前言中一一列举。改进的主要方面包括更高的效率,可测试性,和在不同处理器,编译器和操作系统中更好的移植性。 2 个新的 QP 构件是在第十章描叙的轻量级可抢占实时内核 QK 和在第十一章描叙的软件跟踪工具 QS 。最后,我十分激动能引入一个全新的超轻量级简化版 QP--为从最低端的 8 位直到 16位 MCU 而量身定做的 QP-nano 。我在第十二章描叙 QPnano。开源和双许可证策略 2004年,我决定在自由软件基金的GNU通用公众许可证 GPL第 2 版条款下,把全部 QP 代码作为开源软件发行。同时, QP 源代码也可以在独立的传统商业许可证下使用。商业许可证可以替代 GPL,这是为那些需要保护他们基于 QP 的资产的用户特别设计的。把开源和商业许可结合起来的策略正在逐步流行,这被称为双许可证(daul-licensing),在附录 A 中有对它的详细解释。 用 C 语言作为主要的开发语言 PSICC 第一版中的绝大多数代码实例是用 C++ 实现的。然而,我在开发现场发现,很多嵌入式软件开发者(绝大多数是电子工程师)都有硬件工作背景而且他们常常不喜欢使用 C++ 。在这一版中,我决定交换 C 和 C++ 的角色。和从前一样,本书网站有 C 和 C++ 版本的完整源程序。但是现在,书中的绝大多数代码实例使用 C 版本,仅当 C++ 和 C 的实现代码之间的差别显著和重要时,才会讨论 C++ 代码的实例。由于使用 C 代码,我不再使用在第一版中应用和介绍的 C+ 面向对象的扩展。新代码继续和 C+ 兼容,但是已不再使用 C+ 宏。

  几乎所有计算机系统,特别是嵌入式系统,是事件驱动型的,这意味着它们持续等待某些外部或者内部的事件发生,比如一个时钟节拍 (tick),一个数据包的到来,一个按键被按下,或者一次鼠标的点击。确认事件后,这类系统产生相应的反应,去执行相应的计算,去操作硬件,或者去产生“软”事件去触发其他的内部软件构件。(这就是为什么事件驱动型系统也被称作反应系统 (reactive system) 的原因)。软件一旦完成了事件处理,就退回到等待下一个事件发生的状态。你无疑肯定熟悉基本的顺序控制,使用这种方法时,一个程序在它执行路径的不同地方等待事件,它或者主动的轮询事件,或者被动的阻塞于一个旗语 (semaphore) 或其他的操作系统原语。尽管这种事件驱动型系统的编程方法在很多情况下起作用,但是,当系统有许多可能的事件源,而你也不能预测事件的到达时间和次序,而且及时处理事件变得至关重要时,这种方法不能很好的工作。问题在于,当顺序式程序在等待某类事件时,它没做任何其他工作,也不对其他事件起反应。显然,我们需要的是一个程序结构,它可以对不同的可能事件反应,任何事件可以在不能预测的时刻以不能预测的次序到达。在嵌入式系统里,比如家用电器,手机工业控制器,医疗设备和其他系统中,这个问题非常普遍。在现代桌面计算机中,比如在使用一个网页浏览器,文字处理器,或者速算表时,这个问题也很突出。绝大多数这些程序有一个现代的图形用户界面 (GUI) ,它显然可以处理多种事件。所有当代的 GUI 系统以及许多嵌入式应用,都采用了一个共同的程序结构,可以优雅的解决需要及时的处理异步事件的难题。这种程序结构通常被称为“事件驱动型编程”。

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1电子电路原理第七版PDF电子教材免费下载
  2. 0.00 MB  |  1490次下载  |  免费
  3. 2单片机典型实例介绍
  4. 18.19 MB  |  92次下载  |  1 积分
  5. 3S7-200PLC编程实例详细资料
  6. 1.17 MB  |  27次下载  |  1 积分
  7. 4笔记本电脑主板的元件识别和讲解说明
  8. 4.28 MB  |  18次下载  |  4 积分
  9. 5开关电源原理及各功能电路详解
  10. 0.38 MB  |  10次下载  |  免费
  11. 6基于AT89C2051/4051单片机编程器的实验
  12. 0.11 MB  |  4次下载  |  免费
  13. 7蓝牙设备在嵌入式领域的广泛应用
  14. 0.63 MB  |  3次下载  |  免费
  15. 89天练会电子电路识图
  16. 5.91 MB  |  3次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234313次下载  |  免费
  3. 2PADS 9.0 2009最新版 -下载
  4. 0.00 MB  |  66304次下载  |  免费
  5. 3protel99下载protel99软件下载(中文版)
  6. 0.00 MB  |  51209次下载  |  免费
  7. 4LabView 8.0 专业版下载 (3CD完整版)
  8. 0.00 MB  |  51043次下载  |  免费
  9. 5555集成电路应用800例(新编版)
  10. 0.00 MB  |  33562次下载  |  免费
  11. 6接口电路图大全
  12. 未知  |  30320次下载  |  免费
  13. 7Multisim 10下载Multisim 10 中文版
  14. 0.00 MB  |  28588次下载  |  免费
  15. 8开关电源设计实例指南
  16. 未知  |  21539次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935053次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537791次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420026次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234313次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233045次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191183次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183277次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138039次下载  |  免费