MTK DriverOnly——LCD移植

引言:往往DriverOnly版本一开始没有现成的硬件可供调试,所以驱动移植后,只要能正常编译通过即可,不需要实际硬件调试。本文参照了范**的工作笔记[MiniQ3G]driver only.one文档中的LCD部分,在此十分感谢老范的无私奉献!也十分感谢同事冯**在实际操作中给予的指导意见。

 

一、原理图确认

 

首先通过硬件人员或SPM获取到项目的电路原理图,观察LCD部分的电路原理图,了解LCD总线接口模式。

下图为Ginger3G LCD部分的电路示意图:

 

 

二、LCD型号确认

 

1. 询问采购或SPM索要项目器件采购单,找到LCD的型号、规格及物料编号。

Ginger 3g purchasing plan v1.3.xlsx内容如下图:

P/N:部件编号;                  Desc:器件描述;                   Supplier:器件供应商

由上表可知,本项目所使用的LCDTDT公司的1.77"LCD,分辨率为128x160,使用的驱动ICST7735S

 

2. 根据上面查到的部件编号,寻找其他使用该器件的项目,然后参照其他项目来移植LCD驱动代码。

可以找SPM要一份Components list used on each project-20130829.xlsx文档,这样查找起来十分方便,查找结果如下图:

由上表可知,使用该款LCD的项目有B12, B12 lite, Twist, Tiger L,  Mambo,其中MamboMT6276平台的,符合本项目平台要求,所以参考Mambo项目进行LCD的移植工作。

 

三、拷贝驱动文件

 

1. 拷贝[Mambo Project]\mtk_6276_11a\custom\drv\LCD\JRD76W_11A_LCM目录下的LCD_C_ST7735S_TDT.cLCD_SW_H_ST7735S_TDT.h文件到

Ginger3G_Drv_Only\mtk_6276_11a\custom\drv\LCD\JRD76_11A_GEMINI_LCM目录下。

 

2. 将新增文件添加到ClearCase中:

1)对上级目录文件夹JRD76_11A_GEMINI_LCM执行“CheckOut”操作;

2)对LCD_C_ST7735S_TDT.cLCD_SW_H_ST7735S_TDT.h执行“Add to Source Control...”操作,同时勾选上“Checkout after adding to source control”选项,以便后面编辑修改。

 

四、修改驱动代码

 

1. 修改lcd.c中的LCD_FunConfig()函数:

 

2. 确认lcd_sw.h中,LCD使用8BIT总线模式,关闭DMA模式:

 

 

五、修改makefile

 

1. custom.mak中添加如下字段:

 

 

2. fota.mak中添加如下字段:

 

 

六、修改scatterfile

 

修改scatJRD76_11A_GEMINI_FOTA.txt文件。

找到PRIMARY_CACHED_EXTSRAM执行域,添加如下RW字段:

 

 

找到ROM1执行域,添加如下RO字段:

 

 

 

七、编译链接

 

对工程执行rmake,编译结果如下:

发生链接错误,打开Ginger3G_Drv_Only\mtk_6276_11a\build\JRD76_11A_GEMINI目录下的fota.log文件(注意:不是log文件夹下的fota.log文件哦!),定位到错误信息:

 

由此可知,变量LCD_ID没有定义就被LCD_C_ST7735S_TDT.c文件引用,因而造成链接错误。

 

 

因此在lcd.c中定义变量LCD_ID:

 

重新rmake custom模块,编译链接成功:

 

就此DriverOnlyLCD移植步骤完毕,需要等到工厂那边测试了改版本并反馈信息后,才能进一步对该驱动进行调试优化。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

何小龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值