资料介绍
软件简介
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 Nano和EventOS项目的文档专业化、体系化,包含用户手册、版本特性、原理说明、博客、例程等等。
单元测试优先
嵌入式的开源项目,用户最关心的,是软件的可靠性。单元测试,是保证软件健壮与可靠的重要手段。对于EventOS Nano这种系统级、框架级的软件,稳定性与可靠性更加重要。从EventOS Nano诞生之日起,它就是面向单元测试的。详尽而严谨的单元测试,保证了EventOS Nano将绝大多数的BUG,消除在了开发阶段。EventOS Nano的每一次重构、升级与发布,都是经过了严谨的单元测试的。
用户至上,需求至上
软件如何发展,代码向哪个方向前进,EventOS Nano完全听从用户们的声音,完全从需求出发。我们从各个渠道,微信、QQ、论坛等获取的意见建议,都将体现到EventOS Nano的开发中去。
五、联系方式
邮箱:event-os@outlook.com
- 嵌入式开发 ---必看图书
- 蓝桥杯嵌入式开发学习索引
- 嵌入式学习培训能学会吗?嵌入式开发培训都要学什么?
- python做嵌入式开发_Python和嵌入式的区别是什么?可以做嵌入式开发吗?
- 嵌入式开发Linux入门
- 嵌入式开发资料免费分享
- 嵌入式开发(一):嵌入式开发新手入门
- 基于Feistel结构的超轻量级分组密码算法 4次下载
- AI开发平台如何帮助嵌入式开发者加速应用产品化落地 0次下载
- 如何快速熟练掌握嵌入式开发嵌入式开发工程师需要做哪些事情
- 基于嵌入式开发平台的搭建与软件移植 7次下载
- 嵌入式开发平台的搭建与软件移植 67次下载
- 基于ARM的嵌入式开发
- 基于Linux的轻量级嵌入式GUI系统及实现
- 嵌入式开发圣经
- 嵌入式开发常见问题排查 1.3k次阅读
- fpga是嵌入式开发吗 2.2k次阅读
- STM32嵌入式开发中的RTOS,你用过哪些? 3.6k次阅读
- 嵌入式开发中串口通讯方案 3.1k次阅读
- 嵌入式开发的产品有哪些_嵌入式开发的流程 1.2w次阅读
- 基于Mac上做嵌入式开发简析 4.5k次阅读
- 在Nios II平台下搭建RTEMS嵌入式开发简析 1.8k次阅读
- 嵌入式开发好学吗_嵌入式开发职业发展方向是什么 1w次阅读
- 什么是嵌入式开发板_学嵌入式用什么开发板 7.7k次阅读
- 嵌入式开发和单片机开发有什么区别和联系 3.7w次阅读
- 嵌入式开发工具有哪些_五款嵌入式开发工具推荐 4.2w次阅读
- 学嵌入式开发入门_学嵌入式开发需要看哪些书籍 3.9w次阅读
- 很全面的嵌入式开发与学习的入门知识 1.8w次阅读
- 嵌入式开发环境的搭建 9.1k次阅读
- 嵌入式开发就业前景分析_嵌入式领域的职业发展方向 2w次阅读
下载排行
本周
- 1ZX8002D触摸无极调光LED集成IC
- 2.43 MB | 1次下载 | 免费
- 2SDDM 激光测距模块产品规格书
- 1.11 MB | 次下载 | 免费
- 3西曼传感SDM50激光测模组产品手册
- 0.65 MB | 次下载 | 免费
- 4STC8H 系列单片机技术参考手册
- 17.85 MB | 次下载 | 1 积分
- 5PC3303 高精度PWM调光LED背光驱动器数据手册
- 2.42 MB | 次下载 | 免费
- 6飞腾 FT2000A/2 核心板 天脉 3/VxWorks 机载实时嵌入式国产化开发板
- 843.50 KB | 次下载 | 免费
- 7AU-60_全功能AI语音处理模组规格书DY)
- 3.18 MB | 次下载 | 免费
- 8WT2003H4录变音芯片及模块说明书V1
- 3.61 MB | 次下载 | 免费
本月
- 1瑞芯微RK3572开发板-产品资料更新-2026.06
- 3.30 MB | 4次下载 | 免费
- 2四键电容式触摸按键IC FZH34产品手册
- 0.41 MB | 2次下载 | 免费
- 3矩形科技 CANopen 远程IO模块产品手册
- 7.93 MB | 2次下载 | 免费
- 4高性能非隔离交直流转换芯片 PC9403A数据手册
- 0.34 MB | 2次下载 | 免费
- 5OC5721欧创芯开关降压型LED恒流驱动器
- 404.39 KB | 2次下载 | 免费
- 6PC9830 18V-3A集成高低侧功率管同步降压转换器数据手册
- 9.01 MB | 1次下载 | 免费
- 7GL65P06A8产品光磊 60V 65A P沟道功率 MOSFET
- 1.07 MB | 1次下载 | 免费
- 8ZX8002D触摸无极调光LED集成IC
- 2.43 MB | 1次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233095次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191476次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183362次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81608次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73836次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65992次下载 | 10 积分
电子发烧友App





创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论