找回密码
 立即注册

QQ登录

只需一步,快速开始

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

UCOSII推箱子游戏程序设计

[复制链接]
跳转到指定楼层
楼主
ID:644547 发表于 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;                //增加一个全局变量,做为是否时钟调度的标志

  9. void TaskStart(void * pParam) ;
  10. void VCInit(void);                                                //初始化相关变量

  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);        //伪句柄转换,得到线程真句柄
  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(); /*统计任务初始化*/
  40.         sem1 = OSSemCreate(0);
  41.         OSSemPend(sem1, 0, &err);   //等待事件发生,被阻塞;
  42. }
复制代码


推箱子.7z

1.59 MB, 下载次数: 45, 下载积分: 黑币 -5

评分

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

查看全部评分

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

使用道具 举报

沙发
ID:81196 发表于 2021-4-27 17:58 | 只看该作者
下载下来,自己试着玩玩,听名字挺实用,给孩子做着玩
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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