admin管理员组文章数量:1536023
2024年6月1日发(作者:)
龙源期刊网
基于stm32单片机的电子相册
作者:张志成 王鹏飞
来源:《电子技术与软件工程》2016年第04期
摘 要 电子相册是结合了液晶显示技术、电视技术和数字存储技术的电子产品。它彻底改
变了传统纸质静态照片的单一显示方式,成为一款很受欢迎的新型个性电子产品。本论文设计
了一款电子相册,STM32控制模块用来操作SD卡的读写,驱动LCD液晶屏的显示;SD卡用
做图片资料的储存;LCD 液晶屏进行图片的显示。该设计通过CPU对SD卡中BMP、GIF、
JPG格式的图片进行处理,实现了由按键控制图片的切换,并以幻灯片形式在液晶屏上播放图
片的效果。
【关键词】电子相册 STM32单片机 液晶显示
1 引言
电子相册也叫做数码相框,是指可以不借助计算机能在LCD 液晶屏上显示图片的一种电
子产品。电子相册结合了数字电视技术、数字信号存储技术和LCD液晶显示技术,即将成为
最受欢迎的个性化数码产品之一。电子相册继承了相框的温情和数码的时尚,给人类的生活带
来了无穷的乐趣。鉴于电子相册广泛的用途,电子相册的开发具有重要的意义和市场价值。虽
然目前电子相册还没能普及,但随着数码照相机的普及,电子相册将成为必不可少的配套产
品,它也将会成为继电视机、计算机之后人们生活中不可或缺的第三类显示器件!本文提出了
一种基于STM32系列单片机 STM32F103RCT6的低功耗、低成本设计方案,该方案外围电路
简单,主要依靠软件实现各项功能。而STM32 更是具有价格低、自身外设丰富、实时性能
强、功耗低等特点。因此,进行基于STM32平台的电子相册的设计具有重要的实用价值和理
论意义。
2 硬件电路
本系统采用基于ARM Cortex-M3内核的STM32作为主控制器,外扩SD卡、TFT彩屏以
及按键。STM32主控模块:主要用来读取存储模块中的数据,并且驱动LCD显示。液晶显示
模块:主要用来显示BMP、JPG等格式的图片。存储模块:主要用来存放BMP、JPG等格式
的图片。按键模块:主要用来对图片进行翻页。
2.1 STM32主控模块
本设计选用的STM32系列单片机 STM32F103RCT6 ,该芯片具有256KB闪存、48KB
RAM、8个定时器、3个SPI、5个串口、1个FSMC接口以及64个通用IO口。该芯片是基于
龙源期刊网
ARM Cortex-M3内核的嵌入式处理器,其特点是高性能、低功耗、低成本。基于以上优点,
该设计采用此单片机作为主控芯片。
2.2 显示模块
本设计采用2.8英寸TFT-LCD屏作为显示模块,TFT-LCD即薄膜晶体管液晶显示器,该
显示屏具有亮度好、层次感强、颜色鲜艳、对比度高等特点,在手机、MP4等产品中得到了
广泛的应用。该显示屏采用ILI9341作为控制器,采用16位80并口与外部连接,选用触摸屏
专用芯片XPT2046,可实现触摸操作。
2.3 存储模块
SD卡(Secure Digital Memory Card)是一种基于半导体快闪记忆器的新一代记忆设备,已
经被广泛应用于许多电子产品中。例如数码相机、PDA和多媒体播放器等。SD卡体积小、重
量轻,但却有容量大、数据传输率快、移动灵活以及安全性高等特点。SD卡只能使用3.3V的
输入输出电平,故控制器一定要能够支持3.3V电压。设计中使用SPI模式,在SD卡收到复位
信号,同时CS为低电平时启用SPI模式。在SD卡初始化的时候,时钟周期最大不能超过
400KHZ。
3 系统的软件设计
该设计通过CPU对SD卡中的BMP、JPG等格式图片进行处理、读取,然后以幻灯片的
形式在TFT彩屏上显示出来,并通过按键控制图片的切换。该设计的总体流程图如图1所
示。
3.1 SD卡的读取
常用的文件系统有FAT12/16/32等,FAT12管理8M左右的空间, FAT16管理2G的空
间, FAT32管理2TB的空间。由于FAT32采用了更小的簇,这样就可以更有效的保存数据,
不会造成浪费。通常SD卡上的数据信息由MBR(有的也没有MBR)、DBR、FAT、FDT和
数据区5个部分组成。MBR称为主引导记录区, DBR为操作系统引导记录区,FAT称为文件
分配表,FDT称为文件根目录表。
SD卡在进行读写操作之前都必须首先对SD卡进行的初始化。初始化SD卡时,SPI的时
钟不能太快。在初始化之后,再提高SPI的速率。刚开始要先发送至少74个时钟信号,随后
就是写入两个命令CMD0与CMD1,使SD卡进入SPI模式。SD卡的读写操作是通过发送SD
卡命令完成的。SPI总线模式支持单块(CMD24)和多块(CMD25)写操作,在需要读取SD
卡中的数据时,执行命令字CMD17,首先接收到第一个响应命令字节(0xFE),接着接收到
512个字节的SD卡数据,最后接收到2个字节的CRC验证码。
龙源期刊网
3.2 液晶显示屏的控制
ILI9341液晶控制器的主要使用6个重要的命令:0XD3,是读ID4指令,用于读取LCD
控制器的ID;0X36,是存储访问控制指令,可以控制ILI9341存储器的读写方向;0X2A,是
列地址设置指令,在从左到右,从上到下的扫描方式(默认),该指令用于设置横坐标;
0X2B,是页地址设置指令,在从左到右,从上到下的扫描方式(默认),该指令用于设置纵
坐标;0X2C,是写GRAM指令,在发送该指令之后,便可以往LCD的GRAM里面写入颜色
数据了,该指令支持连续写;0X2E,是读GRAM指令,用于读取ILI9341的显存
(GRAM)。
3.3 图片解码
我们常用的图片格式有很多,最常用的有三种:JPEG(或JPG)、BMP和GIF。其中
JPEG(或JPG)和BMP是静态图片,而GIF则是可以实现动态图片。
BMP(全称Bitmap)是Window操作系统中的标准图像文件格式。它采用位映射存储格
式,除了图像深度可选以外,不采用其他任何压缩,故此,BMP图片文件占用的空间较大,
但是没有失真。BMP格式文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺
序。对于BMP格式的图片,我们采取从SD卡中边读取边解码显示的方式进行解码,一般
FAT32文件簇的大小都是512字节,所以我们以簇为单位读取图片信息,之后解码显示,接着
读取下一簇信息并在液晶上显示,直到读完最后一簇,我们的图片也就解码显示完毕
JPEG是Joint Photographic Experts Group(联合图像专家组)的缩写,同BMP格式不同,
JPEG是一种有损压缩格式,能够将图像压缩在很小的储存空间。JPEG压缩技术非常先进,它
使用有损压缩方式除去多余的数据。而且JPEG是一种灵活的图像格式,可以调节图像的质
量,压缩比率通常可以处于在10∶1到40∶1之间,压缩率越高,图像的品质越差,反之,图
像品质就越高。JPEG格式主要压缩高频信息,同时较好的保留了色彩的信息,它可以支持
24bit真彩色,主要适用于互联网和连续色调的图像。JPEG的解码是一个很复杂的过程,该设
计中用到了FATFS的作者提供的一个的JPG/JPEG解码库:TjpgDec,只需3.5KB的FLASH
和3KB的RAM即可实现JPG/JPEG解码。JPEG/JPEG图像文件解码过程如下:首先从文件头
开始读出文件的相关信息;接着从图像数据流中读取一个编码单元(MCU) ,并提取里边的
各个颜色分量;将颜色分量从数据流恢复成矩阵数据;接下来对8×8 的数据矩阵进一步解码;
最后颜色系统YCrCb 向RGB 转换,排列整合各个MCU 的解码数据。
4 结论
本论文设计了一款基于STM32单片机的电子相册,该设计的主控芯片具有256KB闪存和
48KB RAM,时钟频率可达72MHz,并且集成了丰富的片内外设,功耗低,价格便宜。TFT
液晶触摸屏具有亮度好、对比度高、层次感强、颜色鲜艳等特点。该系统的硬件电路很简单,
龙源期刊网
主要通过软件来实现具体的功能,最终设计了一款具有价格便宜,功能齐全,显示效果良好,
模块化结构的电子相册。
参考文献
[1]张洋,严汉宇,刘军.原子教你玩STM32[M].北京:北京航空航天大学出版社,2013.
[2]梁明亮,齐公博.基于ARM9的简易数码相框[J].电子制作,2010(10).
[3]丁鑫蕾.一种简易数码相框的设计[J].微型机与应用,2010(31).
[4]任松岩.基于ARM的数码相框的设计[J].电子制作,2010(03).
[5]刘军.例说STM32[J].北京:北京航空航天大学,2011(10).
[6]谭浩强.C程序设计[M].北京:清华大学出版社,2008.
作者单位
河西学院物理与机电工程学院 甘肃省张掖市 734000
龙源期刊网
版权声明:本文标题:基于stm32单片机的电子相册 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/shuma/1717246823a550476.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论