MTK驱动开发学习教程是本文要介绍的内容,主要是来了解MTK的驱动开发的过程,文章中很详细的讲解了这个问题,具体内容来看本文详解。
一、Charge Parameters.
1、相关文件chr_parameter.c
2、I/O相关的设置。在bmt_custom_chr_def定义、GPIO_CHRCTRL、GPIO_VIBRATOR、分别定义充电控制脚和振机控制脚。
3、其它的相关的参数设置可以参见文件GSM_GPRS_System_Configuration_V1.93.pdf中P42的说明
二、EINT Parameter 外部中断
1、相关文件eint_def.c
2、在文件头根据电路图设置关于AUX_EINT_NO等外部中断的具体引脚设置。
三、Key Pad 定义部分
1、相关文件keypad_def.c
2、根据物理上按键的相关定义、填写keypad_custom_def部分、定义按键。疑问、关于Power按键等、在哪里定义的?
四、UART Parameter
1、相关文件uart_def.c
五、用户自定义的驱动开发初始化
1, 相关文件custom_drv_init.c、在函数custom_drv_init中、会调用GPIO,SPI,LCD等的Init函数、需要对这些对应的函数执行相应的设置初始化操作。
2、对于GPIO_init函数中、可以调用函数DRV_WriteReg(GPIO_MODE1,0x0000);等执行相应地设置操作、关于该GPIO_MODE1等的定义、可以参考文件MT6219.pdf中、P98的相关说明.
六、Custom Equipment Config
1、相关的文件:custom_equipment.c、custom_equipment.h
2、GPIO的定义部分:需要根据实际的电路图填写gpio_map_tbl表格、对应修改GPIO_LABELID_ENUM和netname定义等
3、需要根据定义和设置、修改custom_cfg_gpio_set_level函数
七、设置驱动开发相关的level信息、主要包括:LCD对比度、音量、电池、pwm等
1、相关的文件:custom_hw_default.h、custom_hw_default.c
2、设置相关的参数、包括默认的初始时间等
八、LED,LCD,Vibrator模式设置
1、p71页为分步骤设置模式的详细说明。
九、NVram Config
1、相关的文件:nvram_user_def.h,
2、添加一个新的存储项的步骤:
3、在文件nvram_user_def.h中、在enum nvram_LID_cust_enum结构中添加需要添加的项。
4、在文件nvram_user_def.h中、使用define来定义size和total常量。注意、需要根据类型的不同来定义、可以参见p78的说明
5、在文件custom_nvram_editor_data_item.h中、定义自定义的数据信息的版本信息部分
6、在文件custom_nvram_editor_data_item.h中、添加用于meta的函数、类似LID_VBIT VER_LID(NVRAM_EF_XXXXXX_LID) 这样的函数
7、在文件nvram_user_config.c中、设置默认的数据信息部分.
8、设置数据信息:Size Max<480 Total Max<300 Max Number of user configurable data item<25
十、LCD Config
1、lcd读写时序设置、在函数init_lcd_interface中处理、在文件lcd.c中、具体可以参见p88的说明
2、关于lcd具体设置的步骤说明在P96
十一、Flash Config
1、NORFlash Config:相关的文件FlashConf.c
2、NANDFLash Config:相关的文件NANDFlashConf.c
3、疑问:FlashConf.c中、如何看需要分配的程序空间的大小?也就是说、分配3M的空间用于程序、怎么知道是否够了呢
十二、RF Driver Config
1、相关的文件的目录:D:\project\6219\custom\l1_rf\T6219_MT6129D
2、具体的参数设置请参见P106、一般不需要修改
十三、AFE Config (Audio Front end前端/置音频)
1、相关的文件的目录:D:\project\6219\custom\audio\T6219_BB。
小结:详解关于MTK驱动开发学习教程的内容介绍完了,希望通过本文的学习能对你有所帮助!