📄 mainfile.c
字号:
// Test Lcd Demo
#include "sysincludes.h"
//extern INT8U OSTaskCreate (void (*task)(void *pd), void *pdata, OS_STK *ptos, INT8U prio)
// 定义常量
#define TASK_STK_SIZE 256
//定义任务
extern void LedShow( int key,int i);
extern void EnableInterrupt(void) ;
extern void DisableInterrupt( void ) ;
void __irq OS_TICK_ISR(void);
unsigned int TaskStart_stack[256];
void TaskStart(void *p);
void Showucos_task(void *p);
unsigned int Showucos_stack[256];
void Task3( void *p ) ;
unsigned int TaskStack[256] ;
int a[]={0,0,0,0};
void Main( void )
{
int i,j;
SysInit() ;
printf( "UCOS Start Running\n" ) ;
OSInit();
printf( "OSInitOK!!!\n" ) ;
OSTaskCreate(TaskStart, (void *)0, (OS_STK *)&TaskStart_stack[256 - 1], 15);
printf( "OSTaskCreateOK!!!\n" ) ;
OSStart() ;
for(;;)
{
printf( "OSStartNONONONO!!!\n" ) ;
}
}
void TaskStart(void *p)
{
int i,j;
// OS_ENTER_CRITICAL() ;
// start uCos
p=p;
printf("enterTaskStart!!!\n");
InterruptInit() ;
printf("InterruptInitOK!!!\n");
Timer0Init() ;
printf("Timer0InitOK!!!\n");
// OS_EXIT_CRITICAL();
//中断使能函数
// OSStatInit();
//printf("OSStatInitOK!!!\n");
OSTaskCreate(Showucos_task, (void *)1, (OS_STK *)&Showucos_stack[256 - 1], 20);
printf("OSTaskCreateTASK1OK!!!\n");
OSTaskCreate( Task3, ( void * )2 , ( OS_STK * )&TaskStack[256-1], 22 ) ;
printf("OSTaskCreateTASK2OK!!!\n");
for(;;)
{
for(i=0;i<4;i++)
{
LedShow(a[i],i);
printf("LedShow!!!\n");
for(j=0;j<=5000;j++);
}
// MainTask();
OSTimeDly(1) ;
}
}
void Showucos_task(void *p)
{
p=p;
printf("enter Showucos_task!!!\n");
for(;;)
{
a[0]=a[0]+1;
if(a[0]>9)
{
a[0]=0;
a[1]=a[1]+1;
if(a[1]>9)
{
a[1]=0;
}
}
// printf( "Task2 Running\r\n") ;
// GUI_DispStringHCenterAt("Hello world" , 100,160 ) ;
printf( "youbian+1!!!\n" ) ;
OSTimeDly( 500 ) ;
}
}
void Task3( void *p )
{
p=p;
for( ;; )
{
a[2]=a[2]+1;
if(a[2]>9)
{
a[2]=0;
a[3]=a[3]+1;
if(a[3]>9)
{
a[3]=0;
}
}
printf( "zuobian+1!!!\n" ) ;
// printf( "Task3 Running\r\n" ) ;
// GUI_DispStringHCenterAt("PPPPQQQ" , 100,160 ) ;
OSTimeDly( 1000 ) ;
}
}
/*
void __irq OS_TICK_ISR(void)
{
a[0]=a[0]+1;
if(a[0]>9)
{
a[0]=0;
a[1]=a[1]+1;
if(a[1]>9)
{
a[1]=0;
a[2]=a[2]+1;
rUTXH0 ='c';
if(a[2]>9)
{
a[2]=0;
a[3]=a[3]+1;
if(a[3]>5)
{
a[3]=0;
}
}
}
}
rSRCPND=1<<10;
rINTPND=rINTPND;
}
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -