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

📄 main.c

📁 ucos在三星s3c4419B上的移植
💻 C
字号:
/*
*************************************************************************************************************									  	
*-----------------------------------uC/OS Kernel移植主函数文件MAIN.C----------------------------------------  
*                                                                            	                      	 
*--------------------------------------------- 文件信息 ----------------------------------------------------                                   
* 文件名称 : MAIN.C	
* 文件功能 : 应用程序
* 补充说明 : uC/OS基本功能测试
*--------------------------------------------- 版本信息 ----------------------------------------------------
* 修改作者 : NJUST
* 修改日期 : 2007/11/5
* 版本声明 : V1.0.0
*-----------------------------------------------------------------------------------------------------------
************************************************************************************************************
*/

#include "..\test\SRC\config.h"

#define	STACKSIZE	1024
OS_STK_DATA  stk;

/*
*************************************************************************************************************
**                      					分配各任务的堆栈容量                      					   **
*************************************************************************************************************
*/

OS_STK Stack_Task_START[STACKSIZE];
OS_STK Stack_Task_1[STACKSIZE];
OS_STK Stack_Task_2[STACKSIZE];

/*
*************************************************************************************************************
- 函数名称 : Task_3(void *pdata)
- 函数说明 : 点亮D8熄灭D7,优先级为9
- 输入参数 : pdata
- 输出参数 : 无
*************************************************************************************************************
*/

void Task_2(void *pdata)
{	
	/*INT32U i;
	for(;;) 
	{
		for(i=0;i<100000;i++);
		rPCONB = 0x7cf;
		rPDATB = 0x7df;
		for(i=0;i<100000;i++);
    	OSTimeDly(50);
	}*/

}

/*
*************************************************************************************************************
- 函数名称 : Task_2(void *pdata)
- 函数说明 : 点亮D7熄灭D8,优先级为7
- 输入参数 : pdata
- 输出参数 : 无
*************************************************************************************************************
*/

void Task_1(void *pdata)
{	
	/*INT32U i;
   	for (;;)
   	{
    	for(i=0;i<100000;i++);
    	rPCONB = 0x7cf;
    	rPDATB = 0x7ef;
    	for(i=0;i<100000;i++);
    	OSTimeDly(70);
	}*/
}

/*
*************************************************************************************************************
- 函数名称 : Task_START
- 函数说明 : 系统启动后运行的第一个任务,,熄灭D7、D8,优先级为5
- 输入参数 : pdata
- 输出参数 : 无
*************************************************************************************************************
*/

void Task_START(void *pdata)
{
    INT32U i;
    Rtc_Tick_Init();											            //打开时钟节拍,让操作系统跑起来
	    
	OSTaskCreate(Task_1, (void *)0, (OS_STK *)&Stack_Task_1[(STACKSIZE) - 1], 7);   //在任务里创建另一个任务
	OSTaskCreate(Task_2, (void *)0, (OS_STK *)&Stack_Task_2[(STACKSIZE) - 1], 9);   //在任务里创建另一个任务
				    
    /*for(;;)
    {
     	for(i=0;i<100000;i++);
        rPCONB = 0x7cf;
        rPDATB = 0x7ff;
        for(i=0;i<100000;i++);
        OSTimeDly(90);                                                //延时400个节拍
    }*/
}

/*
*************************************************************************************************************
- 函数名称 : Main(void)
- 函数说明 : 系统的主程序入口
- 输入参数 : 无
- 输出参数 : 无
*************************************************************************************************************
*/

void Main(void)                            
{ 
    Target_Init();   														// ARMII实验系统的初始化,包括CPU板
    OSInit();																	            // 操作系统的初始化
	OSTaskCreate(Task_START, (void *)0, (OS_STK *)&Stack_Task_START[STACKSIZE - 1], 5);                    //创建任务一
    OSStart();
}

⌨️ 快捷键说明

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