做嵌入式开发不能只想着裸机,有些小项目确实用简单裸机实现就可以了,但长期来说,我们还是要“做大做强”,所以,要么上RTOS,要么有框架思维。
今天就分享一个强大的协同多任务处理库:TaskScheduler(多任务调度器)。
开源地址:
https://github.com/arkhipenko...
关于TaskScheduler
Task Scheduler是一款适用于Arduino, ESPx, STM32和其他微控制器的协同多任务处理库。
它是协作多任务(任务调度)的轻量级实现,也是抢先式编程和FreeRTOS等框架的简单替代方案。
大多数情况下,你不需要担心并发处理的问题(竞争、死锁、活动锁、资源共享等),协作处理的事件是通过设计来处理这些问题。
主要特点:
适用的一些平台:
- Arduino
- ATtiny85
- ESP8266
- ESP32
- Teensy
- nRF52
- STM32
- Raspberry Pi
使用方法
这种开源库提供了接口,使用方法其实很简单,比如这里基于Ardiuo平台给大家简单讲述一下使用方法。
1、下载源码
https://github.com/arkhipenko...
2、添加源码
将下载的源码添加到Ardiuo工程中,然后包含头文件。
#include <TaskScheduler.h>
3、添加自己的多任务代码
#include <TaskScheduler.h>
本文就简单分享到这里,感兴趣的小伙伴可以尝试使用一下。
END
作者:strongerHuang
来源:嵌入式专栏
推荐阅读
欢迎大家点赞留言,更多Arm技术文章动态请关注极术社区嵌入式客栈专栏欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。