亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? system.c

?? 主要完成在uc-os2操作系統對dsp的資源控制和調度
?? C
字號:
/*****************************************************************************
*
* component   :     
*
* module name :     system.c
* date        :     
*
* subcomponent:
*
******************************************************************************
*
* function    :                                                   
*               
*               
* description :                                                   
*
******************************************************************************
*
*
* dependencies:
*			   
*               uC/OS-II The Realtime KERNEL by Jean J. Labrosse
*
* author      : Kenneth Blake - Oberon Data och Elektronik AB
*               ken@oberon.se  www.oberon.se
* history     : 
*
*
******************************************************************************/


#include "D:\testUCOS\tic6416\test6416\SOURCE\includes.h"
//#include <dma.h>

void minit(void);


#pragma DATA_SECTION( ClockTaskStack              ,"STACK_AREA" );
#pragma DATA_SECTION( ForSystemSupervisorStack    ,"STACK_AREA" );
#pragma DATA_SECTION( OSTaskIdleStk                 ,"STACK_AREA" );

#pragma DATA_SECTION( TaskOneStack                 ,"STACK_AREA" );
#pragma DATA_SECTION( TaskTwoStack                 ,"STACK_AREA" );
#pragma DATA_SECTION( TaskThreeStack                 ,"STACK_AREA" );
#pragma DATA_SECTION( TaskFourStack                 ,"STACK_AREA" );
#pragma DATA_SECTION( TaskFiveStack                 ,"STACK_AREA" );



far  OS_STK      OSTaskIdleStk[OS_TASK_IDLE_STK_SIZE];  /* Idle task stack                          */

INT32U ClockTaskStack                [CLOCK_TASK_STACK_SIZE                  ] ;
INT32U ForSystemSupervisorStack      [SYSTEM_SUPERVISOR_TASK_STACK_SIZE	 	] ;
INT32U TaskOneStack                  [TASK_ONE_STACK_SIZE            	 	] ;
INT32U TaskTwoStack                  [TASK_TWO_STACK_SIZE            	 	] ;
INT32U TaskThreeStack                 [TASK_THREE_STACK_SIZE            	 	] ;
INT32U TaskFourStack                  [TASK_FOUR_STACK_SIZE            	 	] ;
INT32U TaskFiveStack                  [TASK_FIVE_STACK_SIZE            	 	] ;



KERNEL_S     KERNEL;

volatile unsigned int Volatile_Value_Of_Illegal_Interrupt ;
   
volatile unsigned int
   Always_Enabled_Interrupts  ,
   Normally_Enabled_Interrupts;


SEMAPHORE_S  *Semaphore ;
MAILBOX_S    *MailBox   ;
QUEUE_S      *Queue     ;




/******************************************************************************
*                                                                            
* function    : TimerOneTick(void ) 
* description : Timer 1 tick interrupt handler
*                                                                            
*               Ticks every millisecond                                                             
*                                                                            
* dependencies: Setup in the interrupt vector : c6inthnd.asm
*                                               os_cpu_a.asm                             
*                                                                            
*  Input      : None
*  Output     : None
* history     :                                                              
* return value : 
* Cost  :                                                                     
*                                                                            
******************************************************************************/
/*------------------------------**
**  Timer one interrupt handler  **
**------------------------------*/
  /* do not declare this with the 
     ordinary interrupt keyword 
     or #pragma interrupt () ; */
     
void 
TimerOneTick(void)                          /* Interrupt 15, System Timer One millisecond */
{
   CPU_Save()   ; /* CPU runtime saving of task registers */
   
   OSIntEnter() ;

   OSMboxPost( MailBox->ForTheClockInterrupt, (void *)1); 
   OSIntExit()  ;
   
/*   CSR = CSR & (unsigned int)-2;*/
   CPU_Restor() ; /* CPU runtime popping of task registers */
}



