电子发烧友App

硬声App

扫码添加小助手

加入工程师交流群

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

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

3天内不再提示
电子发烧友网>电子资料下载>电子资料>EventOS Nano超轻量级事件驱动的嵌入式开发平台

EventOS Nano超轻量级事件驱动的嵌入式开发平台

2022-04-18 | zip | 0.30 MB | 次下载 | 2积分

资料介绍

授权协议 MIT
开发语言 C/C++
操作系统 Windows
软件类型 开源软件
所属分类 其他开源嵌入式操作系统

软件简介

EventOS Nano 是什么?

EventOS Nano,是一个面向单片机、事件驱动的嵌入式开发平台。它主要有两大技术特色:一是事件驱动,二是超轻量。EventOS Nano的主要特性列举如下:

  • 事件总线为核心组件,灵活易用,是进行线程(状态机)间同步或者通信的主要手段,也是对EventOS分布式特性和跨平台开发进行支持的唯一手段。事件支持广播发送,或者发布-订阅机制两种方式(二选一)。
  • 全局事件队列,摒弃每个线程(状态机)拥有自己的事件队列的方式,只有一个全局事件队列,极限压缩对RAM的占用。
  • 极度轻量,便于嵌入其他系统,除事件总线外的所有特性(层次状态机、平面状态机、发布-订阅机制、事件携带数据、事件桥等)均可裁剪,将资源占用降至极限,可低至ROM 1.2KB,RAM 172Byte。可以作为子系统,“悄悄”嵌入到其他软件系统中去。
  • 以时间事件的形式,优雅实现了定时器
  • API的设计,更加简明,更加符合本土嵌入式工程师的习惯。
  • 移植方便,只需实现少数几个接口函数即可。
  • 未来会使用Event Bridge(事件桥)机制与EventOS打通事件总线,以便对EventOS的分布式特性进行支持。
  • 重点关注三种应用场景:小资源单片机,作为模块向其他软件系统的嵌入和可靠性要求较高的嵌入式场景。

如果你想写一个清晰的、结构健壮且利于维护的源代码,又不想使用传统的RTOS,那么EventOS Nano是你的不二选择。   EventOS Nano的前身,曾经让我在过去的工作中受益匪浅,让我非常高效的写出了很多可靠的程序,能力和回报都有了质的提升。现在,我将以前的技术成果整理重构,在各方面都向着规范的开源项目靠拢,包括源码、注释、文档、单元测试和例程等等。未来,EventOS Nano这个项目我会一直完善下去。我的目标是,将EventOS Nano项目在2022年底前做成Gitee推荐项目,2024年年底前将EventOS项目,做成Gitee的GVP项目,造福更多的嵌入式工程师。

二、为什么叫做EventOS Nano?

之所以叫Nano,是因为它真的非常轻量。全功能的EventOS Nano目前经MDK编译后,框架本身占用RAM 200Byte,ROM约3.5KB(优化等级为-O3)或4.5KB(优化等级为-O0)。裁剪后,最小功能的EventOS Nano,目前经MDK编译后,框架本身占用RAM 172Byte,ROM约1.2KB(优化等级为-O3)或1.5KB(优化等级为-O0)。 之所以叫EventOS Nano,一是因为它的技术特色与核心思想,就是事件驱动;二是因为它是另外一个开源项目EventOS(准备中)的简化实现,EventOS是一个事件驱动的、分布式的、可跨平台开发的嵌入式RTOS,面向32位单片机和更高处理器的嵌入式开发平台。

三、EventOS Nano主张的编程思想

事件驱动事件总线

事件驱动和事件总线,是EventOS Nano的核心,也是EventOS的核心。事件机制,与RTOS中事件概念完全不同,它更像是windows编程中的消息。事件,可以认为是“主题 + 不定长数据**,通过事件,可以极大解耦模块间的耦合,增强软件的可测试性,还可以进行跨平台开发和分布式扩展。

防御式编程

EventOS Nano使用了大量的断言,对系统的运行过程和用户对EventOS Nano的使用进行大量的检查。我们强烈建议,用户要对断言接口函数进行精心的设计和实现,在实际的产品代码中,依然打开断言。这样,软件将以非常快的速度,收敛于稳定状态。

跨平台开发

