在使用类似只有4k ram 256k rom的MCU小片子时,使用freertos或者ucos基本上会把内存耗光,但是又不想使用裸机跑,这时候就可以用一种非常简洁的操作系统代码去完成小片子的编写,这是一个俄罗斯人写的,我们研发主管教会我的,实际项目中很好用
一、协程的三种状态
#define PT_STATUS_BLOCKED 0 //<阻塞态
#define PT_STATUS_FINISHED -1 //<结束态
#define PT_STATUS_YIELDED -2 //<产生态
二、定义当前代码所处的行数
#define _pt_line3(name, line) _pt_##name##line
#define _pt_line2(name, line) _pt_line3(name, line)
#define _pt_line(name) _pt_line2(name, __LINE__)
三、定义协程数据结构
struct pt {
int label;
int status;
};
#define pt_init()