8位单片机轻松跑RTOS操作系统

Posted ybhuangfugui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8位单片机轻松跑RTOS操作系统相关的知识,希望对你有一定的参考价值。

关注+星标公众,不错过精彩内容

作者 | strongerHuang

微信公众号 | 嵌入式专栏

我想在单片机上,不跑操作系统,在需要处理一些业务逻辑时,还需要检测按键短按、长按、多个按键同时按下,我要如何实现?

如果在业务逻辑比较复杂的情况下,不跑操作系统,这个问题其实是一个“很难”的问题,在单线程(裸机)情况下,处理多件事情,这个处理逻辑必须要严谨才行,否则很有可能“卡机”或“死机”。

但是,有了操作系统,这个问题就不是问题了

8位单片机能跑RTOS吗?

针对上面的问题,肯定又有人会问:8位单片机能跑RTOS吗?

现在8位单片机的资源相对以前更多了,跑RTOS完全没有问题。

还有,在8位单片机上跑RTOS会有意义吗?

针对本文开篇说的问题,就有意义,也有必要。如果跑裸机,虽然那些复杂的业务逻辑功能实现了,但开发的时间和周期,以及后期更新、维护的成本可想而知。

下面分享一款可以在 STM8 运行的轻量级的实时操作系统Atomthreads。

Atomthreads介绍

Atomthreads是一款免费的轻量级实时操作系统,适用于RAM和ROM资源较小的嵌入式系统。Atomthreads在开源BSD许可下发布的,可以不受限制地免费商用。

到底有多轻量级?

能支持最小资源(1K RAM,8K ROM)STM8运行五六个线程,可以说问题不大。

如果你的应用程序对RAM占用量很小,可以运行更多线程,当然,线程多少不是问题,能合理处理各项业务逻辑才是关键。

主要特征

  • 具有操作系统该有的功能:优先级抢占、信号量、队列、计时器等

  • 轻量级:整个操作系统就几个C文件

  • 高度可移植的ANSI C代码,不依赖于任何编译器

  • 易于阅读,源代码提供丰富的注释

  • 可以使用单个体系结构特定模块移植到任何CPU体系结构

支持的CPU架构

从8位微控制器到32位多种处理器。

更多内容请参看官网:

http://atomthreads.com

提示:公众号不支持外链接,请复制链接到浏览器打开)

源码简介

Atomthreads内核虽小,但该有的都有。而且源码提供众多例程,方便初学者学习。

源码下载地址:

https://github.com/kelvinlawson/atomthreads

内核函数接口:

支持Port

因为Atomthreads是一款非常轻量级的实时操作系统,不像FreeRTOS、RT-Thread、μC/OS等,没有文件系统、网络、CLI等一些组件。所以,Atomthreads不适合于实现复杂功能的嵌入式系统

最后,分享一下移植好的Demo下载地址:

https://pan.baidu.com/s/1MC8dPjyyxm4cgHfCOOrmtg 

提取码:f36g

------------ END ------------

后台回复『RTOS』『单片机』阅读更多相关文章。

欢迎关注我的公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。

欢迎关注我的视频号:

点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看。

以上是关于8位单片机轻松跑RTOS操作系统的主要内容,如果未能解决你的问题,请参考以下文章

单片机非RTOS时,临界区保护的实现办法

在51单片机上跑RTOS有没有意义?

详述单片机固件模块化架构设计

详论单片机固件模块化架构设计(精华)

移植FreeRTOS到STM32

移植FreeRTOS到STM32