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

📄 main.c

📁 ucos_ii在S3C2410上的移植
💻 C
字号:
/*
;************************************************************************************************************
;*				        				北京精仪达盛科技有限公司
;*                                     	     研    发    部
;*
;*                                 	     http://www.techshine.com
;*
;*--------------------------------------------- 文件信息 ----------------------------------------------------                                      
;*
;* 文件名称 : Main.c	
;* 文件功能 : 该文件为S3C2410硬件平台主程序。
;* 补充说明 : 
;*-------------------------------------------- 最新版本信息 -------------------------------------------------
;* 修改作者 : ARM开发小组
;* 修改日期 : 2005/08/1
;* 版本声明 : V1.0.1
;*-------------------------------------------- 历史版本信息 -------------------------------------------------
;* 文件作者 : ARM开发小组
;* 创建日期 : 2004/04/20
;* 版本声明 : v1.0.0
;*-----------------------------------------------------------------------------------------------------------
;*-----------------------------------------------------------------------------------------------------------
;************************************************************************************************************
;*/

#include <string.h>
#include "..\INC\config.h"

#define	STACKSIZE	256
OS_STK_DATA  stk;
/*
*************************************************************************************************************
**                      					分配各任务的堆栈容量                      					   **
*************************************************************************************************************
*/

OS_STK Stack_Task_1[STACKSIZE];
OS_STK Stack_Task_2[STACKSIZE];
OS_STK Stack_Task_3[STACKSIZE];


/*
*************************************************************************************************************
- 函数名称 : Task_3(void *pdata)
- 函数说明 : 超级终端输出,优先级为9
- 输入参数 : pdata
- 输出参数 : 无
*************************************************************************************************************
*/

void Task_3(void *pdata)
{	
	
	for(;;) 
	{
		Uart_Select(0);
		Uart_Printf("\n");//任务的干得活儿就是向超级终端发送内容
		//Uart_Select(1);
		//Uart_Printf("\n");//任务的干得活儿就是向超级终端发送内容
    	OSTimeDly(200);
	}

}
/*
*************************************************************************************************************
- 函数名称 : Task_2(void *pdata)
- 函数说明 : 超级终端输出,优先级为7
- 输入参数 : pdata
- 输出参数 : 无
*************************************************************************************************************
*/

void Task_2(void *pdata)
{	
   	for (;;)
   	{
    	Uart_Select(0);
    	Uart_Printf("/****************任务二输出***************/\n"); //任务的干得活儿就是向超级终端发送内容
    	//Uart_Select(1);
    	//Uart_Printf("/****************任务二输出***************/\n"); //任务的干得活儿就是向超级终端发送内容
    	OSTimeDly(200);
	}
}

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

void Task_1(void *pdata)
{
   
    Timer1_Init();											            //打开时钟节拍,让操作系统跑起来
	    
	OSTaskCreate(Task_2, (void *)0, (OS_STK *)&Stack_Task_2[(STACKSIZE) - 1], 7);   //在任务里创建另一个任务
	OSTaskCreate(Task_3, (void *)0, (OS_STK *)&Stack_Task_3[(STACKSIZE) - 1], 9);   //在任务里创建另一个任务
				    
    for(;;)
    {
         Uart_Select(0);
         Uart_Printf("/****************任务一输出***************/\n");//任务的干得活儿就是向超级终端发送内容
        // Uart_Select(1);
        // Uart_Printf("/****************任务一输出***************/\n");//任务的干得活儿就是向超级终端发送内容
         OSTimeDly(400);                                                //延时400个节拍
    }
}

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

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

⌨️ 快捷键说明

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