/******************************************************************************
*                                                                            
* function    : System__Hardware__Initialisation
* description : 
*                                                                            
*               Initializes the hardware parts of the system   
*               So that the KERNEL may be built and started
*               System activation is the process of bringing a software system 
*               to its operational state. It includes systematic activities 
*               such as obtaining operational (configuration) data and 
*               synchronizing with other components before starting full 
*               operation. For example,after adding a new node into a computer 
*               communication network, the node may first have to synchronize 
*               with other nodes to obtain its routing data. Deactivation of 
*               the system or individual components also needs to be done 
*               systematically. For example, the various resources used 
*               by a component must be returned when the component is 
*               deactivated.
*                
*                   System_activation(void) (start up) 
*                   Deactivation(void)
*                   InitialisationCheck(void)
*                   ColdStart(void)
*                   WarmStart(void)
*                   HotStart(void)
* 
*                                                                             
*  dependencies: 
*   Input      : 
*   Output     : 
* history     :                                                              
* return value : 
* Cost  :                                                                     
*                                                                            
******************************************************************************/
/*--------------------------------------------**
**                                            **
**  S Y S T E M  I N I T I A L I S A T I O N  **
**                                            **
**--------------------------------------------*/
void    System__Hardware__Initialisation(void)   
{
    
    Normally_Enabled_Interrupts  = 0 ;
    //CPU_Processor_Setup TO set the cpu timer intrupt for producing the TimerOneTick intruption 
	//USER CODE
	//end user code 
    Always_Enabled_Interrupts   = 0      ;

//    ICR = 0 ; /* Clear all strange interrupts, if any */

    Normally_Enabled_Interrupts  =(1 <<  CPU_INT_NMI    )   ;//user must change the value 
                    //to EN the cpu IER register acording to the diffrent cpu
}





/******************************************************************************
*                                                                            
* function    : SystemBuild__CreateQueues( )
* description : 
*               Builds the necessary Queues                                                             
*                                                                            
* dependencies: 
*  Input      : 
*  Output     : 
* history     :                                                              
* return value : 
* Cost  :                                                                     
*                                                                            
******************************************************************************/

void    SystemBuild__CreateQueues(void)  
{

/*-----------------------**
**        M E S S A G E  **
**        H A N D L E R  **
**-----------------------*/
    // user code such as Queue->ForMessageHandler_Input.Event  = 
       //OSQCreate( &Queue->ForMessageHandler_Input.QueueElement[0],  QUEUE_MAX_SIZE  );   
       
}	   


/******************************************************************************
*                                                                            
* function    : SystemBuild__CreateMailBoxes
* description : 
*               Builds the necessary MailBoxes                                                             
*                                                                            
* dependencies: 
*  Input      : 
*  Output     : 
* history     :                                                              
* return value : 
* Cost  :                                                                     
*                                                                            
******************************************************************************/

void    SystemBuild__CreateMailBoxes(void)  
{
/*---------------------------------------------------------**
**     Create the one item Mailbox for the Clock interrupt **
**---------------------------------------------------------*/
    // user code such as MailBox->ForTheClockInterrupt               = OSMboxCreate((void *)0);    /* Clock Mailbox               */
    
	// user code such as MailBox->ForCommunicationBetweenTask4_And_5 = OSMboxCreate((void *)0); 
}	   


/******************************************************************************
*                                                                            
* function    : SystemBuild__CreateSemaphores
* description : 
*               Builds the necessary Semaphores                                                             
*                                                                            
* dependencies: 
*  Input      : 
*  Output     : 
* history     :                                                              
* return value : 
* Cost  :                                                                     
*                                                                            
******************************************************************************/
void    SystemBuild__CreateSemaphores(void)   
{
 // user code such as    Semaphore->ForTaskThree = OSSemCreate(1) ;
}


/******************************************************************************
*                                                                            
* function    : System__KERNEL__Build
* description : 
*                                                                            
*               Initializes the KERNEL with the resources
*               that are needed.
*                                                                            
* dependencies: 
*  Input      : 
*  Output     : 
* history     :                                                              
* return value : 
* Cost  :                                                                     
*                                                                            
******************************************************************************/
    
