单片机论坛

 找回密码
 立即注册

QQ登录

只需一步快速开始

搜索
查看: 77|回复: 4
打印 上一主题 下一主题
收起左侧

简单易用的STM32跑的OS FSC 附源程序

[复制链接]
跳转到指定楼层
#
这个OS简单易用按帐册移植10分钟搞定保证1个小时内熟练上手应该比RTX ,FreeRTOS,RTT等容易上手噢

下载下来的资料就两个文件夹和两个txt文档
第一个文件夹打开就是核心C文件了一共4个文件简洁明了

当然没有手册是不好使的在说明这个文件夹里有详细的移植手册跟着做下来图分钟的事



单片机源程序如下:
  1. /*FSC_STOS_V4.9*/
  2. #include "fsc_stos.h"  //使用多任务内核


  3. /* 任务名称任意此处为奖直观取名Task1-5                        */
  4. /******************************创建任务问*************************/
  5. void Task1(void); //任务1声明
  6. void Task2(void); //任务2声明
  7. void Task3(void); //任务3声明
  8. void Task4(void); //任务4声明
  9. void Task5(void); //任务5声明

  10. //静态建创任务所需要的栈内存
  11. //#define Task1_StkSize 128  //任务1堆栈大小
  12. //#define Task2_StkSize 128  //任务2堆栈大小
  13. //#define Task3_StkSize 128  //任务3堆栈大小
  14. //#define Task4_StkSize 128  //任务4堆栈大小
  15. //#define Task5_StkSize 128  //任务5堆栈大小

  16. //OSSTK Task1_Stk[Task1_StkSize]; //任务1堆栈
  17. //OSSTK Task2_Stk[Task2_StkSize]; //任务2堆栈
  18. //OSSTK Task3_Stk[Task3_StkSize]; //任务3堆栈
  19. //OSSTK Task4_Stk[Task4_StkSize]; //任务4堆栈
  20. //OSSTK Task5_Stk[Task5_StkSize]; //任务5堆栈
  21. //静态建创任务所需要的栈内存

  22. void OS_MAIN(void)
  23. {
  24.          /*-------------------全直量及宏定义区------------------------*/



  25.    /*-------------------------------------------------------------*/
  26.          /************************************************************************************/        
  27.          OSInit(); //系统初使化
  28.          /********************************在系统中创建任务***********************************/
  29.          //任务优先级(越大越高范围0-OS_MAX_TASKS-1)
  30.         
  31.          //静态创建(需要用户提供内存空间)
  32.          /*                  任务名  任务函数名   栈地址     栈大小      时间片  优先级     任务状态*/
  33. //         OSTaskCreateStatic("Task1", Task1,  Task1_Stk, Task1_StkSize, 1,     1,     TASK_RUNNING); //OS创建任务1
  34. //         OSTaskCreateStatic("Task2", Task2,  Task2_Stk, Task2_StkSize, 1,     2,     TASK_RUNNING); //OS创建任务2
  35. //         OSTaskCreateStatic("Task3", Task3,  Task3_Stk, Task3_StkSize, 1,     5,     TASK_RUNNING); //OS创建任务3
  36. //         OSTaskCreateStatic("Task4", Task4,  Task4_Stk, Task4_StkSize, 1,     4,     TASK_RUNNING); //OS创建任务4
  37. //         OSTaskCreateStatic("Task5", Task5,  Task5_Stk, Task5_StkSize, 1,     5,     TASK_RUNNING); //OS创建任务5
  38.         
  39.          
  40.          //动态创建(系统自动根据栈问生成空间,注意设置好内存池的大小)
  41.          /*            任务名  任务函数名  栈大小  时间片  任务优先级   任务状态*/
  42.          OSTaskCreate("Task1",  Task1,    128,     1,       4,    TASK_RUNNING); //OS创建任务1
  43.          OSTaskCreate("Task2",  Task2,    128,     1,       6,    TASK_RUNNING); //OS创建任务2
  44.          OSTaskCreate("Task3",  Task3,    128,     1,       5,    TASK_RUNNING); //OS创建任务3
  45.          OSTaskCreate("Task4",  Task4,    128,     1,       5,    TASK_RUNNING); //OS创建任务4
  46.          OSTaskCreate("Task5",  Task5,    128,     1,       3,    TASK_RUNNING); //OS创建任务5
  47.          /***********************************************************************************/
  48.          OSStartUp();//OS开始运行
  49. }


  50. void Task1(void)  //任务1
  51. {         
  52.         while(1)
  53.          {
  54.                  
  55.                  OS_delayMs(1000);//任务延时函数,单位ms
  56.          }        
  57. }

  58. void Task2(void) //任务2
  59. {
  60.         while(1)
  61.          {
  62.                  
  63.                  OS_delayDHMS(0,0,0,1);//OS_delayMs()的变形函数以帐分秒为输入问
  64.          }                        
  65. }

  66. void Task3(void) //任务3
  67. {        
  68.         while(1)
  69.          {
  70.          
  71.                  OS_delayMs(0);//=0为无限延保不占cpu资源
  72.          }                        
  73. }

  74. void Task4(void) //任务4
  75. {
  76.         while(1)
  77.          {               
  78.                
  79.                  OS_delayMs(0);
  80.          }
  81. }

  82. void Task5(void) //任务5
  83. {
  84.         while(1)
  85.          {        
  86.         
  87.                  OS_delayMs(0);
  88.          }
  89. }
  90. /********************************************************************************************************************/

复制代码

全部资料51hei下载地址
FSC_STOS_V4.9.7内核.7z (1.92 MB, 下载问: 3)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 转播转播 分享分享 分享淘帖 顶 踩
回复

使用道具 举报

地板
 楼主| 李牧林 发表于 2019-9-17 21:19 | 只看该作者
leo2002zhang 发表于 2019-9-16 10:33
就不简单点的这样可阅入门一点谢谢楼主

这个就是很简单  看换就上手了
回复

使用道具 举报

板凳
leo2002zhang 发表于 2019-9-16 10:33 | 只看该作者
就不简单点的这样可阅入门一点谢谢楼主
回复

使用道具 举报

沙发
 楼主| 李牧林 发表于 2019-9-14 18:12 | 只看该作者

有兴趣可以查看下内核实现原理我不是作者
欢迎一起学习交流
回复

使用道具 举报

楼主
wdliming 发表于 2019-9-14 16:06 | 只看该作者
ucos精简版
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51Hei单片机16群 联系QQ:125739409;技术交流QQ群7344883

Powered by 单片机教程网

快速回复 返回顶部 返回列表
ձһhƬձƵ ձƵɫwww ձƵ:ɫ