查看: 21365|回复: 8

[资料] 基于树莓派raspberry: 移植 2.4寸TFT显示屏以及源码分析

[复制链接]
  • TA的每日心情
    开心
    2014-1-17 23:05
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2013-12-22 12:29:07 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 xinxincaijq 于 2013-12-23 09:10 编辑

    有了树莓派,但是没有hdmi显示器,这是个蛋疼的事,但是树莓派就是树莓派,他的GPIO管脚就是我们发挥想象力的地方.可以通过它的GPIO管脚来驱动一个显示屏.GOOGLE了一下,这个项目有个老外做好了,而且提供了patch文件,很容易就能移植到内核里面去.这里我就在这里记录一下移植这个TFT驱动的过程,然后试着分析这个老外提供的PATCH文件,希望能从中提高自己的能力,也能够熟悉一下内核的移植.        
            环境: ubuntu 13.10 (交叉编译按前面的文章设置)

            TFT :  2.4寸 12864接口  ILI9325主控 (当时叉宝买来给AVR用的)
    个人原创,转载请注明原文出处:
           http://blog.csdn.net/embbnux/article/details/17394793

    参考文章:
             http://spritesmods.com/?art=rpi_arcade&page=2

             http://www.blogjava.net/baicker/archive/2012/12/18/392829.html
    首先上张图:
                          20131218163153734.jpg
                          20131218163314531.jpg

    一  首先是接线
          用的是P1口:
           20131218155419156.jpg

           TFT与P1连线:
           20131218155640953.jpg
        这个上面的VCC接的是3.3v,因为我的屏幕接口是5v,所以我给改成5v了.


    二  添加TFT驱动到内核
         编译内核的环境,就按之前的文章设置,这里不再复述.
         用的是spritesmods.com/?art=rpi_arcade&page=2提供的diff文件
         原下载链接:  ili9325_gpio_driver_rpi.diff
         也可以到我的资源下载:
               http://download.csdn.net/detail/canyue102/6735059

          这个补丁是基于3.6内核的,不同版本的内核可能不一样,自己改一下就好了.
          首先把 该diff文件放到内核根目录下,终端进去该目录:
          
          patch -p1 < ili9325_gpio_driver_rpi.diff  
          然后TFT内核源码就被添加到内核去了.  
            make menuconfig      
           可以在device driver >> graphics support >> support for frame buffer 下看到ILI9325选项,Y选中它就把它添加进内核.另外的BCM2708 framebuffer support就是原来树莓派自带的HDMI和AV显示
    .


             make      
          就编译好了,把它按上一篇的方法放到SD卡上去运行,就可以了
    .
    三  测试
         进入ssh进入树莓派
       
          ls /dev/fb*  
         可以看到有fb0 和 fb1,  fb1 就是我的TFT.测试:

         cat /dev/urandom > /dev/fb1  
    如果屏幕出现花屏那就是成功了. 那要如何树莓派默认显示在tft上:
        在make menuconfig里面把刚才说到的BCM2708 framebuffer support取消掉就可以了,不过就不支持HDMI了
    三  源文件分析
        查看该diff文件可以看出作者对内核做了四处改动
    代码较多.详见原文博客
      
    http://blog.csdn.net/embbnux/article/details/17394793


    四  有了显示屏那就做个摄像头显示的小项目
         我正好有一个USB接口的UVC驱动的摄像头,树莓派兼容的,其他驱动芯片的驱动只要在make menuconfig里面找到相应选项就可以了.
         插上usb摄像头,可以看到/dev下多了video0文件,这个就是摄像头了.
        tft上显示摄像头的图像:
           20131218165510203.jpg




    回复

    使用道具 举报

  • TA的每日心情
    开心
    2014-1-17 23:05
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]偶尔看看II

     楼主| 发表于 2013-12-22 19:15:01 | 显示全部楼层
    wudianjun2001 发表于 2013-12-22 18:43
    很不错哦。。。

    没有HDMI显示器只能这样
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-8-15 09:30
  • 签到天数: 162 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2013-12-23 09:11:00 | 显示全部楼层
    很好的教程,赞一个!!!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2014-1-17 23:05
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]偶尔看看II

     楼主| 发表于 2013-12-23 17:16:37 | 显示全部楼层
    haothree 发表于 2013-12-23 09:11
    很好的教程,赞一个!!!

    谢了..........
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2013-3-11 11:17
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2013-12-26 05:34:12 | 显示全部楼层
    这个不错!!!!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-4-2 16:02
  • 签到天数: 257 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2013-12-26 10:49:59 | 显示全部楼层
    太NX了,我刚好也有个IL9325兼容的屏幕,OTM3225的IC,用上xinxin那里借的树莓派搞一下,这样就好玩啦,不用弄大的显示器了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-10-9 10:25
  • 签到天数: 886 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2013-12-27 19:43:04 | 显示全部楼层
    什么时候搞一个8080接口的就美了!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-2-5 16:14
  • 签到天数: 518 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2014-1-2 15:48:12 | 显示全部楼层
    要是能整出spi接口的,那就爽歪歪了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2016-10-17 12:07
  • 签到天数: 306 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2014-11-5 17:29:37 | 显示全部楼层
    mark.............................
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-11-19 15:26 , Processed in 0.198282 second(s), 31 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.