main.c

来自「UCOS-2.rar」· C语言 代码 · 共 128 行

C
128
字号
/****************************************Copyright (c)**************************************************
**                               Guangzou ZLG-MCU Development Co.,LTD.
**                                      graduate school
**                                 http://www.zlgmcu.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name:			main.c
** Last modified Date:  2004-09-16
** Last Version:		1.0
** Descriptions:		The main() function example template
**
**------------------------------------------------------------------------------------------------------
** Created by:			Chenmingji
** Created date:		2004-09-16
** Version:				1.0
** Descriptions:		The original version
**
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Descriptions:
**
********************************************************************************************************/
#include "config.h"
#include "stdlib.h"

#define	TaskStkLengh	64			          //定义用户任务0的堆栈长度
 
OS_STK	TaskStk [TaskStkLengh];		         //定义用户任务0的堆栈
OS_STK	TaskTimer1Stk [TaskStkLengh];		 //定义用户任务0的堆栈

void 	Task0(void *pdata);			         //Task0 任务0
void 	TaskTimer1(void *pdata);			 //Task0 任务0
void delay(uint8 i)
{
 while(i)
 {
  i--; 
 }
}
int main (void)
{
	OSInit ();																										
	OSTaskCreate (Task0,(void *)0, &TaskStk[TaskStkLengh - 1], 2);		
	OSStart ();
	return 0;															
}
/*********************************************************************************************************
**                            Task0 任务0
********************************************************************************************************/

void Task0	(void *pdata)
{
	pdata = pdata;
	TargetInit ();
	OSTaskCreate (TaskTimer1,(void *)0, &TaskTimer1Stk[TaskStkLengh - 1], 3);	
	while (1)
	{
		OSTimeDly(10);
	}
}
   
/*********************************************************************************************************
**                           TaskTimer1任务

0---7----1us
8--- ----2us
70-------11us
90-------15us
********************************************************************************************************/

void TaskTimer1 (void *pdata)
{
    char s[40];
    uint8 i;
    uint16 dat;
	pdata = pdata;
    T1MCR=0x00;
    T1CCR=0x00;
    //PC_ElapsedInit();
    while(1)
    {
       // OSTimeDly(OS_TICKS_PER_SEC);
        T1TC=0x00;
        T1TCR=0x01;
       // OSTimeDly(OS_TICKS_PER_SEC);
        //PC_ElapsedStart();
        delay(90);
        //OSTimeDly(OS_TICKS_PER_SEC/200);
        //dat=PC_ElapsedStop();
        T1TCR=0x00;
        sprintf(s,"OSC is %uUS.",(uint32)(T1TC/11));
        PC_DispStr(1,1,s,DISP_FGND_YELLOW+DISP_BGND_BLUE);
    }
    
}
	





























⌨️ 快捷键说明

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