久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8169|回復: 12
打印 上一主題 下一主題
收起左側

51單片機簡單多任務調度實現代碼

  [復制鏈接]
跳轉到指定樓層
樓主
ID:61002 發表于 2017-7-18 10:52 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. //注意
  2. //任務優先級必須小于任務個數,不然會死機
  3. //任務優先級并非真實的,高有限級的任務不會打斷低優先級的任務
  4. //只是當2個任務執行的時間到了,高優先級的任務會優先執行
  5. //任務的優先級同時也是任務的句柄,任務創建和使能的時候會用到
  6. //任務無法刪除,可以通過失能,失任務不執行
  7. #define Rtos_Num 5//任務個數  

  8. //簡單任務調度
  9. typedef struct{
  10.         void (*fTask)(void);//任務指針
  11.         uint8_t  runFlag;//運行標志位  1使能  0失能
  12.         uint16_t  uLenTick;//任務調度周期
  13.         uint32_t  uNextTick;//下次執行時間
  14. }sTask;

  15. //        extern uint32_t Rtos_SysTim; //系統時間   一般是1ms定時器
  16. //創建任務
  17. void Rtos_Creat(void *Task_Name,uint8_t Priority,uint8_t enable,uint32_t starttim,uint16_t tim);
  18. //任務使能
  19. void Rtos_En(uint8_t Priority,uint8_t enable);
  20. //開始執行任務
  21. void Rtos_Run(void);
復制代碼


簡易任務調度.rar

39.22 KB, 下載次數: 116, 下載積分: 黑幣 -5

任務調度

評分

參與人數 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏8 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:61002 發表于 2017-7-18 10:55 | 只看該作者
貼出了所有的代碼,但是只顯示了一部分
回復

使用道具 舉報

板凳
ID:61002 發表于 2017-7-18 10:55 | 只看該作者
  1. /創建任務
  2. //任務名稱 任務優先級  使能    開始時間    周期  
  3. void Rtos_Creat(void *Task_Name,uint8_t Priority,uint8_t enable,uint32_t starttim,uint16_t tim)
  4. {
  5.         if(Priority>=Rtos_Num)
  6.         {
  7.                 while(1)
  8.                 {
  9.                         //可做其他處理
  10.                         printf("任務出錯");               
  11.                 }
  12.         }
  13.         mTaskTab[Priority].fTask=(void(*)(void))Task_Name;//函數名
  14.         mTaskTab[Priority].runFlag =enable;//使能
  15.         mTaskTab[Priority].uNextTick=starttim;//任務開始執行的時間
  16.         mTaskTab[Priority].uLenTick=tim;//任務開始執行的時間
  17. }
  18. //任務使能  失能
  19. //任務優先級   使能
  20. void Rtos_En(uint8_t Priority,uint8_t enable)
  21. {
  22.         if(Priority>=Rtos_Num)
  23.         {
  24.                 while(1)
  25.                 {
  26.                         //可做其他處理
  27.                         printf("任務出錯");               
  28.                 }
  29.         }
  30.         mTaskTab[Priority].runFlag =enable;//使能
  31. }
  32. //開始調度
  33. void Rtos_Run(void)
  34. {
  35.         while(1)
  36.         {
  37.                 for (uint8_t  i = 0; i < (sizeof (mTaskTab)/sizeof(sTask)); i++)
  38.                 {
  39.                         if ((mTaskTab[i].uNextTick <= Rtos_SysTim)&&(mTaskTab[i].runFlag==1))
  40.                         {
  41.                                         mTaskTab[i].uNextTick += mTaskTab[i].uLenTick;
  42.                                         mTaskTab[i].fTask();        
  43.                         }
  44.                 }
  45.         }
  46. }
復制代碼
回復

使用道具 舉報

地板
ID:221865 發表于 2017-7-23 21:26 | 只看該作者
黑幣不夠啊
回復

使用道具 舉報

5#
ID:66287 發表于 2018-2-13 10:27 | 只看該作者
很不錯,謝謝樓主分享
回復

使用道具 舉報

6#
ID:20672 發表于 2018-7-22 09:09 | 只看該作者
謝謝分享
回復

使用道具 舉報

7#
ID:20672 發表于 2018-7-24 20:46 | 只看該作者
謝謝分享!!
回復

使用道具 舉報

8#
ID:93883 發表于 2019-1-15 17:43 | 只看該作者
謝謝分享,剛剛入門51
回復

使用道具 舉報

9#
ID:468821 發表于 2019-1-15 21:28 | 只看該作者
謝謝分享
回復

使用道具 舉報

10#
ID:486325 發表于 2019-3-7 15:55 | 只看該作者
代碼看不全啊,有沒有完整的代碼,謝謝
回復

使用道具 舉報

11#
ID:341228 發表于 2022-2-25 10:19 | 只看該作者
別下載了  里面沒東西  就帖子里面貼出來的那一點點代碼
回復

使用道具 舉報

12#
ID:920224 發表于 2022-3-28 02:41 | 只看該作者
謝謝分享,看了一下,感覺還有一點地方可以優化一下
回復

使用道具 舉報

13#
ID:46943 發表于 2022-4-22 17:03 | 只看該作者
我是來學習的
回復

使用道具 舉報

14#
無效樓層,該帖已經被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久久久精 | 久久久精品综合 | 日韩精品久久久 | 日韩精品免费一区二区在线观看 | 天堂素人约啪 | 亚洲麻豆 | 中文字幕在线观看 | 在线一区| 亚洲欧美aⅴ | 国产成人久久精品一区二区三区 | 国产成人精品免费视频大全最热 | 欧美1页| 91麻豆产精品久久久久久夏晴子 | 国产色婷婷久久99精品91 | 国产精品三级 | 久久久久国产一区二区三区四区 | 久久久久网站 | 国产精品欧美精品 | 黄色av网站在线观看 | 亚洲精品在线看 | 中文字幕一区二区三区精彩视频 | 人人射人人插 | 欧美日韩国产在线观看 | av在线一区二区三区 | 日韩伦理一区二区 | 一区二区三区免费 | 中文字幕成人网 | 日韩在线小视频 | av天天看| 国产在线视频一区二区 | 国产精品1区| 午夜精品久久久久久久久久久久 | 久久综合一区二区三区 | 97人人干 | 国产欧美在线观看 | 久久精品国产清自在天天线 | 欧美一级淫片007 | 日韩不卡三区 | 久久精品99国产精品日本 | 精品欧美色视频网站在线观看 | 国产精品成人一区二区三区 |