基于ARM9开发板的嵌入式电子相册

 2022-01-18 00:14:07

论文总字数:21037字

目 录

1 引言 5

1.1 课题的研究背景与意义 5

1.2 课题研究的具体内容 5

1.3 课题设计的主要任务 6

2 电子相册的开发环境 6

2.1 嵌入式系统的概述 6

2.2 硬件开发平台介绍 7

2.3 软件开发环境的介绍 7

2.3.1 程序开发工具——Keil uVision4的简介 7

2.3.2 程序烧写工具——MiniTools的简介 8

3 硬件系统结构组成 8

3.1 Mini 2451电路系统的介绍 8

3.2 Mini 2451控制器的介绍 9

3.3 Mini 2451显示屏的介绍 10

3.4 Mini 2451的按键、串口的介绍 11

4 软件结构设计 12

4.1 整体的融合 12

4.2 时钟模块 13

4.2.1 数字时钟的实现 13

4.2.2 钟表时钟的实现 14

4.2.3 闹钟的实现 16

4.3 电子相册模块 17

4.3.1 图片的转码 17

4.3.2 切换效果的实现 17

4.3.3 相册的播放模式的转换 18

5 电子相册的调试和演示 18

5.1 整体实物图 18

5.2 测试时钟 19

5.3 测试相册 21

5.4 测试发现的其他问题及解决思路 22

6 结论及心得 23

参考文献 23

附 录 24

致 谢 28

基于ARM开发板的嵌入式电子相册

李 丹

,China

Abstract:As we all know, the development of microelectronics technology and computer network technology have reached an unstoppable point. The embedded technology is widely used in many fields such as industry and agriculture. The traditional 8-bit microcontroller exposed defects -- too small capacity has been unable to meet the increasingly complex application requirements in reality. With the improvement of cost performance of 32-bit microprocessor, it is an inevitable choice to use higher performance 32-bit microprocessor as the main control chip of embedded system. ARM processor has recognized as advanced 32-bit embedded RISC microprocessor by industry. At present, the increasing use of electronic photo albums in smart mobile devices has become the primary concern of consumers in the purchase of smart mobile devices. The final consumers should be ordinary consumers with the main of family, and the field of application is more widely. And the design will use Samsung’s 16/32-bit reduced instruction set computer (RISC) microprocessor S3C2451 to design a man-machine friendly interface setting a collection of photo album, my alarm clock and the clock as one. It’s significant to improve reliability of intelligent embedded system, intelligent embedded system and networking flexibility.

Key words:ARM;S3C2451;Embedded;Keil uVision 4;MiniTools

1 引言

1.1 课题的研究背景与意义

近几年来,嵌入式电子相册的发展势头愈演愈烈,得到普及的数码相机的分辨率从原来的200万像素增长到现在的1200—2000万像素,数码相机的价格也从原来的2000人名币左右下降到现在的1000人名币左右。随着电子相册在智能移动电子设备上应用比例的不断增长,以及普通大众对移动电子设备中电子相册的要求的不断严格,电子相册作为一种以数字图像的保存、浏览和编辑为核心功能的电子产品,它自然迎合了各大智能手机公司的需求[1]

硬件部分上,主控微处理器、半导体存储器和LCD控制器成为电子相册的三大核心器件。软件部分上,嵌入式系统中Jpeg图像压缩处理技术成为电子相册的核心技术之一,由于ARM技术的发展和应用,该技术和集成化的USB主机和接口已然被大多数的生产厂家所拥有。随着Flash非易失闪存技术的不断完善和发展,非易失闪存存储器单位存储量的价格在过去的几年中下降好几十倍。现在移动设备中我们可以看出,电子相册的数据处理能力大致是浏览、存储、命名(重命名)、移植、删除和备份等[2]。由于电子相册的功能同个人电脑(PC)的功能相类似,主要功能都是对数字图像进行存储和浏览等操作,这就要求此类产品的内置数据存储器的容量较大足以存储加较多的图像数据,卡接口的种类较多(USB等),而且还要求内置数据存贮器和外接数据存贮器间能够进行数据同步以及相互移植的能力。

1.2 课题研究的具体内容

本次设计使用的开发板平台是ARM 9系列的Mini 2451开发板,并且利用Keil uVision 4进行嵌入式电子相册的C语言程序编写,然后利用MiniTools通过USB将程序烧录至开发板平台。该应用程序的主界面是模拟参照Windows 8的主界面,并且有三个功能模块:时钟(数字时钟和钟表时钟)模块、闹钟模块和电子相册的浏览模块。三个功能模块的具体实现如下所述:

