电子说
1 案例说明
本次操作以 TFT LCD(主屏) + CVBS OUT(副屏)的组合方案为例,演示双屏异显功能。
multi_screen_extend 案例通过指定参数在不同类型的显示屏上显示一帧图像,具体功能
如下:
(1) 通过 ioctl 函数操作"/dev/disp"节点,配置显示输出类型和模式。
(2) 在显示屏创建一个图层。
(3) 将图像数据地址绑定至对应图层。
(4) 打开待显示的图层。
(5) 程序退出时,关闭图层。
2 案例测试
请通过 FFC 软排线将创龙科技 TL070A LCD 显示屏与评估板 TFT LCD(CON20)接口连接,
使用 AV 转 VGA 转换器连接评估板 CVBS OUT 接口和 VGA 显示屏,硬件连接如下图所示。
评估板启动,将 产品 资 料 “ 4- 软 件 资料 LinuxBoot_packageAA_BB ”目录下
boot_package_tft_lcd.fex 镜像拷贝至评估板文件系统 root 用户目录下,该镜像同时支持
TFT LCD 和 CVBS OUT 显示输出,且默认配置 TFT LCD 为主屏。如需测试其他双屏异显组
合方案,请替换为对应的 boot_package_xxx.fex 文件。
执行如下命令将其固化至 Linux 系统启动卡,重启即可生效。系统重启后,评估板 TFT
LCD 显示屏将默认显示 Qt 界面。如需固化至 eMMC 设备,请将设备节点修改为 mmcblk0。
Target#
dd if=boot_package_tft_lcd.fex of=/dev/mmcblk1 seek=32800
Target#
dd if=boot_package_tft_lcd.fex of=/dev/mmcblk1 seek=24576
Target#
sync
Target#
reboot
请将案例 bin 目录下的 multi_screen_extend 可执行程序拷贝至评估板文件系统 root
目录下,执行如下命令,查询程序参数。
Target#
./multi_screen_extend --help
参数解析:
-s:指定显示通道(0 或 1)。
-t:指定输出模式,支持多种模式。
-p:显示图片路径。
-w:显示图片宽度。
-h:显示图片高度。
-v:版本信息参数。
--help:帮助信息参数。
执行如下命令,在 CVBS OUT(副显)输出显示图像。
Target#
./multi_screen_extend -s 1 -t cvbs -p ./test.bmp -w 640 -h 480
最终将在 VGA 显示屏显示图像,同时 TFT LCD 显示屏显示默认 Qt 界面,实现双屏异
显功能。
备注:当前 CVBS OUT 输出图像存在花屏问题,解决方案请与我司联系。
3 案例编译
将案例 src 源码目录拷贝至 Ubuntu 工作目录下,进入源码目录,执行如下命令修改
Makefile 文件,将 LICHEE_DIR 路径修改为 LinuxSDK 开发包实际路径。
Host# vi Makefile
修改内容如下:
LICHEE_DIR := /home/tronlong/T507/LinuxSDK
//指定 LinuxSDK 开发包的实际路径
修改完成,执行如下命令进行案例编译,编译完成后将在当前路径下生成可执行程序。
Host# make
4 关键代码
(1) 根据命令行参数选择在主屏或副屏显示图像。
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !