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

📄 usertask.c

📁 uCOS-II2.52在C8051F020上移植的全部源码
💻 C
字号:
#include "ucos-2.52\\includes.h"
//#include"absacc.h"

OS_STK xdata mystack1[USER_STACK_SIZE],mystack2[USER_STACK_SIZE],mystack3[USER_STACK_SIZE];

void mytask1(void) ;
void mytask2(void) ;
void mytask3(void) ;
extern void InitTimer0(void);
extern void puts(char * pch);

void main(void)
{
	unsigned char n;
	WDTCN = 0xDE;
	WDTCN = 0xAD;

	XBR0 = 0x04;
	XBR1 = 0x00;
	XBR2 = 0x40;

	P1MDOUT = 0x01;

	OSCXCN = 0x67;					// EXTERNAL Oscillator Control Register	
    for(n = 0; n < 255; n++) ;      // wait for osc to start    while ( (OSCXCN & 0x80) == 0 ); // wait for xtal to stabilize
	OSCICN = 0x0C;					// Internal Oscillator Control Register

	CKCON = 1 << 4;
	uartInit();
	puts("Hello uCOS-II.\n");

	InitTimer0();

	OSInit();
	OSTaskCreate(mytask1,0,&mystack1[0],0);
	OSTaskCreate(mytask2,0,&mystack2[0],1);
	OSTaskCreate(mytask3,0,&mystack3[0],2);
	OSStart();
	while(1) putc(getc());
}

void mytask1(void) 
{
	TR0 = 1;
	while(1)
	{
		puts("Task 11111111 is running!\n"); 
		OSTimeDly(OS_TICKS_PER_SEC);
	}
}
void mytask2(void) 
{
	while(1)
	{
		puts("Task 22222222 is running!\n");   
		OSTimeDly(100);
	}
}
void mytask3(void) 
{
	while(1)
	{
		puts("Task 33333333 is running!\n");   
		OSTimeDly(200);
	}
}


⌨️ 快捷键说明

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