(1)如果用户在应用程序的主界面停留长达时间超过5秒后界面将自动跳转到数字时钟界面,用户在主界面时有呼吸灯做指示正常;

(2)闹钟和时钟的时间设定都能够通过USB串口进行设定、删除和更改,其中闹钟最多可以设定3个闹钟时间,当到达指定的闹钟时间时蜂鸣器会工作,作鸣响;

(3)电子相册模块是将若干张图片转码存储于开发板平台的CPU中,然后选择手动或自动模式进行图片播放,默认为手动播放。关闭相册也可以作为一个时钟。图片的切换模式也有两种:横式间隔切换和随机点切换,切换间隔可以通过USB串口进行设置,还可以通过串口打开和关闭相册的幻灯片播放。

1.3 课题设计的主要任务

1、熟悉ARM 9嵌入式开发平台的功能和特点,掌握Mini 2451开发板及其主控处理器S3C2451的基本性能;

2、利用Keil uVision 4进行应用程序的编写、设计应用程序的功能;

3、利用MiniTools进行USB烧写;

4、实现整个应用程序的完整运转;

5、掌握各种文献资料的查阅方法;

6、掌握文档的编辑、排版等。

2 电子相册的开发环境

2.1 嵌入式系统的概述

现如今,嵌入式系统的应用领域虽然很广泛,但仍然没有明确的定义,大致可以该书为是通过计算机技术将应用程序烧录至开发平台,最终呈现在显示屏幕上的专用计算机系统。相较于普通的处理系统,嵌入式系统对功能可靠性、开发成本、体积和功耗的要求较为严格。简单一点说,嵌入式系统就是用软件来控制硬件以达到想要的效果和功能。嵌入式系统大致由嵌入式微处理器、嵌入式操作系统和外围硬件设备等组成。

原有的嵌入式系统拥有精简的系统、系统内核较小、专用性能较强;对于适合开发嵌入式系统的软件和开发使用到的软件代码都有着严格的要求:实时性能较好的系统软件(OS),质量靠谱且可靠性能优良的软件代码[3]。现在由于嵌入式系统的广泛应用,开发嵌入式系统的软件也越来越标准化,这就要求开发软件的操作系统具有实时性和多任务处理的能力,以此来保证程序执行的过程中实时性、稳定性和可靠性能到保证,并且提高了软件的开发效率和质量;

嵌入式系统的开发必须依赖于具有完备开发工具的开发环境,而嵌入式系统自身是不具备的,因此我们一般利用通用计算机上的各种设备,以及计算机的外接设备:逻辑分析仪、高级示波器等等。嵌入式系统的开发过程中,我们需要使用到两种开发主体:用于程序的开发的“主机”和作为程序执行机制的“目标机”,开发的过程中需要将两者交替联合进行调试才能够足以保证开发的效率和质量[4]。然而,随着现今计算机技术、通信技术和智能化的电子消费技术(三者统称为“3G”)的不断发展,这三者呈现出相互融合渗透的趋势,嵌入式系统呈现出新的开发特点,比如高度集成化的片上系统技术(SOC)、软硬件相结合的可编程片上系统(SOPC)技术、数字信号处理技术(DSP)的交融渗透,不断成熟的开发环境和调试技能,以及将开发者思想融入到嵌入式软件等新的特点[5]。综合各个方面,嵌入式系统硬件开发平台中ARM嵌入式处理器体系结构的使用最为广泛,也逐渐成为开发者的首选。

2.2 硬件开发平台介绍

本次设计采用的是三星公司设计的Mini 2451。Mini 2451是一款ARM 9嵌入式处理器体系的开发板平台,特点是性能较高,功耗较低。Mini 2451的CPU主控处理器是三星公司设计的S3C2451,该芯片运行时的能够接受的最高主频率为533 MHz。作为Mini 2440的继任者,Mini 2451和Mini 2440的接口定义和布局尺寸的相似度高达99%,这样一来,原先Mini 2440所拥有的众多的网络资源就可以继续被用户所使用,从而提高利用率和兼容性,减少了开发成本[6];然后Mini 2451的双数据速率内存(DDR2)容量为128M,相较于Mini 2440,该内存的容量更大,速度更快,Mini 2451的单层单元的非易失闪存(NAND Flash)的标配容量也有256M,也可选用1GB。当开发者的项目对触摸效果要求很高的时候,采用精准一线触摸的Mini 2451成为最佳的选择,并且事实上Mini 2451已经在工业控制领域中得到广泛的应用和认可。需要说明的是,一般的开发板平台外接电源和温度都会对开发板的工作有很大的影响,为了避免这些干扰和影响,Mini 2451电源系统的设计更加精良、信号的稳定性更加规范,因此非常适合环境恶劣的工业控制领域[7]。Mini 2451的SD卡座是弹出式,使用户使用起来非常的方便,为此三星公司精心研制了Superboot-2451来配合这一特性,使用Superboot-2451就不需要连接电脑就能直接安装各种嵌入式系统,方法是先把目标文件拷贝到SD卡中(可以支持大于2G的高速内存卡),然后就可以直接安装在开发板平台上[8]。开发者可以配合使用MiniTools通过各种开发板平台上USB接口下载单个文件到主控处理器中运行,非常便于调试开发之用。