EventOS Nano提倡跨平台开发。所谓跨平台开发,就是在Windows和Linux等便捷友好的开发环境里完成大部分的开发工作,包括编程、调试、运行和单元测试等工作,然后在目标平台上进行最后的移植、调试和适配工作。跨平台的优点有很多,比如开发效率非常高、工程师进入到更多的编程领域和程序稳定可靠等。EventOS Nano主要在32位MinGW平台上开发,在Linux平台上也会开发一部分工作。开发环境的搭建,见文档开发环境搭建

消除耦合

无论是广播式的事件发送机制,还是发布-订阅式的事件发送机制,实际上,都是为了消除软件模块间的耦合。

四、EventOS Nano项目的维护原则

但行好事,不问前程

我完全没有考虑过EventOS Nano将来如何,也没有考虑过所谓商业模式。我有自认为还不错的工作,收入够用,家庭温馨而和睦。我现在只是想,把EventOS Nano项目做好,做成一个工业级的软件产品,被众多网友和用户认可,并在成千上万的嵌入式产品中广泛应用起来。至于其他,就随遇而安吧。

源码文档并进

我深知完善丰富的文档,对一个开源项目的重要意义。因此,我坚持每一个特性的升级,每一个BUG的修复,都跟随着相应的文档。让EventOS NanoEventOS项目的文档专业化、体系化,包含用户手册、版本特性、原理说明、博客、例程等等。

单元测试优先

嵌入式的开源项目,用户最关心的,是软件的可靠性。单元测试,是保证软件健壮与可靠的重要手段。对于EventOS Nano这种系统级、框架级的软件,稳定性与可靠性更加重要。从EventOS Nano诞生之日起,它就是面向单元测试的。详尽而严谨的单元测试,保证了EventOS Nano将绝大多数的BUG,消除在了开发阶段。EventOS Nano的每一次重构、升级与发布,都是经过了严谨的单元测试的。

用户至上,需求至上

软件如何发展,代码向哪个方向前进,EventOS Nano完全听从用户们的声音,完全从需求出发。我们从各个渠道,微信、QQ、论坛等获取的意见建议,都将体现到EventOS Nano的开发中去。

五、联系方式

邮箱:event-os@outlook.com 

 

单片机 嵌入式 nano
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

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

评论

查看更多

下载排行

本周

  1. 1ZX8002D触摸无极调光LED集成IC
  2. 2.43 MB  |  1次下载  |  免费
  3. 2SDDM 激光测距模块产品规格书
  4. 1.11 MB   |  次下载  |  免费
  5. 3西曼传感SDM50激光测模组产品手册
  6. 0.65 MB   |  次下载  |  免费
  7. 4STC8H 系列单片机技术参考手册
  8. 17.85 MB   |  次下载  |  1 积分
  9. 5PC3303 高精度PWM调光LED背光驱动器数据手册
  10. 2.42 MB   |  次下载  |  免费
  11. 6飞腾 FT2000A/2 核心板 天脉 3/VxWorks 机载实时嵌入式国产化开发板
  12. 843.50 KB  |  次下载  |  免费
  13. 7AU-60_全功能AI语音处理模组规格书DY)
  14. 3.18 MB  |  次下载  |  免费
  15. 8WT2003H4录变音芯片及模块说明书V1
  16. 3.61 MB  |  次下载  |  免费

本月

  1. 1瑞芯微RK3572开发板-产品资料更新-2026.06
  2. 3.30 MB  |  4次下载  |  免费
  3. 2四键电容式触摸按键IC FZH34产品手册
  4. 0.41 MB   |  2次下载  |  免费
  5. 3矩形科技 CANopen 远程IO模块产品手册
  6. 7.93 MB   |  2次下载  |  免费
  7. 4高性能非隔离交直流转换芯片 PC9403A数据手册
  8. 0.34 MB   |  2次下载  |  免费
  9. 5OC5721欧创芯开关降压型LED恒流驱动器
  10. 404.39 KB  |  2次下载  |  免费
  11. 6PC9830 18V-3A集成高低侧功率管同步降压转换器数据手册
  12. 9.01 MB   |  1次下载  |  免费
  13. 7GL65P06A8产品光磊 60V 65A P沟道功率 MOSFET
  14. 1.07 MB  |  1次下载  |  免费
  15. 8ZX8002D触摸无极调光LED集成IC
  16. 2.43 MB  |  1次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935137次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420064次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233095次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191476次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183362次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81608次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73836次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65992次下载  |  10 积分