基于嵌入式Linux的视频采集系统6----视频在LCD上的实时显示

本文来自:
http://blog.chinaunix.net/uid-23093301-id-86395.html

MiniGUI的移植

● MiniGUI图形支持库的组成

本课题选用MiniGUI的版本为libMiniGUI-1.6.10 。

编译完成后生成三个库:它们分别是libMiniGUI、libmgext以及libvcongui。

1) libMiniGUI 为MiniGUI的核心库,提供标准控件。

2) libmgext 是MiniGUI 的扩展库,提供“文件打开”、“颜色选择”等高级对话框等;

3)  libvcongui 支持虚拟控制台窗口的函数库。

● 移植资源文件

本课题选用MiniGUI的版本为MiniGUI-res-1.6.10

资源文件包括基本字体、图标、位图和鼠标光标。

●  MiniGUI所依赖函数库

MiniGUI需要交叉编译其依赖的以下函数库:

1) zlib库,zlib是提供数据压缩用的函式库,zlib使用DEFLATE算法。

2) png库,png 图片支持库。

3) jpeg库,jpeg 图片支持库

4) ttf库,TrueType 字体的支持库

编译libMiniGUI,需要添加必须的交叉编译选项。

./configure

--prefix=/root/MiniGUI/arm/target \

--host=arm-linux \

--target=arm-linux \

--build=i386-linux \

--with-osname=linux \

--with-style=classic \

--with-targetname=fbcon \

--enable-autoial \

--enable-rbf16 \

--disable-vbfsupport \

CC=arm-linux-gcc

# make

# make install

● 复制MiniGUI相关文件到嵌入式系统根文件系统

主要是将MiniGUI库文件、资源文件、和MiniGUI所依赖的函数库复制到指定的嵌入式系统根文件系统目录。

● 复制和修改MiniGUI的配置文件

MiniGUI的配置文件为MiniGUI.cfg ,一般将其此文件放置到/etc目录下。需要根据我们的开发板进行修改,主要是设置图形设备引擎、输入设备及图形设备大小和显示位数。需要修改的字段如下:

1)  gal_engine=fbcon 设置图形引擎为帧缓冲控制台fbcon

2)ial_engine=cosole 设置输入引擎为控制台

3)mdev=dummy 不需要鼠标输入

4)Defaultmode选项用于设置显示器分辨率,由于本课题选用的是3.5 寸液晶LCD,故设置为:Defaultmode=320x240-16bpp。

3.1.2 基于MiniGUI的显示模块实现

MiniGUI的显示模块初始化一个320*240的窗口,然后创建一个环形缓冲区,当缓冲区有数据时,MiniGUI立即将其显示,如果缓冲区无视频数据,则MiniGUI模块阻塞在条件变量上,当有图像数据到达时,条件变量被激活,MiniGUI立即将视频图像显示到LCD上。

MiniGUI显示模块程序流程图所示:



  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值