2.3 软件开发环境的介绍

2.3.1 程序开发工具——Keil uVision4的简介

本次设计的过程中,程序的设计部分采用的开发工具是常用的C语言编译软件——Keil uVision 4。它是一款功能特别强大的、内部集成了编译器、项目管理器和MAKE工具等多种工具的Windows集成开发平台[9]。Keil uVision 4作为新集成的应用程序开发环境,为了让Keil uVision 4能够更加完美的匹配更多的最新的ARM芯片,为此它的调试工具需要更加的通用化。相比较之前其他的版本,Keil uVision 4显著地提高了开发效率,节省了开发成本,使开发者的开发过程变得简单快捷且有效。我们都知道,对于用户来说一个开发环境好不好,除了需要开发工具的更加完备,一个整洁高效、方便的应用程序开发界面也是用户所需要的,而Keil uVision 4的用户界面可以允许用户更合理地利用屏幕空间,并且更有效地组织各个功能窗口,使得这个需求得以实现。虽然Keil uVision 4使用多台监视器,但是并没有让屏幕界面看上去杂而无章,不方便使用,因为Keil uVision 4可以允许用户进行对窗口位置的完全控制,即可以将任何一个窗口移动到任一个置位[10]

2.3.2 程序烧写工具——MiniTools的简介

本次设计的过程中,程序的烧写工具采用的是性能突出的MiniTools。这是一款针对于专业开发板平台而专门设计的USB烧写工具软件[11],在计算机自身的硬件方面上,它支持32/64-bit计算机,计算机的安装系统方面上,MiniTools支持各种电脑系统版本,包括Linux系统以及Windows等操作系统;MiniTools的底层USB通讯遵循Fastboot协议,MiniTools与开发板平台的Superboot通过USB进行数据通讯。MiniTools相比较于其他的烧写工具软件有很多自身的特性。比如,MiniTools可以实现系统的烧写、运行、设定启动参数等功能,并且只需要安装一次,即可兼容Mini 2440/6410/210/2451等各个开发板平台的Superboot。MiniTools不需要直接与计算机相连接就可以完全通过USB串口进行数据间的传输,使得用户的桌面更加整洁;MiniTools是真正意义上的一键烧写,可以烧写一个目标文件,也可以烧写多个。其他的烧写工具都是通过串口发送命令至开发板平台,再选择通过USB下载,并且要通过多个步骤才能将整个系统烧录至开发板,而MiniTools则省去这些繁琐的过程进行直接烧写。

上面我们知道可以将程序存进SD卡就能直接安装嵌入式系统,MiniTools与其不同的是,通过该软件就可以直接通过USB串口就能直接将嵌入式系统安装到开发板平台上,且能完成快速启动,因此费城方便开发者进行调试开发。

3 硬件系统结构组成

3.1 Mini 2451电路系统的介绍

Mini 2451的电路系统的工作原理:首先通过USB串口将应用程序烧录至主控处理器(S3C2451)中,随后,由按键模块启动控制主控处理器做出相应的功能选择(应用程序中已将4个按键的功能做出功能定义),即按下相应功能的按键来启动控制功能,或者通过USB等串口给S3C2451处理器发送功能指令。主控处理器会根据相应的按键选择或者功能指令发出相应的功能指示至LCD显示模块和蜂鸣器模块中,使得蜂鸣器和LCD会根据处理器的指令做出相对应的功能反馈,一般相应的功能反馈表现为LCD上显示相应的数据信息和图片信息,或者蜂鸣器发出声响。Mini 2451的电路模版示意图如图3.1所示。

剩余内容已隐藏,请支付后下载全文,论文总字数:21037字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;