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

📄 mainfile.c

📁 uCos for 320240LCD of s3c2410
💻 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 + -