下面以配置 HD0 上 VGA +DHMI 1080p@60 的输出, SD 上 CVBS PAL 输出为例进行介绍



配置 jpeg 解码参数
​setenv jpeg_addr 0x94000000;​​​​setenv jpeg_size 0xb85f9;​​​​setenv vobuf 0x94000000;​​​​saveenv​



解码 JPEG 到内存
​decjpg​



配置 HD0 设备启动
​startvo 0 36 10​



配置 SD 设备启动
startvo 2 1 0



配置图形层 0 启动
startgx 0 0x94000000 3840 0 0 1920 1080



配置图形层 2 启动
startgx 2 0x94000000 3840 0 0 720 576



关闭图形层 0
stopgx 0



其他



执行擦除logo命令
​erase 0x34060000 +0x10000​



上传logo图片
​tftp 0x34060000 logo.jpg​



设置图片大小的启动变量
A:获取图片大小:在图片右键点击属性
b:打开计算器,计算18691的十六进制值



设置环境变量,
使用命令​​setenv jpeg_size <0x值>​



sa 保存即可



logo图片生成

  1. 选择格式为jpg的图片,图片大小为12801024,形式为rgb,8位。并且命名为logo.jpg,用Bin2C.exe转换为.c的文件logo.c,将logo.c放置uboot的driver/dec目录下,其他uboot源码改动请看driver/dec以及common目录下的main.c。具体如何修改源码,请参考如下参数设置(已经在项目中使用)
    setenv jpeg_addr 0x82000000​setenv jpeg_size 0x100000​
    ​setenv vobuf 0x8ff00000​
    ​tftp 0x82000000 logo.jpg​
    ​decjpg​
    ​setvobg 0 0x0​
    ​startvo 0 52 15​
    ​startgx 0 0x8ff00000 2560 0 0 1280 1024​
    注:当前只支持jpg图片并且必须为8位的rgb,图片大小也必须为12801024。否则uboot无法为图片解码