/**----------------------------
**                            **
**    S Y S T E M   B U I L D **
**                            **
**----------------------------*/
void    System__KERNEL__Build(void) 
{
/*---------------------------**
**     Initialize the KERNEL **
**---------------------------*/

    OSInit();
    

    Semaphore = &KERNEL.Semaphore ;
    MailBox   = &KERNEL.MailBox   ;
    Queue     = &KERNEL.Queue     ;
    
    
   SystemBuild__CreateQueues()     ;  
   SystemBuild__CreateMailBoxes()  ;  
   SystemBuild__CreateSemaphores() ;  
   
/*--------------------------------------------**
**           Declare System Tasks (processes) **
**--------------------------------------------*/
//user code to create task such as
//create one
/*****************************************
   KERNEL.Stack.ForClock.StackBuffer = &ClockTaskStack[0] ;
   
   OSTaskCreate(ClockTask,               
                       (void *)NO_DATA_POINTER,   
                       (void *)&KERNEL.Stack.ForClock.StackBuffer[CLOCK_TASK_STACK_SIZE-1], 
                       CLOCK_TASK_PRIORITY); 
*******************************************/  
//create two
/******************************************
   KERNEL.Stack.ForSystemSupervisor.StackBuffer = &ForSystemSupervisorStack [0];

   OSTaskCreate(SystemSupervisor, 
                       (void *)NO_DATA_POINTER, 
                       (void *) &KERNEL.Stack.ForSystemSupervisor.StackBuffer[SYSTEM_SUPERVISOR_TASK_STACK_SIZE-1], 
                      SYSTEM_SUPERVISOR_PRIORITY);
*******************************************/
//create three   
    
    
}



/******************************************************************************
*                                                                            
* function    : main
* description : 
*               System start after the initial assembly code
*               that sets the first stack.
*               The system build processes are called in sequence                                                             
*               and the KERNEL is started.                                                             
*               The Stack is only used before the KERNEL is started and
*               is never again used.                                                            
*               The OSStart never returns here
*                                                                            
* dependencies: 
*  Input      : 
*  Output     : 
* history     :                                                              
* return value : 
* Cost  :                                                                     
*                                                                            
******************************************************************************/

void main(void)             
{
    CPU_Register_Initialisation(); // In OS_CPU_A.asmfiles//
    							   // Initialise the processors registers with the define value
    //begin user for initilation code such as  dma_reset(  )and so on
    //USER CODE 
    //end user code for initilation

    System__Hardware__Initialisation() ;//the main idea of this function is 
    									//to initalate the sys timertick 
    System__KERNEL__Build( ) ;
     
/*-----------------------**
**      S Y S T E M      **
**      S T A R T        **
**   Start the KERNEL    **
**   The system will     **
**   not return to       **
**   this function       **
**   again               **
**-----------------------*/
    OSStart();////excute the OSStartHighRdy() in this function                                             /* Start multitasking                       */
}






