找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3694|回復: 1
收起左側(cè)

UCOSII推箱子游戲程序設計

[復制鏈接]
ID:644547 發(fā)表于 2020-9-12 02:10 | 顯示全部樓層 |閱讀模式
UCOSII推箱子游戲源程序
  1. #include "includes.h"

  2. #define TASK_STK_SIZE  512       /* Size of each task's stacks (# of WORDs) */
  3. #define TaskStart_Prio        1
  4. #define Task1_Prio                2

  5. OS_STK  TaskStk[OS_MAX_TASKS][TASK_STK_SIZE];    // Tasks stacks
  6. HANDLE mainhandle;                //主線程句柄
  7. CONTEXT Context;                //主線程切換上下文
  8. BOOLEAN FlagEn = 1;                //增加一個全局變量,做為是否時鐘調(diào)度的標志

  9. void TaskStart(void * pParam) ;
  10. void VCInit(void);                                                //初始化相關(guān)變量

  11. int main(int argc, char **argv)
  12. {
  13.         VCInit();
  14.         OSInit();
  15.         OSTaskCreate(TaskStart, 0, &TaskStk[1][TASK_STK_SIZE-1], TaskStart_Prio);
  16.         OSTaskCreate(drawMap, 0, &TaskStk[6][TASK_STK_SIZE-1], 6);
  17.         OSTaskCreate(pushBox, 0, &TaskStk[5][TASK_STK_SIZE-1], 5);
  18.         OSTaskCreate(ScanKey, 0, &TaskStk[7][TASK_STK_SIZE-1], 7);
  19.         OSTaskCreate(winner, 0, &TaskStk[4][TASK_STK_SIZE-1], 4);
  20.         OSStart();               
  21.         return(0);
  22. }

  23. void VCInit(void)
  24. {
  25.         HANDLE cp,ct;
  26.         Context.ContextFlags = CONTEXT_CONTROL;
  27.         cp = GetCurrentProcess();        //得到當前進程句柄
  28.         ct = GetCurrentThread();        //得到當前線程偽句柄
  29.         DuplicateHandle(cp, ct, cp, &mainhandle, 0, TRUE, 2);        //偽句柄轉(zhuǎn)換,得到線程真句柄
  30.                
  31. }

  32. void TaskStart(void * pParam)
  33. {       
  34.         char err;       
  35.         OS_EVENT *sem1;
  36.    
  37.         /*模擬設置定時器中斷。開啟一個定時器線程,每秒中斷100次,中斷服務程序OSTickISRuser*/
  38.         timeSetEvent(1000/OS_TICKS_PER_SEC, 0, OSTickISRuser, 0, TIME_PERIODIC);
  39.         OSStatInit(); /*統(tǒng)計任務初始化*/
  40.         sem1 = OSSemCreate(0);
  41.         OSSemPend(sem1, 0, &err);   //等待事件發(fā)生,被阻塞;
  42. }
復制代碼


推箱子.7z

1.59 MB, 下載次數(shù): 46, 下載積分: 黑幣 -5

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:81196 發(fā)表于 2021-4-27 17:58 | 顯示全部樓層
下載下來,自己試著玩玩,聽名字挺實用,給孩子做著玩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表