基于ARM的电子时钟设计(共20页).doc
《基于ARM的电子时钟设计(共20页).doc》由会员分享,可在线阅读,更多相关《基于ARM的电子时钟设计(共20页).doc(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上河海大学计算机及信息工程学院(常州)课程设计报告 题 目 基于LCD的电子时钟设计 专业、学号 授课班号 学生姓名 指导教师 完成时间 课程设计(报告)任务书(理 工 科 类)、课程设计(报告)题目: 基于LCD的电子时钟设计 、课程设计(论文)工作内容一、课程设计目标 1、培养综合运用知识和独立开展实践创新的能力;2、掌握嵌入式系统设计基本原理、培养嵌入式系统设计能力;二、研究方法及手段应用1、将任务分成若干模块,查阅相关论文资料,分模块调试和完成任务;2、使用实验箱上的S3C44BOX芯片系统和LCD作为硬件基础;3、使用ADS1.2及H-JTAG对源程序进行编译
2、、仿真、调试,下载到芯片中实现LCD电子时钟功能。三、 课程设计预期效果1、完成实验环境搭建:学习LCD与ARM的LCD的控制器的接口原理;掌握内置LCD控制器驱动编写方法;2、设计完成电子时钟源程序;3、源程序编译、调试通过,下载到实验箱中,实现电子时钟功能,并在LCD上显示类似的时钟界面,动态显示当前的时间,包括:年、月、日、时、分、秒,时针,分针、秒针必须为动态实时指示当前的时间。学生姓名: 专业年级: 专心-专注-专业目 录 前 言随着科技的发展,嵌入式系统广泛应用于工业控制和商业管理领域,在多媒体手机、袖珍电脑、掌上电脑、车载导航器等方面的应用,更是极大地促进了嵌入式技术深入到生活和
3、工作各个方面。嵌入式系统主要由嵌入式处理器、相关支撑硬件及嵌入式软件系统组成;本文介绍基于ARM7的嵌入式微处理器S3C44BOX和LCD显示器的电子时钟的设计,实现电子时钟的功能,并在LCD上显示类似的时钟界面;动态显示当前的时间,包括:年、月、日、时、分、秒,时针。第一章 系统设计第一节 课题目标及总体方案本课程设计设计一种基于ARM7的嵌入式微处理器S3C44B0X和LCD显示器的电子时钟,实现电子时钟的功能,并在LCD上显示类似的时钟界面;动态显示当前的时间,包括:年、月、日、时、分、秒,时针。本课程设计主要为软件设计,硬件部分使用EL-ARM-830教学实验箱上的S3C44B0X和L
4、CD模块。软件部分使用ADS1.2及H-JTAG对源程序进行编译、仿真、调试,下载。软件设计采用模块化设计方法,分为C/OS-II系统模块、LCD初始化模块、时钟应用系统模块等,其中,时钟系统应用模块包括时钟计时模块、时钟显示模块等。各模块之间功能独立,协同完成本课程设计的全部功能。系统设计框图如图1。 软件件部分 时钟应用系统模块 时钟计时模块 时钟显示模块 LCD初始化模块C/OS-II系统模块 硬件部分 S3C44B0X LCD 图1 系统设计框图 第二节 硬件平台简介一、 S3C44B0X简介S3C44B0X 微处理器是三星公司研发的基于ARM7TDMI 核的高性能嵌入式处理器,为手持
5、设备和一般类型应用提供了高性价比和高性能的微控制器解决方案。由于其高性价比以及内嵌了多种接口,在手持设备和消费类电子中得到了广泛的应用。为了降低成本,S3C44B0X提供了丰富的内置部件,包括:8KB cache、内部SRAM、LCD 控制器、带自动握手协议的2通道UART、4通道DMA、系统管理器(片选逻辑,FP/EDO/SDRAM控制器)、带有PWM功能的5通道定时器,I/O端口,RTC,8通道10位ADC,IIC-BUS接口,IIS-BUS接口,同步SIO接口和PLL倍频器。S3C44B0X 采用了ARM7TDMI内核,0.25um工艺的CMOS标准宏单元和存储编译器。它的低功耗和出色的
6、全静态设计特别适用于对成本和功耗敏感的应用。同样S3C44B0X还采用了一种新的总线结构,即SAMBAII(三星ARM CPU 嵌入式微处理器总线结构)。 S3C44B0X的特性是它的CPU核,是由ARM公司设计的16/32位ARM7TDMI RISC处理器(主频66MHZ)。ARM7TDMI体系结构的特点是它集成了Thumb代码压缩器,片上的ICE断点调试支持,和一个32 位的硬件乘法器。S3C44B0X 内置LCD控制器可以支持规格为每像素2位 (4 级灰度) 或每像素4 位(16 级灰度)的黑白LCD。也可以支持每像素8位(256级颜色)的彩色LCD屏。LCD控制器可以通过编程支持不同L
7、CD屏的要求,例如行和列像素数,数据总线宽度,接口时序等。 基于S3C44B0X的典型嵌入式系统硬件体系结构如图2所示。 图2 S3C44B0X硬件体系结构图二、S3C44B0X与LCD连接本课程设计使用的EL-ARM-830教学实验箱包含有一块5.7寸,256色,320X240像素的LCD显示屏,S3C44B0X内置了LCD控制器,控制LCD。S3C44B0X与LCD连接示意图如图3。 S3C44B0X LCD控制器LCD5.7寸,256色,320*240 图3 S3C44B0X与LCD连接示意图第二节 软件系统设计一、C/OS-II系统模块设计 本模块的主要功能是将C/OS-II系统移植到
8、S3C44B0X上,作为调用硬件各项功能的基础,同时也完成S3C44B0X的功能本模块主要涉及到C/OS-II在ARM上的移植,不属于本课程设计讨论的范畴,故不再赘述。二、LCD初始化模块设计 本模块的主要功能完成LCD的初始化,加载LCD驱动程序,使LCD与S3C44B0X实现对接,完成显示功能。本模块我们使用了实验箱现有的相关程序。故不再赘述。三、 时钟应用系统模块设计 本模块是电子时钟功能实现的主要模块,也是本次课程设计的核心模块,本模块实现的功能主要有:时间计时,钟面时间显示,数字时间显示。其中,时间计时功能和在LCD上显示数字钟显示功能较易实现,之前的单片机课程设计和HDL课程设计均
9、有所涉及。计时使用S3C44B0X内部时钟脉冲和分频实现,在LCD上显示数字钟显示使用LCD数字显示功能实现。在LCD上实现钟面显示功能较为复杂,主要包括以下过程:1、 给秒针、分针各设定60个坐标(包括X坐标和Y坐标),表示60秒和60分,给时针设定12个坐标(包括X坐标和Y坐标);2、 设定钟面显示初值并完成初值与时针、分针、秒针的坐标的映射,更改初值可以完成时间的设定;3、 使用画线函数完成秒针、分针、时针显示,主要功能是擦除上一秒(分、时)的轨迹和显示这一秒(分、时)。4、 使用画点函数完成钟面基本构造,即钟面与12个整点时间点。 除此之外,需要在整个移植后的系统中初始化堆栈并设定任务
10、,通过任务完成时钟的各项功能。第二章 实验结果及讨论第一节 ADS1.2集成开发环境简介ADS集成开发环境是ARM公司推出的ARM核微控制器集成开发工具,英文全称为ARM Developer Suite,成熟版本为ADS1.2。ADS1.2支持ARM10之前的所有ARM系列微控制器,支持软件调试及JTAG硬件仿真调试,支持汇编、C、C+源程序,具有编译效率高、系统库功能强等特点,可以在Windows98、 Windows XP、Windows2000以及RedHat Linux上运行。 ADS 1.2使用CodeWarrior IDE集成开发环境,并集成了ARM汇编器、 ARM的C/C+编译器
11、、Thumb的C/C+编译器、ARM连接器,包含工程管理器、代码生成接口、语法敏感(对关键字以不同颜色显示)编辑器、源文件和类浏览器等等。CodeWarrior IDE 主窗口如图4所示。图4 CodeWarrior开发环境 AXD调试器为ARM扩展调试器(即ARM eXtended Debugger),包括 ADW/ADU的所有特性,支持硬件仿真和软件仿真(ARMulator)。AXD能够装载映像文件到目标内存,具有单步、全速和断点等调试功能,可以观察变量、寄存器和内存的数据等等。AXD 调试器主窗口如图5所示。 图5 CodeWarrior开发环境 本课程设计在ADS1.2集成开发环境内编
12、写源程序并进行编译,调试,然后利用H-JTAG下载到芯片中进行片上调试,H-JTAG连接完成后如图6所示。 图6 H-JTAG连接成功示意图第二节 调试结果与分析 通过编译调试下载到实验箱的S3C44B0X芯片中进行调试,LCD显示结果如图7所示。 图7 LCD调试结果显示屏幕右上角显示出学号姓名和作品信息;屏幕中间显示的是钟面,有时针、分针和秒针,显示实时时间;屏幕下方显示的是数字时钟,显示时分秒(与钟面时间相对应)和年月日。完成系统设计要求的各项功能。第三章 结 论本课程设计属于嵌入式系统项目设计,利用EL-ARM-830教学实验箱上的嵌入式微处理器S3C44B0X和LCD模块,使用C语言
13、编程,结合ADS1.2对源程序进行编译、连接和运行,使用H-JTAG下载,设计完成了基于LCD的电子时钟,实现如下功能:1、 LCD显示“钟面”样式,时针、分针、秒针显示实时时间;2、 LCD显示“数字钟”样式,动态显示年、月、日、时、分、秒;3、 显示时间可以修改并保持“钟面”与“数字钟”时间保持一致;4、 LCD左上角动态显示小组成员姓名、学号及选题信息。本课程设计完成选题要求,但是有如下方面有待改进:1、 “钟面”现实不够精确,分针和时针只设定了60个坐标位置,分针和时针走动不均匀;2、 数字钟部分尚未考虑到“大月”和“小月”以及“平年”和“闰年”的日期问题,所有月份均设定为30天;3、
14、 时间修改麻烦,需要对源程序中设定的初值进行修改,无法通过键盘对时间进行修改;4、 未调用S4C44B0X内部实时时钟(RTC)模块,不能显示出精确的内部实时时间。 上述问题我们会在今后的学习和实践中予以改善,我们将继续学习嵌入式系统原理和设计,继续学习LCD显示技术,为将来的毕业设计打好基础。心得体会本次课程设计是嵌入式系统项目设计,是在本学期我们学完了嵌入式系统课程以后相应的课程设计。因为课时的安排,嵌入式系统只有2个学分,在有限的课时内我们掌握的知识也是相当有限的,我们对嵌入式系统的硬件和软件的基本原理、基本特点,嵌入式系统设计的基本方法有了一个初步的了解掌握。这些知识对于我们完成本次课
15、程设计是远远不够的。我们自己查找了许多关于S3C44B0X和LCD的资料和文献作为课程设计的知识储备,同时也参考了去年学长学姐完成的课题,取人之长、补己之短。经过我们的努力,在老师同学的帮助下,我们顺利完成了课程设计,对嵌入式系统的硬件、软件有了更为深入的了解,也深入掌握了嵌入式系统设计的基本方法,达到了预期的目的。本次课程设计首先要感谢奚吉老师,对我们的课程设计给予了充分的关怀和帮助;然后要感谢我的搭档范娟,我们一起完成了本次课程设计。参考文献1 王勇嵌入式系统原理与设计M杭州:浙江大学大学出版社,20072 耿辉等S3C44B0X的LCD显示解决方案 中国科技论文在线,2007. 3 SA
16、MSUNG公司. S3C44B0X数据手册. ,2006. 4 EL-ARM-830 实验系统的资源介绍,2000.5 林志琦等ARM微控制器与液晶屏接口的研究J长春大学学报,2010,20(2):7174.6 周立功单片机公司. ADS集成开发环境及EasyJTAG仿真器应用,2005.附 录源程序#include .incconfig.h#defineSTACKSIZE256#define x_line 160#define y_line 80OS_STK_DATA stk;extern GUI_FONT GUI_Font8x16;OS_EVENT * Send_D7light_Sem;O
17、S_EVENT * Send_LCD_Sem;OS_EVENT *Key_Mbox;I8 Hour3,Min3,Sec3;I8 hour = 15%12, min = 20, sec = 40;I8 YEA13,YEA23,MON3,DAY3;int yea1 = 20,yea2=11, mon = 6, day = 23;int SpaceXS61=160,165,170,175,180,185,189,193,197,201,205,206,207,208,209,210,209,208,207,206,205,201,197,193,189,185,180,175,170,165,160
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ARM 电子 时钟 设计 20
限制150内