JPEG 图像解码器在STM32上的应用研究
2013-08-27覃松李冰
覃松,李冰
(广西师范大学电子工程学院,桂林541004)
引 言
一幅图像如果按照原始的数据存储和显示,必定会耗费很大的设备内存和很长的时间。为了减少图像在电子设备中所占的容量,需要对图像进行压缩。JPEG 标准在保证图像质量的情况下具有高压缩率、图像占用容量小、解码简单、代码量小等特点。目前它主要应用在DSP、FPGA、ARM9等高速处理器上,这些处理器成本都比较高。
本文研究了一种在保证解码速度和同等图像质量的情况下,采用更低成本的ARM 处理器STM32F103ZET6对图像进行解码的方案。为了节省片内存储资源,利用SD卡存储图像,对图像进行分块解码,并且边解码边在2.8寸TFT 屏幕显示。
1 总体设计方案
硬件方面,由 4 个部分构成:解码芯片STM32F103ZET6、SD 卡电路、驱动芯片HX8347控制的2.8寸TFT 显示屏幕、键盘输入控制电路。其设计框图如图1所示。软件方面,主要由4个功能模块构成:SD 卡的驱动及FatFS 文件系统程序、JPEG 解码算法程序、TFT 屏幕的显示驱动程序、按键控制程序。
系统工作过程:首先把JPEG 图像存储在高速SD 卡中,利用STM32F103ZET6自带的SD卡接口,通过SD 卡模式读取SD卡中的图像;然后,利用JPEG 解码算法解码出格式为RGB565的数据;最后,显示在TFT 上。另外,用3个按键作为输入,功能分别为复位、向后翻一张图片和向前翻一张图片。

图1 系统硬件方框图
1.1 硬件设计
1.1.1 STM32F103VET6处理器简介
STM32F103VET6是内核为32位的Cortex-M3处理器,最高工作频率为72 MHz,具有512KB的闪存程序存储器和64 KB 的SRAM。内核具有突出的中断处理能力,其实时性高,系统存储要求低,并且功耗和成本很低,所以具有广泛的应用领域。……
