ARM课程设计报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2013年11月23日至2014年01月3日华中科技大学武昌分校制

嵌入式系统课程设计任务书

一、设计(调查报告/论文)题目

课题:数字钟的设计

二、设计(调查报告/论文)主要内容

掌握定时器的使用方法,利用串口、数码管、点阵或者液晶屏进行日期、时间的实时显示,并可以根据需要进行调整。

三、原始资料

开发板的原理图,课设资料。

四、要求的设计(调查/论文)成果

●使用开发板或实验箱实现一个数字钟;

●根据原理图完成实验方案的设计;

●实时显示日期、时间。可以利用串口发送到上位机显示或利用数码管、点阵、液

晶屏显示;

●具备时间调整功能;

●在实验完成的基础上完成课程设计报告的撰写,按照模板的格式书写,要求有软

件流程图和详细的调试过程。

五、进程安排

时间内容地点

17周周一上午课题讲解、选题11-211

17周周一上午软硬件准备、清理实验楼403

17周周二至周三课题分析、收集资料、完成设计

实验楼403,图书馆

方案

17周周四至周五详细设计,编写代码实验楼403

18周周一至周三系统调试实验楼403

18周周四成果验收实验楼403

18周周五整理文档,撰写提交课设报告实验楼403

六、主要参考资料

见下发的课程设计资料

指导教师(签名):

20 年月日

目录

摘要 (2)

1.设计原理及基本方案 (3)

1.1设计原理 (3)

1.2基本方案 (5)

2.软件设计 (6)

2.1基本思路 (6)

2.2软件流程图 (6)

2.3主要代码说明 (7)

3.调试过程 (7)

4.课程设计中出现的问题 (10)

5.总结 (11)

6.附录 (12)

摘要

随着科技的发展,嵌入式系统广泛应用于工业控制和商业管理领域,在多媒体手机、袖珍电脑、掌上电脑、车载导航器等方面的应用,更是极大地促进了嵌入式技术深入到生活和工作各个方面。嵌入式系统主要由嵌入式处理器、相关支撑硬件及嵌入式软件系统组成;本文介绍基于ARM7的嵌入式微处理器S3C44BOX和LCD显示器的电子时钟的设计,实现电子时钟的功能,并在LCD上显示类似的时钟界面;动态显示当前的时间,包括:年、月、日、时、分、秒,时针。

关键词:ARM、电子钟、软件

1 设计原理及基本方案

1.1设计原理

(1)实时时钟RTC模块

S3C2410A 实时时钟单元是处理器集成的片内外设,由开发板上的后备电池供电,可以在系统电源关闭的情况下运行,RTC发送8位BCD码数据到CPU。传送的数据包括秒、分、时、星期、日期、月份和年份。RTC单元时钟源频率由外部32.768 kHz晶振提供,可以实现闹钟(报警)功能及时间片中断、置0计数功能。如图1-1。

RTC最重要的功能就是显示时间,是通过读/写寄存器实现的。要显示秒、分、时、日期、月、年,CPU必须读取存于BCDSEC、BCDMIN、BCDHOUR、BCDDAY、BCDDATE、BCDMON 与BCDYEAR寄存器中得值。时间的设置也是通过以上的寄存器实现的,即以上寄存器是可读写的。

(2)RTC特殊功能寄存器

所有RTC寄存器斗都是字节型的,必须使用字节型访问指令(STRB、LDRB)或者字符型指令访问。在小端模式和大端模式中所采用的地址不同,这里采用小端模式的地址。

①时钟BCD数据寄存器

时钟BCD数据寄存器用于保存RTC的实时数据,包括BCDSEC、BCDMIN、BCDHOUR、BCDDATE、BCDDAY、BCDMON和BCDYEAR等7个寄存器,如表1-1所列。

表1-1时钟数据寄存器

寄存器地址读写操作描述复位值

BCDSEC 0x57000070 读/写BCD秒数据寄存器未定义

BCDMIN 0x57000074 读/写BCD分数据寄存器未定义

BCDHOUR 0x57000078 读/写BCD时数据寄存器未定义

BCDDATE 0x5700007C 读/写BCD日数据寄存器未定义

BCDDAY 0x57000080 读/写BCD星期数据寄存器未定义

BCDMON 0x57000084 读/写BCD月数据寄存器未定义

BCDYEAR 0x57000088 读/写BCD年数据寄存器未定义

BCDSEC用于保存报警的秒数据,其中的位[6:0]SECDATA保存报警秒数据的BCD码,位[6:4]取值0-5,位[3:0]取值0-9。

BCDMIN用于保存报警的分数据,其中的位[6:0]MINDATA保存报警分数据的BCD码,位[6:4]取值0-5,位[3:0]取值0-9。

BCDHOUR用于保存报警的时数据,其中的位[5:0]HOURDATE保存报警时数据的BCD 码,位[5:4]取值0-2,位[3:0]取值0-9。

BCDDATE用于保存报警的日数据,其中的位[5:0]DATEDATA保存报警日数据的BCD 码,取值0-28、29、30、31,位[5:4]取值0-3,位[3:0]取值0-9。

BCDDAY用于保存报警的星期数据,其中的位[2:0]DAYDATA保存报警星期数据的BCD 码,取值1-7。

BCDMON用于保存报警的月数据,其中的位[4:0]MONDATA保存报警月数据的BCD码,位[4]取值0-1,位[3:0]取值0-9。

BCDYEAR用于保存报警的年数据,其中的位[7:0]YEARDATA保存报警年数据的BCD 码,取值00-99。

②实时时钟控制寄存器

实时时钟控制寄存器RTCCON如表1-2所列,共有四位。

表1-2实时时钟控制寄存器

寄存器地址读写操作描述复位值

RTCCON 0x57000040 读/写RTC控制寄存器0x0

各位定义如下:

[3]CLKRST:RTC时钟计数器复位。0=不复位;1=复位。

[2]CNTSEL:BCD计数器选择。0=合并BCD计数器;1=保留(即分离BCD计数器)。

[1]CLKSEL:BCD时钟选择。0=采用XTAL的1/215作为时钟;1=保留(XTAL时钟仪用于测试)。

[0]RTCEN:RTC控制使能。0=禁止;1=使能。

RTCEN控制BCD寄存器的读/写使能,CLKSEL、CNTSEL和CLKRST用于测试。RTCEN 控制着CPU和RTC的所有接口,为了使能数据可读/写,在系统复位后RTCEN应该置1。

③ RTC报警控制寄存器

RTC报警控制寄存器RTCALM如表1-3所列,控制着报警使能和报警时间。

表1-3 RTC报警控制寄存器

寄存器地址读写操作描述复位值

RTCALM 0x57000050 读/写RTC报警控制寄存器0x0

相关文档
最新文档