zoukankan      html  css  js  c++  java
  • Barebox for Tiny6410(LCD驱动移植)

    一、目的

           熟悉Barebox的Frame buffer框架、LCD驱动的移植和测试命令的编写。

    二、主要内容

    1.1 为Barebox移植基于Tiny6410的LCD驱动。

    1.2 编写lcd命令测试LCD驱动。

    1.3 编写rz命令,使得支持通过串口下载文件到内存。

    1.4 增加支持直接对内存中的图片数据渲染到LCD上(Barebox本身只支持对图片文件进行渲染)。

    三、开发环境

    主机:WIN7 32位旗舰版

    虚拟机:VMware Workstation 7.0

    Linux:Ubuntu 12.04

    编译器:arm-linux-gcc-4.5.1-v6-vfp-20101103

    开发板:Tiny6410(256M Nand Flash,128M DDR

    四、步骤

    41 下载BareBox最新版本

    http://www.barebox.org/download/

    我下载的是barebox-2013.05.0.tar.bz2这个版本。

    42 Barebox打补丁

    把barebox-1.3.patch文件放到和barebox-2013.05.0.tar.bz2文件的同一个目录下。

    解压barebox-2013.05.0.tar.bz2

    tar jxf barebox-2013.05.0.tar.bz2

    进入barebox源码根目录

    cd barebox-2013.05.0

    打补丁

    patch -p1 < ../barebox-1.4.1.patch

    43 使用已经配置好的文件

    cp tiny6410_defconfig .config

    4.4 编译

           执行make,即可在源码根目录下生成barebox.bin文件,将它烧写到开发板的Nand Flash中,然后从Nand Flash启动。

    45 测试

             Barebox启动后,通过ls /dev命令可以看到LCD设备的设备文件名为fb0,如下图中的红色框所示。

          输入rz -s 210000(这里我指定的是210000字节,比实际文件大就可以了)命令,然后选择barebox_logo.png文件,将它发送给串口。发送过程开始后会显示下载到内存的地址,如下图蓝色框中的download addr: 1455722456,发送完成后会显示文件的实际大小,如下图蓝色框中的receive size: 208620 bytes。下载地址和文件大小是两个重要的参数,下面的lcd命令将会用到它们。

    输入lcd -d -a 1455722456 -s 208620 /dev/fb0命令后,如上图紫色框,即可在LCD上显示出Barebox的Logo,如下图所示。其中-d表示draw picture;-a表示图片在内存中的地址;-s表示图片的实际大小。

     输入lcd -p /dev/fb0可以查看关于LCD驱动的一些参数设置,如下图:

    输入lcd -b xx /dev/fb0可以将LCD清屏成某一种颜色,xx表示颜色值,如下图:

    效果:

    五、源代码分析

            所有修改、增加的源代码都在patch文件中。暂且不分析,感兴趣的可以自己先行下载研究研究。

    patch文件下载:

     https://files.cnblogs.com/lknlfy/barebox-1.4.1.patch.rar

    Logo图片下载

     https://files.cnblogs.com/lknlfy/barebox_logo.rar

  • 相关阅读:
    linux ftp启用和停用及vsftpd安装 ssh 启用和停用命令及ssh的安装
    linux 网络命令
    printf的使用
    Shell echo命令
    shell脚本之文件操作
    shell脚本之字符串运算的使用
    linux的计划任务操作
    系统操作有关的命令
    shell脚本之 operater.sh 算术运算符;比较运算符;布尔运算符;逻辑与或非运算符;字符串运算符的使用
    shell脚本的参数传递使用
  • 原文地址:https://www.cnblogs.com/lknlfy/p/3114071.html
Copyright © 2011-2022 走看看