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

📄 main.c

📁 周立功ARM9 2410试验平台的uCOS-II基础实验代码
💻 C
字号:
/****************************************Copyright (c)**************************************************
**                               Guangzhou ZHIYUAN electronics Co.,LTD.
**                                     
**                                 http://www.zyinside.com
**
**--------------File Info-------------------------------------------------------------------------------
** File Name:          main.c
** Last modified Date: 2006-01-11 
** Last Version:       v1.0
** Descriptions:       主程序
**
**------------------------------------------------------------------------------------------------------
** Modified by:       
** Modified date:      2006-01-06
** Version:            v1.0
** Descriptions:       创建
**
**------------------------------------------------------------------------------------------------------
** Modified by:      
** Modified date:     
** Version:           
** Descriptions:      
**
********************************************************************************************************/
#include "config.h"

#define	Task0StkLengh	128              // Define the Task0 stack length 定义用户任务0的堆栈长度
#define	Task1StkLengh	128              // Define the Task1 stack length 定义用户任务1的堆栈长度

OS_STK	Task0Stk [Task0StkLengh];       // Define the Task0 stack 定义用户任务0的堆栈
OS_STK	Task1Stk [Task1StkLengh];       // Define the Task1 stack 定义用户任务1的堆栈

OS_EVENT     *UART0_Sem;


void 	Task0(void *pdata);			    // Task0 任务0
void 	Task1(void *pdata);			    // Task1 任务1

/************************************************************************************
** Function name: main
** Descriptions:  主函数
** Input:         无 
** Output:        系统返回值0
** Created by:   
** Created Date:  2006-01-12
**----------------------------------------------------------------------------------
** Modified by:
** Modified Date: 
**----------------------------------------------------------------------------------
************************************************************************************/
int main (void)
{
	OSInit ();																							
	OSTaskCreate (Task0,(void *)0, &Task0Stk[Task0StkLengh - 1], 2);		
	OSTaskCreate (Task1,(void *)0, &Task1Stk[Task1StkLengh - 1], 3);
    UART0_Sem = OSSemCreate(1);
	OSStart ();
	return 0;															
}

/************************************************************************************
** Function name: Task0
** Descriptions:  发送字符串
************************************************************************************/
void Task0	(void *pdata)
{   uint8 i,num, sum;
	char str[32] = {"Data from IrDA.\r\n"};

	pdata = pdata;
	TargetInit();
	
	while (1)
	{
		num = 0x00;
		sum = 0x00;
		num = strlen(str);
		for(i=0; i<num; i++)
		{
			sum = sum + str[i];
		}
        IrDA_SendByte(0xf0);			// 发送起始标志
        OSTimeDly(OS_TICKS_PER_SEC/10);
        
        IrDA_SendByte(num);				// 发送有效数据长度
        OSTimeDly(OS_TICKS_PER_SEC/10);
        
		for(i=0; i<num; i++)			// 发送数据	
		{
			IrDA_SendByte(str[i]);
		}
        OSTimeDly(OS_TICKS_PER_SEC/10);
        
        IrDA_SendByte(sum);				// 发送校验和
        OSTimeDly(OS_TICKS_PER_SEC/10);
        
        IrDA_SendByte(0xf1);			// 发送结束标志
        OSTimeDly(OS_TICKS_PER_SEC);
	}
}

/************************************************************************************
** Function name: Task1
** Descriptions:  无
************************************************************************************/
void Task1	(void *pdata)
{   uint8 err;  

	pdata = pdata;
	
	while (1)
	{
        OSTimeDly(OS_TICKS_PER_SEC);
	}
}

⌨️ 快捷键说明

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