基于STM32的数码相框系统设计与实现软件毕业设计论文 精品Word文档下载推荐.docx
- 文档编号:21277273
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:75
- 大小:3.27MB
基于STM32的数码相框系统设计与实现软件毕业设计论文 精品Word文档下载推荐.docx
《基于STM32的数码相框系统设计与实现软件毕业设计论文 精品Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于STM32的数码相框系统设计与实现软件毕业设计论文 精品Word文档下载推荐.docx(75页珍藏版)》请在冰豆网上搜索。
Keywords:
Embedded;
DigitalPhotoFrame;
Cortex-M3
第一章引言
1.1课题研究意义
嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。
嵌入式系统用在一些专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对成本很敏感,有时对实时响应要求很高。
特别是随着消费家电的智能化,嵌入式更显重要。
像我们平常常见到的手机、PDA、电子字典、可视电话、VCD/DVD/MP3播放器、数码相机、数字摄像机、U-Disk、机顶盒、高清电视、游戏机、智能玩具、交换机、路由器、数控设备、汽车电子、家电控制系统、医疗仪器、航天航空设备等都是典型的嵌入式产品。
数字摄影的兴起不可避免地引起了数码相框的发展,因为仅有不到35%的数码照片被打印出来。
数码相框的基本原理就是采用普通相框的造型,把原来相框中间的照片部分换成液晶显示屏,配上电源,存储介质等,使得同一个相框内可以循环播放照片,比普通照片的单一显示功能更有优势。
从2007年开始,数码相框的市场关注度开始激增。
在2008年,数码相框市场呈现高速发展的态势,本课题的研究具有极高的潜在市场价值。
此外,本设计属于数字影音娱乐产品,需要较为强劲的处理器进行图像解码的工作,而STM32具有超低的价格、超多的外设、丰富的型号、优异的实时性能、杰出的功耗控制和极低的开发成本等特点。
因此,进行基于STM32平台的数码相框系统的设计具有重要的理论意义和实用价值。
1.2数码相框的发展情况和趋势
1.2.1数码相框的发展现状
数码相框产品是2001年开始出现的,但由于当时消费者的接受度及价格过高的因素,使这一市场一直到2003年都很低迷。
随着主要器件价格的下降,数码相框的价格也逐步下降,市场在2004年开始有了起色,尤其在2005年,数码相框产品开始在欧美热销,但出货量也只有150万台左右,到了2006年的出货量同比上涨133%,为280万台,2007年的出货量同比上涨185%,为800万台,预计到2011年出货量将达到4000万台。
从屏幕尺寸来看,2006年5-6.9英寸产品占主流,2007年7、8、9英寸产品成为最大市场。
预计2011年,7、8、9英寸产品的供货比例将持续保持首位,而平均销售单价将以每年16.5%左右的速度降低。
2006年以前,中国生产的数码相框绝大多数出口国外。
2005年底Philips率先将数码相框在中国推广,在礼品市场上取得了一些成绩,但由于销售价格较高,约为2050元/台,这一年中国数码相框的销售量仅有1.7万台。
2006年下半年,开始有更多的国内厂商在中国市场推出数码相框,因而也带动了此产品价格的下降,这一年的平均售价为1150元/台,仍然较高,市场也以商务礼品为主,但由于2005年销售量的基数较低,2006年的销售量同比增长了470.6%,达到9.7万台。
直到2007年下半年,业界才感到这个一直处于培育期的市场,开始了真正的起飞。
这得益于对数码相框产品认知度的提高、价格的下滑和需求量的提高。
从IT厂商来看,仅2007年下半年以来,就有惠普、三星、优派、AOC、明基、柯达、长城等众多新军加入数码相框阵营。
其中,巨头惠普2007年7月底在美国宣布进入数码相框市场,2007年数码相框出货量设定为50万台。
除新军外,数码相框老牌劲旅的出货量表现也令业界振奋,如飞利浦2006年数码相框出货量达到50万台,而2007年上半年出货量已达去年总和,2007年全年出货量达150万台。
而从上游面板厂商的动作来看,也显示出乐观的发展态势。
中华映管、群创等厂商均显著调高了配套数码相框产品的中尺寸面板的出货量目标,2007年出货量达1000万台,预计2008年更将倍增至2000万台。
其中,中华映管目前已调配一座4.5代面板厂来支持生产中尺寸面板,主要生产可携式DVD播放机面板与数码相框面板,其数码相框面板以7英寸、8英寸、10.2英寸为主要尺寸,数码相框面板占其中尺寸面板的比重提高到40%。
1.2.2数码相框的发展趋势
从长远来看,2008年及今后几年将为处在数码相框产品供应链的各企业带来巨大的商机。
未来几年,数码相框的市场将处在逐渐走向成熟期的阶段,其产销量和市场需求依然将保持大幅度的增长,在未来的三年内,市场尚无萎缩的可能。
但数码相框拓展中国市场需克服两大难点:
一是价格;
二是拓展应用空间。
价格下降是必然趋势,中国消费者接受只是时间的问题,而根据中国消费者的需求和特点,开发出相应的应用产品,则是需要数码相框厂商亟待解决的问题。
从技术上来说,未来数码相框的发展将向两极分化。
一部分产品着重强调基本功能和低成本,整合家庭中的闹钟、日历和装饰功能,这些产品走的是低成本路线,以展示照片为主,追求图像的品质及幻灯片播放特效,已成为DC/DV的附属物;
另一部分产品将会添加一些新的功能,如WiFi,还可即时报告天气、股票等信息,从而有望成为“桌面信息中心”。
此外,触摸面板会成为一个应用的新亮点。
从产品形态上来说,数码相框的市场将会有非常明确的细分。
1数码相框:
这将是以数字照片的重显为主要功能的产品,其功能更接近于传统意义上的相框。
由于人机界面的限制,为了更方便的重显和浏览以及确定重显的规则,这类产品并不强调有大容量的内存以及丰富的存储卡接口,这类产品的主要特征是:
1)支持USBDevice&
Host以便于更新和同步数据。
2)在某些情况下(如从PC端通过相框的USBDevice同步数据),允许修改数字照片的格式使得有最佳的重显效果。
3)仅依靠内置的半导体存储器存放需要重显的数字照片。
4)文件(照片)查询和播放规则设定非常简洁易用。
5)产品大致分为桌面和壁挂两种。
2数码相册:
这是以数字照片的存储和浏览为主要功能的产品,由于需要满足跟PC相类似功能,所以这类产品的主要特征是:
1)有大容量的内置数据存储器。
2)支持USBDevice&
Host及各种存储卡接口,并支持内部存储器与各种数据存储器之间的同步以及相互拷贝。
3)强大的文件管理功能:
浏览,搜寻,命名(重命名),复制,删除,备份等。
4)带或不带内建显示单元,有能支持其它高分辨率显示设备的接口(如色差,VGA甚至是HDMI)。
1.3本课题设计主要研究内容
本课题是基于ARM单片机STM32F103RBT6的存储程序控制,从SD卡读取图片,解码后输出到TFT-LCD上显示,同时通过按键可以切换到时间模式。
1)硬件电路原理图的绘制(见附录);
2)硬件资料的研究;
3)软件方案的选择与论证;
4)软件运行与调试;
1.4主要章节安排
第一章就课题研究的背景与意义以及发展现状与趋势做出说明;
第二章概要性地介绍了嵌入式系统的基本知识;
第三章详细地介绍了软件编程与下载环境;
第四章程序设计与调试;
第五章结束语;
致谢在软件设计过程中给予我无限帮助的老师和同学;
参考文献列出本次设计中参阅的相关资料;
附录在设计过程中所参考的部分资料及硬件装置的部分资料。
第二章硬件介绍
2.1嵌入式系统概况
2.1.1嵌入式系统的定义
虽然嵌入式系统是近几年才风靡起来的,但其历史可追溯到20世纪70年代。
经过30多年的发展,在硬件和软件交替发展的支撑下,嵌入式技术逐渐趋于稳定和成熟,已被广泛应用于工业控制、交通管理、信息家电、家庭智能管理系统、POS网络及电子商务、环境检测、机器人等各个领域。
毫不夸张的说,嵌入式系统已经无所不在,所以研究和开发嵌入式系统有着十分重要的意义。
根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或辅助设备、机器和车间运行的装置”,这主要是从应用上加以定义的。
不过,上述定义并不能充分体现出嵌入式系统的精髓。
目前,国内一个普遍被认同的定义是:
以应用为中心、以计算机为基础,软、硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
广义地讲,凡是不用于通用目的的可编程计算机设备,就可以算是嵌入式计算机系统。
狭义上而言,嵌入式系统是指以应用为核心,以计算机技术为基础,软硬件可裁剪,适于应用系统对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统。
总的来说,嵌入式系统是一个外延极广的概念,凡是与产品结合在一起的、具有嵌入式系统特点的系统都可以称为嵌入式系统。
可以从以下几个方面来理解嵌入式系统的含义:
嵌入式系统是面向用户、面向产品、面向应用的,必须与具体应用相结合才会具有生命力。
正因为与具体应用的紧密结合,嵌入式系统才具有很强的专用性。
嵌入式系统将先进的半导体技术、计算机技术和电子技术,以及各个行业的具体应用相结合,是一个技术密集、资金密集、学科交叉和不断创新的知识集成系统。
嵌入式系统必须根据应用需要对硬件和软件进行裁剪,以满足应用系统对功能、可靠性、成本、体积和功耗的要求。
2.1.2嵌入式系统的组成
通常来说,嵌入式系统可以划分成硬件和软件两部分。
嵌入式硬件由嵌入式微处理器、片内周边电路和外部设备三部分组成。
嵌入式微处理器是嵌入式硬件系统的核心,直接影响嵌入式产品的应用范围和开发复杂度。
典型的嵌入式微处理器有Motorola公司的PowerPC系列、Intel公司的StrongArm系列、AMD公司的X86系列以及EPSON公司的SIC33系列等。
嵌入式软件一般由连接硬件和应用程序的嵌入式实时操作系统(Real-timeoperatingSystem,简称RTOS)和在其上运行的应用软件构成。
①嵌入式处理器
嵌入式处理器是嵌入式系统的核心部件,是控制、辅助系统运行的硬件单元,其功能和性能影响着整个系统的功能、性能和设计。
嵌入式处理器的选择也制约着其配套的外围器件及操作系统的选择。
嵌入式处理器的种类繁多、数量庞大。
目前世界上嵌入式处理器的种类数量已经超过1000种,流行的体系结构有30多个系列。
嵌入式微处理器具有体积小、重量轻、成本低、可靠性高等优点,因此得到了广泛应用。
目前这样的嵌入式处理器类型有ARM、MIPS、MC6800、386EX、PowerPC等系列,其中以ARM的应用最为广泛。
嵌入式处理器可以分为四类,即
嵌入式微处理器(EmbeddedMicroprocessorUnit,EMPU),如ARM
嵌入式微控制器(MicrocontrollerUnit,MCU)
嵌入式DSP处理器(EmbeddedDigitalSignalProcessor,EDSP)
嵌入式片上系统(SystemOnChip)
②嵌入式外围设备
这里所说的嵌入式外围设备,指在一个嵌入式硬件系统中,.除了中心控制部件(MCU,DSP,EMPU,SOC)以外的完成存储、通信、保护、调试、显示等辅助功能的其他部件。
根据外围设备的功能可分为以下三类,即:
存储器类型:
静态易失型存储器(RAM,SRAM)、动态存储器(DRAM)、非易失型存储器(ROM,EPROM,EEPROM,FLASH)。
其中,因为FLASH可以擦写多次,存储速度快,容量大,价格便宜在嵌入式领域应用广泛。
接口类型:
目前存在的所有接口在嵌入式领域都应用广泛,如RS-232(串口)、IRDA(红外线接口)、SPI(串行外围设备接口)、I2C(现场总线接口)、USB(通用串行接口)、Ethernet(以太接口)和普通并口。
显示类型:
CRT,LCD和触摸屏等外围设备。
2.1.3嵌入式系统的特点
嵌入式系统具有以下几个重要特征:
①系统内核小,由于嵌入式系统一般应用于小型电子装置,系统资源相对有限,所以内核较之传统的操作系统要小得多。
比如,ENEA公司的OSE分布式系统,内核只有5KB,而Windows的内核则要大得多。
②专用性强,嵌入式系统的个性化很强,其中的软件系统和硬件结合非常紧密,一般要针对硬件进行系统的移植,同时针对不同的任务,往往需要对系统进行较大的更改。
另外,程序的编译下载要和系统相结合。
③嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能的设计及实现过于复杂,这样既利于控制系统成本,也利于实现系统安全。
④高实时性的操作系统软件是嵌入式软件的基本要求,而且软件要求固化存储,以提高速度,软件代码要求高质量和高可靠性。
⑤嵌入式软件开发要想走向标准化,就必须使用多任务操作系统。
嵌入式系统的应用程序可以没有操作系统而直接在芯片上运行,但为了更合理的调度多任务,利用系统资源、系统函数,用户必须自行选配RTOS开发平台。
⑥执行的实时性、可靠性,并减少开发时间,保障软件质量。
嵌入式系统开发需要专门的开发工具和环境。
由于嵌入式系统本身不具备自主开发能力,即使完成设计后,用户通常也不能对其中的程序功能进行修改,因此必须有一套基于通用计算机的开发工具和环境才能进行开发。
2.2数码相框模块
2.2.1MCU主控模块
STM32系列闪存微控制器是意法半导体公司(ST)基于ARM公司具有突破性的Cortex-M3内核的处理器,该处理器是专门设计于满足集高性能、低功耗、实时应用、具有竞争性价格于一体的嵌入式领域的要求。
此次设计采用的具体型号是STM32F103RBT6,如图2-1所示。
图2-1STM32F103RBT6处理器
STM32F103RBT6嵌入式处理器具有以下特点:
32位RISC性能处理器;
32位ARMCortex-M3结构优化;
72MHZ运行频率,单周期访问时速度可达1.25DMIPS/MHz;
硬件除法和单周期乘法;
快速可嵌套中断,6~12个时钟周期;
具有MPU保护设定访问规则;
片内具有256KBFLASH,48KBRAM;
80个快速I/O端口,16个I/O可映射到外部中断,几乎所有的I/O可以忍受5V电压;
片上集成12BitA/D、D/A、PWM、CAN、USB、SDIO、FSMC等资源;
ARMCortex-M3是一种基于ARM7v架构的最新ARM嵌入式内核,它采用哈佛结构,使用分离的指令和数据总线(冯诺伊曼结构下,数据和指令共用一条总线)。
从本质上来说,哈佛结构在物理上更为复杂,但是处理速度明显加快。
根据摩尔定理,复杂性并不是一件非常重要的事,而吞吐量的增加却极具价值。
除了使用哈佛结构,Cortex-M3还具有其它显著的优点:
具有更小的基础内核,价格更低,速度更快。
与内核集成在一起的是一些系统外设,如中断控制器、总线矩阵、调试功能模块,而这些外设通常都是由芯片制造商增加的。
Cortex-M3还集成了睡眠模式和可选的完整的八区域存储器保护单元,只支持最新的Thumb-2指令集,最大限度降低了汇编器使用率。
Cortex-M3这样设计的优势在于:
免去Thumb和ARM代码的互相切换,对于早期的处理器来说,这种状态切换会降低性能。
Thumb-2指令集的设计是专门面向C语言的,且包括If/Then结构(预测接下来的四条语句的条件执行)、硬件除法以及本地位域操作。
Thumb-2指令集允许用户在C代码层面维护和修改应用程序,C代码部分非常易于重用。
Thumb-2指令集也包含了调用汇编代码的功能:
Luminary公司认为没有必要使用任何汇编语言。
综合以上这些优势,新产品的开发将更易于实现,上市时间也大为缩短。
STM32F103RBT6的资源完全满足此次的嵌入式数码相框设计,通过设计电路开发一个支持TFT彩色液晶屏的驱动电路,在设计中搭配2.8寸TFT真彩触摸屏模块作为显示界面,同时支持一个SD卡(SPI方式)可用于存储图片、数据等。
2.2.2LCD模块
ThinFilmTransistor(薄膜场效应晶体管),是指液晶显示器上的每一液晶象素点都是由集成在其后的薄膜晶体管来驱动。
从而可以做到高速度、高亮度、高对比度显示屏幕信息,TFT-LCD(薄膜晶体管液晶显示器)是多数液晶显示器的一种。
TFT屏幕的优点如下:
大面积。
九十年代初第一代大面积玻璃基板(300mm×
400mm)TFT-LCD生产线投产,到2000年上半年玻璃基板的面积已经扩大到了680mm×
880mm),最近950mm×
1200mm的玻璃基板也将投入运行。
高集成度。
用于液晶投影的1.3英寸TFT芯片的分辨率为XGA含有百万个象素。
分辨率为SXGA(1280×
1024)的16.1英寸的TFT阵列非晶体硅的膜厚只有50nm,以及TABONGLASS和SYSTEMONGLASS技术,其IC的集成度,对设备和供应技术的要求,技术难度都超过传统的LSI。
功能强大。
TFT最早作为矩阵选址电路改善了液晶的光阀特性。
对于高分辨率显示器,通过0-6V范围的电压调节(其典型值0.2到4V),实现了对象元的精确控制,从而使LCD实现高质量的高分辨率显示成为可能。
TFT-LCD是人类历史上第一种在显示质量上超过CRT的平板显示器。
现在人们开始把驱动IC集成到玻璃基板上,整个TFT的功能将更强大,这是传统的大规模半导体集成电路所无法比拟的。
低成本。
玻璃基板和塑料基板从根本上解决了大规模半导体集成电路的成本问题,为大规模半导体集成电路的应用开拓了广阔的应用空间。
工艺灵活。
除了采用溅射、CVD(化学气相沉积)MCVD(分子化学气相沉积)等传统工艺成膜以外,激光退火技术也开始应用,既可以制作非晶膜、多晶膜,也可以制造单晶膜。
不仅可以制作硅膜,也可以制作其他的Ⅱ-Ⅵ族和Ⅲ-Ⅴ族半导体薄膜。
应用领域广泛。
以TFT技术为基础的液晶平板显示器是信息社会的支柱产业,技术可应用到正在迅速成长中的薄膜晶体管有机电致发光(TFT-OLED)平板显示器也在迅速的成长中。
TFT液晶显示屏亮度好、对比度高、层次感强、颜色鲜艳,其广泛应用于手机、MP4等消费品。
因此,本系统选用2.8英寸TFT-LCD屏(如图2-2所示)可显26万色,分辨率320*240,控制器为ILI9320,采用16位的80并口,配合触摸屏专用芯片XPT2046,可对屏幕进行触摸操作,更显智能化和个性化。
为了方便用户使用,我们存储方式采用兼容FAT的文件系统,同时该文件系统也兼容FAT32等电脑主流的文件系统方式进行存储。
图2-22.8英寸TFT-LCD模块
该模块的80并口有如下一些信号线:
CS:
TFT-LCD片选信号。
WR:
向TFT-LCD写入数据。
RD:
从TFT-LCD读取数据。
D[15:
0]:
16位双向数据线。
RST:
硬复位TFT-LCD。
RS:
命令/数据标志(0,读写命令;
1,读写数据)。
TFT-LCD模块的RST信号线是直接接到STM32的复位脚上,并不由软件控制,这样可以省下来一个I/O口。
另外我们还需要一个背光控制线来控制TFT-LCD的背光。
所以我们总共需要的I/O口数目为21个。
模块的控制器为ILI9320(可能为其他型号,但是他们的设置很相似,除了初始化序列有些区别,其他大都是一摸一样的,这里仅以9320为例介绍),该控制器自带显存,其显存总大小为172820(240*320*18/8),即18位模式(26万色)下的显存量。
模块的16位数据线与显寸的对应关系为565方式,如下图所示:
图2-316位数据与显存对应关系图
最低5位代表蓝色,中间6位为绿色,最高5位为红色。
数值越大,表示该颜色越深。
接下来介绍一下ILI9320的几个重要命令,因为ILI9320的命令很多,这里不一一介绍。
这里我们要介绍的命令列表如下:
表2.1ILI9320常用命令表
R0,这个命令,有两个功能,如果对它写,则最低位为OSC,用于开启或关闭振荡器。
而如果对它读操作,则返回的是控制器的型号。
这个命令最大的功能就是通过读它可以得到控器的型号,而我们代码在知道了控制器的型号之后,可以针对不同型号的控制器,进行不同的初始化。
因为93xx系列的初始化,其实都比较类似,我们完全可以用一个代码兼容好几个控制器。
R3,入口模式命令。
我们重点关注的是I/D0、I/D1、AM这3个位,因为这3个位控制了屏幕的显示方向。
AM:
控制GRAM更新方向。
当AM=0的时候,地址以行方向更新。
当AM=1的时候,地址以列方向更新。
I/D[1:
当更新了一个数据之后,根据这两个位的设置来控制地址计数器自动增加/减少1,其关系如下图:
图2-4GRAM显示方向设置图
通过这几个位的设置,我们就可以控制屏幕的显示方向了。
R7,显示控制命令。
该命令CL位用来控制是8位彩色,还是26万色。
为0时26万色,为1时八位色。
D1、D0、BASEE这三个位用来控制显示开关与否的。
当全部设置为1的时候开启显示,全0是关闭。
我们一般通过该命令的设置来开启或关闭显示器,以降低功耗。
R32,R33,设置GRAM的行地址和列地址。
R32用于设置列地址(X坐标,0~239),R33用于设置行地址(Y坐标,0~319)。
当我们要在某个指定点写入一个颜色的时候,先通过这两个命令设置到改点,然后写入颜色值就可以了。
R34,写数据到GRAM命令,当写入了这个命令之后,地址计数器才会自动的增加和减少。
该命令是我们要介绍的这一组命令里面唯一的单个操作的命令,只需要写入该值就可以了,其他的都是要先写入命令编号,然后写入操作数。
R80~R83,行列GRAM地址位置设置。
这几个命令用于设定显示区域的大小,我们整个屏的大小为240*320,但是有时候我们只需要在其中的一部分区域写入数据,如果用先写坐标,后写数据这样的方式来实现,则速度大打折扣。
此时我们就可以通过这几个命令,在其中开辟一个区域,然后不停的丢数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于STM32的数码相框系统设计与实现软件毕业设计论文 精品 基于 STM32 数码 系统 设计 实现 软件 毕业设计 论文