⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userc.c

📁 minix rtos 测试代码
💻 C
字号:
#include <reg52.h>
#include <minix.h>


void task_1(void)
{
 static unsigned long aa=0;
 for (;;)
  {
  // for (aa=0;aa<0xff;aa++);
//   add_loop(&aa);
   //获取线程ID
   aa=OS_GET_READY(&task_1);
   P0=P0^0X01;
   OS_TASK_DLY(1);
  }
}

void task_2(void)
{
 static unsigned long bb=0;
 for (;;)
  {
  // for (bb=0;bb<0x3ff;bb++);
  // add_loop(&bb);
   bb=OS_GET_TASK_ID(&task_2);
   P0=P0^0x02;
   OS_TASK_DLY(1);
  }
}

void task_3(void)
{
 static unsigned long cc=0;
 for (;;)
  {
 //  for (cc=0;cc<0x7ff;cc++);
 //  add_loop(&cc);
   cc=OS_GET_TASK_ID((void (*))&task_3);
   P0=P0^0x04;
   OS_TASK_DLY(1);
   OS_SET_READY(&task_1,0);
  }
}

void task_free(void)
{
 static unsigned long dd=0;
 for (;;)
  {
//   add_loop(&dd);
   dd++;
   P0=P0^0X08;
  }
}


void main (void)
{
 OS_CREATE_TASK(&task_1,1,0,SP_POINTER+60);
 OS_CREATE_TASK(&task_2,1,1,SP_POINTER+90);
 OS_CREATE_TASK(&task_3,1,2,SP_POINTER+120);
 OS_CREATE_TASK(&task_free,1,255,SP_POINTER+150);
 OS_START_TICK();//开时钟
 for (;;);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -