LCD RGB SD卡旋转融合等demo

[English]

1、功能概述

从SD卡中读取不同像素的图片进行旋转,裁剪,压缩,融合等功能,并显示RGB屏上

2、代码路径

  • Demo 涉及的模块AP接口的详细说明请参考同网页: /api-reference/multi_media/bk_display.html

  • Demo 具体的示例代码详见: /components/demos/media/lcd/lcd_rgb/lcd_rgb_sdcard_test.c

3、cli命令简介

demo支持的命令如下表:

Command

Description

lcd_rgb_init=clk_div,yuv_mode

lcd显示配置的参数

sdcard_read_to_mem=picture_file,mem_addr

将sd卡图片写入内存

lcd_rgb_sdcard_test=anticlockwise_rotate,272,480

将图片逆旋转90度显示

lcd_rgb_sdcard_test=rgb_blend

前景背景融合

lcd_rgb_sdcard_test=display

lcd显示处理后的数据

demo运行依赖的宏配置:

Name

Description

File

value

CCONFIG_LCD

配置LCD功能

\middleware\soc\bk7256\bk7256.defconfig

y

CONFIG_LCD_TEST

LCD DEMO使能

\middleware\soc\bk7256\bk7256.defconfig

y

4、演示介绍

旋转demo执行的步骤如下:

1.保存图片数据到SD卡
  • 保存一张w*h 272*480名为“file_name”的一张图片

  • 目前需保存的图片的数据支持RGB565和YUV数据,后续会补充支持jpeg数据。

2.初始化 RGB LCD
  • Uart发送AT指令,如果显示的为RGB565数据 ,发送命令 lcd_rgb_init=9,0

  • 如果显示的为yuv数据 ,发送命令 lcd_rgb_init=9,1

  • 参数2表示的输入LCD显示的数据类型0-RGB565, 1-YUYV,2-UYVY,3-YYUV,4-UVYY, 5-VUYY

2.挂载TF卡
  • 挂载TF卡 fatfstest M 1

4.将SD卡中的图片写入内存
  • 写入图片 sdcard_read_to_mem=file_name,0x60200000

5.旋转显示
  • 开始旋转 lcd_rgb_sdcard_test=anticlockwise_rotate,272,480

  • 屏幕显示 lcd_rgb_sdcard_test=display

融合demo执行的步骤如下:

1.保存图片数据到SD卡
  • 保存一张w*h 480*272名为“file_bgimg”的一张背景图片,图片格式为YUYV

  • 保存一张w*h 120*56名为“file_fgimg”的一张前景图片,图片格式为RGB565

2.初始化 RGB LCD
  • 如果显示的为RGB565数据 ,发送命令 lcd_rgb_init=9,1

2.挂载TF卡
  • 挂载TF卡 fatfstest M 1

4.将SD卡中的图片写入内存
  • 写入背景图片 sdcard_read_to_mem=file_bgimg,0x60000000

  • 写入前景图片 sdcard_read_to_mem=file_fgimg,0x60200000

5.融合显示
  • 开始融合 lcd_rgb_sdcard_test=yuv_blend

  • 屏幕显示 lcd_rgb_sdcard_test=display

备注

  • 1.该case只支持在cpu0上,因为CPU1没有SDcard 驱动

  • 2.该case目前占用较多PSRAM,请确保测试中没有其他占用相同PSRAM的case同时测试。