嵌入式基本图形库设计及图形用户界面实现_论文


时间: 2021-07-03 22:59:01 人气: 20 评论: 0

摘要 在互联网时代人们对手持终端设备与来越依赖,人们随时随地用手持设备阅读娱乐,这就促使嵌入式技术高速发展, 嵌入式技术已经成为时下人们关注的焦点,嵌入式系统的应用得到很大拓展。随着嵌入式系统的图形用户界面越来越成熟,人们对图形的显示逼真度要求越来越苛刻,图形的显示逼真度离不开图形库的支持。本文阐述的是使用嵌入式Linux系统的帧缓冲技术,调用编译图片的静、动态库从而设计出一个基本的图形库,实现的图形库的具备的功能类似Windows系统中包含照片查看器的功能。系统要实现的大致功能是:识别图片文件格式,读取存储在磁盘上的BMP、JPEG、GIF、PNG格式图像文件的信息,并利用帧缓冲技术将图片在嵌入式设备上显示,并且实现这4种格式图片的放缩、旋转等功能。设计是C语言在Linux系统中的应用,利用交叉编译技术,将最终程序移植到ARM开发板上进行调试。本论文的重点在于帧缓冲技术,帧缓冲技术由Framebuffer设备提供,它可对显卡进行操作,将数据写入显存的某个位置,从而实现显示图片的功能。


关键词: Framebuffer;嵌入式;图形库;Linux;图片格式

研究内容

(1)了解图形格式:想要实现嵌入式通用图形库的功能,首先要了解不同格式的图片存储方式,常见的图片格式有四种,分别是BMP、JPEG、GIF和PNG。不同的图形格式其头文件、图片的压缩算法、数据信息等方面都各不相同,其次不同位数图片的格式也有所区别。所以想要实现通用图形库的设计以及实现,就必须要了解各种格式的图片文件的存储结构以及压缩方法。

(2)framebuffer: Linux系统要想显示图形图片就要调用抽象接口framebuffer。帧缓冲技术由Framebuffer设备提供,它作为与显卡交互的媒介,数据被写入到显存的特定位置,从而实现某个点的功能显示,再将这些点连起来从而形成点、线、面;

(3)交叉编译环境:开发图形库的最终目标是将其一直到开发板上成功运行。将开发的图形库程序移植到开发板上需要使用GCC交叉编译程序,把编译好的程序通过FTP服务器上传到嵌入式开发板上进行测试使用。


1绪论 5

1.1课题背景 5

1.2 研究内容 5

1.3 图形库功能 6

2设计方案选择 7

2.1开发环境搭建 7

2.2系统开发思路 9

2.3 Framebuffer的原理与开启 9

3系统整体设计 9

4系统详细设计及模块实现 12

4.1  BMP格式图形模块的设计与实现 12

4.1.1 BMP图像文件简介 12

4.1.2 BMP格式图片原理 12

4.1.3 BMP模块实现 15

4.2 JPEG格式图形模块的设计与实现 17

4.2.1 JPEG图像文件简介 17

4.2.2 JPEG格式图片原理 17

4.2.3 JPEG模块设计 17

4.3 PNG格式图形模块的设计与实现 19

4.3.1 PNG图像文件简介 19

4.3.2 PNG格式图片原理 19

4.3.3  PNG模块实现 22

4.4 GIF格式图形模块的设计与实现 24

4.3.1 GIF图像文件简介 24

4.3.2 GIF格式图片原理 24

4.3.3 GIF模块实现 28

5系统测试 30

6结论 37

7致谢 38


评论
188083800