?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品一区2区| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 91美女蜜桃在线| 色偷偷一区二区三区| 欧美成人bangbros| 免费在线观看不卡| 欧美日韩国产系列| 亚洲一区二区在线免费观看视频| 蜜臀91精品一区二区三区| 一本色道久久综合精品竹菊| 亚洲丝袜另类动漫二区| av在线不卡电影| 国产精品福利电影一区二区三区四区| 国产一区二区h| 欧美日韩一级片在线观看| 午夜视频在线观看一区| 欧美日韩小视频| 青青草国产精品97视觉盛宴| 日韩欧美一二三| 国产很黄免费观看久久| 国产精品免费久久| 色婷婷亚洲综合| 日欧美一区二区| 亚洲精品一区二区三区影院| 国产成人午夜精品5599| 中文字幕中文字幕在线一区| 欧洲精品在线观看| 美国一区二区三区在线播放| 久久久国产午夜精品| 亚洲男人的天堂一区二区| 福利视频网站一区二区三区| 综合久久综合久久| 69堂亚洲精品首页| 国产一区二区剧情av在线| 欧美精品一区二区久久久 | www激情久久| 久久精品国产久精国产爱| 91精品国产高清一区二区三区 | 亚洲一线二线三线久久久| caoporm超碰国产精品| 亚洲一区二区视频| 亚洲精品一区二区三区精华液| 国产精品一区二区免费不卡 | gogogo免费视频观看亚洲一| 一区二区三区自拍| 日韩午夜在线观看| 成人精品视频一区二区三区| 亚洲国产乱码最新视频| 国产午夜精品福利| aa级大片欧美| 韩国成人精品a∨在线观看| 久久日韩精品一区二区五区| 在线亚洲精品福利网址导航| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产精品入口麻豆九色| 欧美在线视频你懂得| 国产成人亚洲综合a∨猫咪| ...av二区三区久久精品| 日韩一区二区三区在线视频| 国产一区视频导航| 天天操天天色综合| 亚洲人成网站影音先锋播放| 久久久亚洲高清| 欧洲色大大久久| 成人午夜视频免费看| 蜜桃av一区二区在线观看| 亚洲乱码国产乱码精品精98午夜 | 青青国产91久久久久久| 亚洲久本草在线中文字幕| 久久综合九色综合97婷婷| 欧美亚洲尤物久久| 韩日av一区二区| 日韩av中文字幕一区二区三区| 久久精品视频免费| 欧美日韩在线直播| 成人一道本在线| 激情综合色综合久久| 视频在线观看一区| 亚洲一卡二卡三卡四卡五卡| 国产精品久久久一区麻豆最新章节| 色婷婷亚洲精品| 99久久精品国产一区| 国产精品911| 国产精品一区二区三区网站| 免费xxxx性欧美18vr| 一区二区三区日韩在线观看| 中文字幕日韩av资源站| 国产视频一区二区在线| 国产精品天干天干在观线| 久久精品男人的天堂| 国产亚洲欧美色| 久久综合九色综合97_久久久| 在线观看欧美精品| 日韩欧美综合在线| 日韩欧美视频在线| 国产亚洲欧美一区在线观看| 久久久99精品免费观看不卡| 国产精品久久久久天堂| 亚洲欧美偷拍卡通变态| 国产欧美日本一区视频| 国产精品丝袜91| 中文字幕亚洲成人| 亚洲精品视频在线观看免费| 伊人夜夜躁av伊人久久| 一区二区三区鲁丝不卡| 蜜桃av一区二区| 国产在线精品一区二区夜色| 97久久久精品综合88久久| 色就色 综合激情| 欧美电影免费观看高清完整版在线| 日韩精品一区二| 亚洲色图一区二区三区| 亚洲gay无套男同| 国产精品婷婷午夜在线观看| 亚洲影院免费观看| 男人的j进女人的j一区| 成人黄色小视频| 91丨porny丨最新| 日韩一级黄色大片| 久久综合给合久久狠狠狠97色69| 99久精品国产| 精品久久久久久久一区二区蜜臀| 久久一留热品黄| 亚洲网友自拍偷拍| 麻豆久久久久久| 欧美综合久久久| 精品免费一区二区三区| 精品少妇一区二区三区 | 欧美精品在线视频| 国产精品成人在线观看| 亚洲成人动漫精品| 国产高清精品在线| 欧美午夜理伦三级在线观看| 国产色一区二区| 亚洲一区二区三区四区在线| 国产精品亚洲专一区二区三区 | 99r国产精品| 欧美日韩久久不卡| 亚洲黄色免费网站| 久久精品国产免费看久久精品| 欧美性生活影院| 久久人人爽人人爽| 亚洲成av人片| 成人美女视频在线观看18| 欧美专区日韩专区| 亚洲欧洲制服丝袜| 激情偷乱视频一区二区三区| 在线观看91av| 亚洲男人的天堂av| 91麻豆国产在线观看| 精品国产乱码久久久久久久久| 亚洲成在人线在线播放| 成人午夜私人影院| 久久精品一二三| 日韩精品色哟哟| 欧美日韩国产成人在线91| 亚洲欧洲99久久| www.亚洲人| 久久九九全国免费| 国产自产视频一区二区三区| 欧美日韩国产美| 五月婷婷综合在线| 一本大道久久精品懂色aⅴ| 亚洲图片另类小说| 国产精品91一区二区| 久久精品一区四区| 日韩成人av影视| 欧美一级片免费看| 亚欧色一区w666天堂| 欧美日韩一区二区在线观看视频 | 日韩一区二区免费在线电影| 樱花影视一区二区| 91亚洲国产成人精品一区二三| 国产农村妇女毛片精品久久麻豆| 久久se精品一区精品二区| 欧美精品一区二区在线观看| 日本不卡一区二区三区高清视频| 日韩欧美成人一区二区| 喷水一区二区三区| 精品电影一区二区| 久草中文综合在线| 国产精品乱人伦| 成人激情免费电影网址| 亚洲男女毛片无遮挡| 色婷婷亚洲综合| 日本不卡在线视频| 日韩丝袜情趣美女图片| 国产精品综合一区二区三区| 欧美mv和日韩mv的网站| www.欧美色图| 亚洲精品国产视频| 欧美一区二区三区色| 麻豆免费精品视频| 精品久久久久久综合日本欧美| 韩国理伦片一区二区三区在线播放| 51精品视频一区二区三区| 蜜臀久久99精品久久久画质超高清| 久久综合999| av一区二区三区黑人| 国产精品久久久久aaaa|