STM32F429自带LCD驱动器,这一具有功能给我等纠结于屏幕驱动的程序员带来了很大的福音。有经验的读者一定有过这样的经历,用FSMC驱动带由控制器的屏幕时候,一旦驱动芯片更换,则需要重新针对此驱动芯片做寄存器配置等等,一系列繁琐的操作。但是,如果MCU自带LCD驱动器,情况就不一样了,特别是加载了STemwin之后,不同厂家屏幕,只要其分辨率一样,则可以直接替换,最多是触摸屏的芯片不一样,做些触摸驱动。如果分辨率不同,则只需要更改分辨率就可以了,其硬件接口是一样的。

本文是从野火的5寸800*480分辨率屏幕程序移植到原子哥的apollo的7寸1024*600分辨率上,用429驱动这么高分辨率是件比较容易兴奋的事情,由于底层驱动方式不同,直接影响刷屏速度,野火的底层驱动写得还算是比较完善,就是在STemwin上没直接使用开放触摸屏接口。

首先,查看下野火的开发板上触摸屏引脚和APOLLO板区别,经过研究发现,其管脚基本通用,部分管脚重定义到别的引脚,软件上只需要做简单的条件编译即可,如下:

另外值得注意的事,通过比较LCD的管脚定义,很明显,APOLLO硬件上只保留了RGB565引脚,所以野火程序驱动上得从RGB888改为RGB565,其主要代码集中在文件GUIDRV_wf.c中,直接替换。

                                           

其次,看下两块板子之间SDRAM引脚区别,做过触摸屏显示的童鞋肯定知道,屏幕显示的缓存,是靠外部的SDRAM,如果SDRAM驱动不好,则触摸屏肯定没法使用。比较之后,因为都是SDRAM 不管是ISSI的还是Winbond的,其接口定义都是一模一样。唯一一点区别,之前用的野火的程序使用的是4M大小,而驱动1024*600分辨率,这个大小不够,得升级到8M,更改下代码,同时更改下管脚映射(跟LCD管脚方法一样,不赘述)。

行地址宽度改为9,列地址宽度改为13。

野火的SDRAM配置在bank2上,其起始地址为:0xD0000000,而APOLLO起始地址为:0xC0000000,程序上做出相应的更改;

另外,因为增大了SDRAM,在GUIConf.c文件中也做相应的堆栈更改

通过以上两个措施,屏幕基本可以显示,其效果如下,只显示一半。

网上该情况的资料比较少,也很难发现原因,原因可能有几个方面:SDRAM只用了现存的一半,导致另一半没刷出来;屏幕驱动有问题;

1) 通过对SDRAM全部8M数据,读取写入测试,无问题,说明不是SDRAM导致该问题发生;

2)屏幕显示方式不对,RGB565没有设置好,经过仔细盘查,RGB设置无问题;

3)屏幕的时序方式可能需要更改,将野火的时序方式换成APOLLO,申请的效果出现了,可以整面刷屏了。

自此,可以说移植成功了。

最新文章

  1. javascript小技巧
  2. USB驱动开发大全【转】
  3. Java读取文件最后两行
  4. 几种linux脚本的简单执行方法
  5. TFS 改服务器IP 域名 端口方法
  6. 数据库hang住如何收集信息
  7. 夺命雷公狗ThinkPHP项目之----企业网站24之网站前台获取当前栏目和顶级栏目
  8. 文件/图片,批量上传【神器】--WebUploader
  9. Java创建线程的第二种方式:实现runable接口
  10. GitHub+hexo to Blog
  11. Bellman 算法
  12. Solrcloud,tomcat,外部zookeeper配置
  13. angularjs的懒加载
  14. SQL优化及注意事项
  15. TTL转MIPI DSI芯片方案TC358778XBG
  16. configparser 练习
  17. restful架构风格设计准则(二)以资源为中心,一个url
  18. Python安装xlrd和xlwt的步骤以及使用报错的解决方法
  19. python----数据驱动ddt的使用
  20. Python:字符串格式化

热门文章

  1. Java MyBatis 插入数据库返回主键
  2. 用scikit-learn学习主成分分析(PCA)
  3. 前端学Markdown
  4. .NET Core的日志[3]:将日志写入Debug窗口
  5. Carousel 旋转画廊特效的疑难杂症
  6. 从零开始编写自己的C#框架(28)——建模、架构与框架
  7. JDBC Tutorials: Commit or Rollback transaction in finally block
  8. Android中Fragment和ViewPager那点事儿(仿微信APP)
  9. Linux基础介绍【第六篇】
  10. 一键生成APP官网