配色: 字号:
625211B添加模块、task实例
2012-08-06 | 阅:  转:  |  分享 
  
625211B添加模块、task实例

分类:MTK学习资料2012-04-0217:3864人阅读评论(0)收藏举报

###############模块的添加##################1.添加新模块文件code\jtjt文件夹jt\src\main.cjt\inc\main.h2.option.mak中COMPLIST+=jtCUS_REL_SRC_COMP+=jt3.make文件中添加make\jt\jt.mak#DefinesourcefileliststoSRC_LISTSRC_LIST=jt\src\main.c#DefineincludepathliststoINC_DIRINC_DIR=jt\inc#DefinethespecifiedcompileoptionstoCOMP_DEFSCOMP_DEFS=#DefinethesourcefilesearchpathstoSRC_PATHSRC_PATH=jt\src#####################?task添加?##################################1.app_task_config.h

task_index(INDX_JT)?

task_module_map(INDX_JT,MOD_JT)task_name("JT")task_queue_name("JTQ")task_priority(TASK_PRIORITY_MMI+1)task_stack_size(4096)task_create_function(jt_task_create)task_stack_internalRAM(KAL_FALSE)task_external_queue_size(50)task_internal_queue_size(0)task_boot_mode(NORMAL_M)2.user_msgid_app.h定义消息范围#ifdefKAL_MSGID_EXPANSION#if!defined(__L1_STANDALONE__)#include"jt_sap.h"#endifMSG_ID_NAME(JT)#elseMSG_ID_RANGE(JT,1000)#endif//#defineMSG_ID_RANGE(MSGNAME,MSGRANGE)\//MSG_ID_##MSGNAME##_CODE_BEGIN,\//MSG_ID_##MSGNAME##_CODE_TAIL=MSG_ID_##MSGNAME##_CODE_BEGIN+MSGRANGE,3.interface\jt\jt_sap.h定义消息MSG_ID_JT_STARTUP_REQ=MSG_ID_JT_CODE_BEGIN,4.option.mak把消息定义头文件加入到公共的COMMINCDIRS+=interface\jt5.main.c的实现#include"main.h"#include"syscomp_config.h"#include"task_config.h"staticvoidjt_task_main(task_entry_structtask_entry_ptr);kal_booljt_task_create(comptask_handler_structhandle){staticconstcomptask_handler_structmy_handler_info={jt_task_main,NULL,NULL,NULL,NULL,};handle=(comptask_handler_struct)&my_handler_info;returnKAL_TRUE;}voidjt_main(ilm_structilm_ptr){if(ilm_ptr->msg_id==MSG_ID_JT_STARTUP_REQ){//消息处理}}staticvoidjt_task_main(task_entry_structtask_entry_ptr){kal_uint32my_index;ilm_structcurrent_ilm;kal_get_my_task_index(&my_index);while(1){receive_msg_ext_q(task_info_g[task_entry_ptr->task_indx].task_ext_qid,¤t_ilm);stack_set_active_module_id(my_index,current_ilm.dest_mod_id);jt_main((void)¤t_ilm);free_ilm(¤t_ilm);}}6.发送消息给自己创建的taskilm_structilm_ptr=NULL;ilm_ptr=ilm_ptr=allocate_ilm(MOD_MMI);ilm_ptr->msg_id=(msg_type)MSG_ID_JT_STARTUP_REQ;ilm_ptr->local_para_ptr=NULL;//(local_para_struct)local_data;ilm_ptr->peer_buff_ptr=NULL;SEND_ILM(MOD_MMI,MOD_JT,MMI_L4C_SAP,ilm_ptr);



献花(0)
+1
(本文系小云蔡首藏)