TI 的OSAL做的很不错,不过看起来也挺费劲可能自己水平太差吧,网上买的谷雨的开发板觉得确实挺不错的。

做点学习笔记,首先是记录OSAL里执行的顺序流程,主要是task ,event,message

 

1,

 

APP_Main.c:

/* Initialize the operating system */
osal_init_system();

其中初始化了

// Initialize the system tasks.
osalInitTasks();

 1 /*********************************************************************
 2  * @fn      osalInitTasks
 3  *
 4  * @brief   This function invokes the initialization function for each task.
 5  *
 6  * @param   void
 7  *
 8  * @return  none
 9  */
10 void osalInitTasks( void )
11 {
12   uint8 taskID = 0;
13 
14   tasksEvents = (uint16 *)osal_mem_alloc( sizeof( uint16 ) * tasksCnt);
15   osal_memset( tasksEvents, 0, (sizeof( uint16 ) * tasksCnt));
16 
17   /* LL Task */
18   LL_Init( taskID++ );
19 
20   /* Hal Task */
21   Hal_Init( taskID++ );
22 
23   /* HCI Task */
24   HCI_Init( taskID++ );
25 
26 #if defined ( OSAL_CBTIMER_NUM_TASKS )
27   /* Callback Timer Tasks */
28   osal_CbTimerInit( taskID );
29   taskID += OSAL_CBTIMER_NUM_TASKS;
30 #endif
31 
32   /* L2CAP Task */
33   L2CAP_Init( taskID++ );
34 
35   /* GAP Task */
36   GAP_Init( taskID++ );
37 
38   /* GATT Task */
39   GATT_Init( taskID++ );
40 
41   /* SM Task */
42   SM_Init( taskID++ );
43 
44   /* Profiles */
45   GAPRole_Init( taskID++ );
46   GAPBondMgr_Init( taskID++ );
47 
48   GATTServApp_Init( taskID++ );
49 
50   /* Application */
51   SimpleBLEPeripheral_Init( taskID );
52 }
osalInitTasks

相关文章:

  • 2022-12-23
  • 2021-10-17
  • 2021-11-12
  • 2021-06-22
  • 2021-11-05
  • 2021-04-20
  • 2021-09-30
猜你喜欢
  • 2021-04-03
  • 2022-12-23
  • 2022-01-09
  • 2021-04-10
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案