本文转载自:http://blog.csdn.net/tuwenqi2013/article/details/60583735

版权声明:本文为博主原创文章,博主欢迎各位转载。

一、logo的调用流程

|-->board_init_r: < board.c>

|--> stdio_init: <common/stdio.c>

|--> drv_lcd_init:<common/lcd.c>

|--> lcd_init: <common/lcd.c>

|--> lcd_ctrl_init: drivers/video/<与硬件相关 >

|-->lcd_clear();

|-->lcd_logo()<显示图片>

|-->bitmap_plot(0,85);<将图片读取到frambuffer>

二、读取bitmap写入frambuffer

1、  首先将图片数组的首地址赋给bmap。

  1. bmap = &bmp_logo_bitmap[0];

2、  然后将图片数组数据写入frambuffer,然后显示

  1. if(NBITS(panel_info.vl_bpix) == 16){
  2. u16 col16;
  3. fb16 = (ushort *)fb;
  4. for (i = 0; i < BMP_LOGO_HEIGHT; ++i) {
  5. for (j = 0; j < BMP_LOGO_WIDTH; j++) {
  6. col16 = bmp_logo_palette[(bmap[j]-16)];
  7. fb16[j] =
  8. ((col16 & 0x000F) << 1) |
  9. ((col16 & 0x00F0) << 3) |
  10. ((col16 & 0x0F00) << 4);
  11. }
  12. bmap += BMP_LOGO_WIDTH;
  13. fb16 += panel_info.vl_col;
  14. }
  15. }

备注:

1、图片转化函数:\tools\bmp-logo.c  将bmp文件转化为二维数组bmp_logo_bitmap[](\include\bmp_logo_data.h)

2、通过makefile查到驱动文件\u-boot\drivers\video\jz_lcd\lcd_panel/truly_tft240240_2_e.c

3、  改变图片显示的首地址:比如第85行开始显示

 bitmap_plot(0, 85);--------------   common\lcd.c

4、Include\Bmp_logo.h 定义图片大小也是\tools\bmp-logo.c生成的。

  1. #defineBMP_LOGO_WIDTH                   240
  2. #defineBMP_LOGO_HEIGHT                 70
  3. #define BMP_LOGO_COLORS               240
  4. #defineBMP_LOGO_OFFSET                 16

5、Include\Bmp_logo_data.h保存图片的二维数组,由\tools\bmp-logo.c生成的。

uboot之logo显示【转】的更多相关文章

  1. Android 不同阶段 Logo 显示

    /********************************************************************* * Android 不同阶段 Logo 显示 * 说明: ...

  2. u-boot支持LCD显示(基于TQ2440)【转】

    本文转载自:http://www.cnblogs.com/pengdonglin137/p/4633877.html u-boot支持LCD显示(基于TQ2440)   阅读目录(Content) 平 ...

  3. linux内核开机logo显示调试

    要使内核支持开机logo显示需要配置内核 配置如下: make menuconfig: Device Drivers  --->     Graphics support  --->    ...

  4. u-boot支持LCD显示(基于TQ2440)

    平台简介 Linux版本:Linux-3.14 u-boot版本:u-boot-2015.04 硬件:TQ2440(内存:64MB  NandFlash:256MB) 作者:彭东林 邮箱:pengdo ...

  5. [RK3288][Android6.0] 关于uboot中logo相关知识点小结【转】

    本文转载自:http://blog.csdn.net/kris_fei/article/details/76256224 Platform: Rockchip OS: Android 6.0 Kern ...

  6. 百度地图隐藏LOGO显示

    在引入地图的页面加入下列样式即可隐藏百度地图左下角的LOGO   <style type="text/css">   .anchorBL{display:none;} ...

  7. RK3288 st7703 mipi屏指令过长,程序跑飞

    本文为博主原创文章,转载请注明出处:https://www.cnblogs.com/lialong1st/p/11218433.html CPU:RK3288 系统:Android 5.1 调试 mi ...

  8. mipi屏在内核可以显示logo但是u-boot无法显示的问题【转】

    本文转载自:http://blog.csdn.net/fulinus/article/details/45071721 平台:瑞芯的rk3288 u-boot版本:u-boot-2014.10 ker ...

  9. [RK3288][Android6.0] 调试笔记 --- 移除uboot和kernel开机logo【转】

    本文转载自:http://blog.csdn.net/kris_fei/article/details/71600690 Platform: RockchipOS: Android 6.0Kernel ...

随机推荐

  1. shell细节决定高度

    1.文件测试操作符 -f[file]:文件存在且为普通文件则为真; -d[directory]:文件存在且为目录文件则为真; -s[size]:文件存在且为文件大小不为0则为真; -e[exist]: ...

  2. luogu P1057 传球游戏

    题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同 ...

  3. Java 正则表达式的使用

    Java 正则表达式的使用 java.util.regex 包主要包括以下三个类: Pattern 类: pattern 对象是一个正则表达式的编译表示.Pattern 类没有公共构造方法.要创建一个 ...

  4. 使用和不使用navigationbar分别处理显示和返回页面

    不使用navigationbar的情况下 AnnounceViewController *pushView = [[AnnounceViewController alloc]init];pushVie ...

  5. 邁向IT專家成功之路的三十則鐵律 鐵律十七:IT人休閒之道-清心

    現代人的休閒生活可說是兩類極端的表現,一類是整天待在家裡當個超級宅男宅女,假日走最遠的路就是附近三百公尺內的泡沫紅茶店.另一類則是抱著及時享樂心態的美女與型男,整天趴趴走把辛苦賺來的錢都拿去玩樂.美食 ...

  6. windows10系统下安装nginx的安装步骤

    打开nginx的官网:http://nginx.org/,下载最新的稳定版本.   下载完成后,解压到你想要解压的文件路径中,我解压到了D盘中,并把文件名改为nginx:进入文件内,打开nginx.e ...

  7. 百科知识 kux文件如何打开

    即使是官方自带的浏览器也无法打开   你可以直接复制文件名   然后在百度里搜即可   你自己下载的东西还是能转码的      

  8. redis 在我做的容器中的配置路劲

    配置 /etc/redis/redis.conf 数据库位置 /var/lib/redis/dump.rdb

  9. 最好的10个移动 Web 应用程序开发框架

    在近期几年里,移动互联网快速发展.市场潜力巨大. 继计算机.互联网之后,移动互联网正掀起第三次信息技术革命的浪潮,新技术.新应用不断涌现.今天这篇文章向大家推荐10大优秀的移动Web开发框架.帮助开发 ...

  10. Scala 基础新手教程

    1.前言 近期在參加Hadoop和Spark培训.须要使用Scala,自学了一下作为入门.这里作一个记录. 2.下载 1) 在scala官网下载.地址: http://www.scala-lang.o ...