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

📄 main.c

📁 这是移植到凌阳十六位单片机上的UCOS 凌阳十六位单片机性能强大
💻 C
字号:
#include "includes.h"

#define MAX_STK_SIZE  50

//**************************************
void TaskA(void* data);
OS_STK TaskA_Stk[MAX_STK_SIZE+1];
#define TaskA_Prio 4

void TaskB(void* data);
OS_STK TaskB_Stk[MAX_STK_SIZE+1];
#define TaskB_Prio 8
//**************************************
void InitSystem(void);

OS_EVENT *sem;

int main(void)
{
	OSInit();
	sem=OSSemCreate(1);
	OSTaskCreate(TaskA, (void *)0, &TaskA_Stk[MAX_STK_SIZE], TaskA_Prio);
	OSTaskCreate(TaskB, (void *)0, &TaskB_Stk[MAX_STK_SIZE], TaskB_Prio);
	OSStart();
	return 0;
}

void TaskA(void *data)
{
	INT8U erra;
	data=data;
 
	InitSystem();
	for(;;)
	{
		OSSemPend(sem,0,&erra);
		*P_IOA_Data=0xff0f;
		OSTimeDly(64);
		OSSemPost(sem);
	} 
}

void TaskB(void *data)
{
	INT8U errb;
	data=data;
	for(;;)
	{
		OSSemPend(sem,0,&errb);
		*P_IOA_Data=0xfff0;
		OSTimeDly(64);
		OSSemPost(sem);
	}
}


void InitSystem(void)
{
	*P_IOA_Dir = 0xffff;			//设置IOA口为同相低电平输出
	*P_IOA_Attrib = 0xffff;
	*P_IOA_Data = 0xffff;
	
	*P_TimeBase_Setup = C_TMB1_64Hz;
	*P_INT_Ctrl = C_IRQ6_TMB1;
}

⌨️ 快捷键说明

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