mtk手机设备驱动编写介绍.pptxVIP

  • 2
  • 0
  • 约8.94千字
  • 约 30页
  • 2020-07-06 发布于浙江
  • 举报
MTK Driver Introduction;首先需要注意两个宏定义 1. __CUST_NEW__ 程序中有多处用该宏将代码隔开 Make文件中若如下定义: DRV_CUSTOM_TOOL_SUPPORT = TRUE Option.mak文件中 ifdef DRV_CUSTOM_TOOL_SUPPORT ifeq ($(strip $(DRV_CUSTOM_TOOL_SUPPORT)),TRUE) COM_DEFS += __CUST_NEW__ endif endif;2. WIN32 #ifndef WIN32 ……………… #endif 用该宏将真机与模拟器的代码分隔开; 一. GPIO口的初使化与使用; d. 上拉与下拉的使能 void GPIO_PullenSetup(kal_uint16 pin, kal_bool enable) 2. 读取状态 a. 返回模式 char GPIO_ReturnMode(char port); b. 返回方向 char GPIO_ReturnDir(char port); c. 返回电平值 char GPIO_ReturnDout(char port); 3. GPIO使用中需注意的问题; 二.中断的配置与使用; void FLICK_EINT_HISR(void) //added by Jeff Ji 071024 { ilm_struct *flick_ilm; aux_id_struct *aux_id_data; if (flick_state == LEVEL_HIGH) { aux_id_data = (aux_id_struct*) construct_local_para(sizeof(aux_id_struct), TD_CTRL); aux_id_data-aux_id = AUX_ID_FLICK_OFF; DRV_BuildPrimitive(flick_ilm, MOD_EINT_HISR, MOD_UEM, MSG_ID_AUX_ID, aux_id_data); } ; else { aux_id_data = (aux_id_struct*) construct_local_para(sizeof(aux_id_struct), TD_CTRL); aux_id_data-aux_id = AUX_ID_FLICK_ON; DRV_BuildPrimitive(flick_ilm, MOD_EINT_HISR, MOD_UEM, MSG_ID_AUX_ID, aux_id_data); } msg_send_ext_queue(flick_ilm); flick_state = !flick_state; EINT_Set_Polarity(FLICK_EINT_NO,flick_state); } ;void BATTERY_EINT_HISR(void) { iwit_battery_state = !iwit_battery_state; EINT_Set_Polarity(BAT_EINT_NO,iwit_battery_state); iwit_fakeChargerAct = KAL_TRUE; if(iwit_battery_state == LEVEL_HIGH)//plug out { bmt_set_chr_status(bmt_chr_out); bmt_charger_action(KAL_FALSE); } else //plug in {

文档评论(0)

1亿VIP精品文档

相关文档