找回密码
 注册
关于网站域名变更的通知
查看: 232|回复: 2
打印 上一主题 下一主题

51单片机RTX-51TINY多任务操作系统工程模板

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-9-5 09:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
>51单片机多任务系统的工程模板<
4 ~) @* u% |* q- @2 [5 p2 }" y; l% p+ T8 ~

- }& o! ?$ z+ t  |% hRTX51-Tiny是一种实时操作系统(RTOS),可以用它来建立多个任务同时执行的程序。) m2 j/ o& o6 l) L; `; z
3 c  o; a' L7 p7 h& c$ z) j

6 N# L5 J0 A& C- I" ]& L7 m

- p1 h3 N. N# T) w. O- s
最大任务数
' t1 F8 j7 _, V% h
16
& v4 ]; z$ \7 Y8 c
最大活动任务/ E+ v0 U: ^" N  G
16
6 {3 i  a( V" m0 S# W% K
代码空间需求
6 z1 R8 d7 v4 y6 p8 ?& ^" ~0 L- m2 m) X
900字节最大
6 z2 F/ ]% l+ A" K0 l" z
数据空间需求
- R' @0 b: Y  J- l  J) z
7字节+ ?5 K- ^! @8 \
栈空间需求
- F* E/ G, P! O; P) D
3字节/任务5 E2 b7 w1 {7 B) v7 I$ a
外部RAM需求. [5 @$ H1 Q* d# s3 u
0字节
9 _% \, y- S, z6 M) C1 q
定时器
; ~+ N( w+ r$ S+ \
0" a7 `1 `6 K; B8 F& N7 I- A! i
系统时钟因子
3 b. e$ n% R: w6 n
1000~65535
  N: |0 |9 `, @2 n
中断等待
% e7 W& I# ]8 D$ H1 Z
20个周期或更少
. w9 N; q* D; ^/ D
上下文切换时间
  m& _+ F1 z+ ^$ \+ ]5 ?8 `6 D# T
100~700个周期
' J1 I8 k9 _6 ~' s& I6 C
3 h. K# E: |" I  [; W# ?# T, i* r  |( F
单片机源程序如下:
  • #include "main.h"
  • int flag = 0;   //LED标志位
  • /*--------------------------------------------------------------------------------------------
  •     初始任务
  • --------------------------------------------------------------------------------------------*/
  • void task_create(void) _task_ 0
  • {
  •     UGL_Delay(0);       //延时没有用(防止编译器警告)
  •         os_create_task(1);  //创建任务1
  •         os_create_task(2);  //创建任务2
  •         os_delete_task(0);  //删除任务0
  • }
  • /*--------------------------------------------------------------------------------------------
  •     LED任务
  • --------------------------------------------------------------------------------------------*/
  • void task_led(void) _task_ 1
  • {
  •   while(233)
  •   {
  •     if(flag)
  •     {
  •         os_wait2(K_IVL,50); //系统延时50个Tick
  •         LED = ~LED;
  •     }
  •     else
  •     {
  •         LED = 1;
  •     }
  •   }
  • }
  • /*--------------------------------------------------------------------------------------------
  •     按键任务
  • --------------------------------------------------------------------------------------------*/
  • void task_switch(void) _task_ 2
  • {
  •     while(233)
  •     {
  •         if(!S2) //下降沿生效
  •         {
  •             while(!S2);
  •             flag = 1;
  •         }
  •         if(!S3) //下降沿生效
  •         {
  •             while(!S3);
  •             flag = 0;
  •         }
  •         os_wait2(K_IVL,1);  //系统延时1个Tick
  •     }
  • }
    ( F* D2 ]! m2 x
' `8 X- {7 K% @1 \; ]- ]) ~

该用户从未签到

2#
发表于 2022-9-5 10:16 | 只看该作者
本帖最后由 Crash 于 2022-9-10 10:05 编辑
; M9 Z: Q# ~( O( w2 N: {4 Z! ~! h! g0 s
多多说一些自己的实际经验,相关知识,分享一些好的制作例子。

该用户从未签到

3#
发表于 2022-9-5 11:29 | 只看该作者
本帖最后由 风吹过后 于 2022-9-10 09:39 编辑
% n# O' `. K7 g9 t
! R. o+ q5 o- i; ~1 j# z大佬发表的帖子,感觉很厉害,很棒。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-8 00:51 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表