嵌入式时钟设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
嵌入式系统课程设计报告
多功能实时时钟
姓名:冯子勇卫晓欣翁海权曾康玲
班级:07电子信息工程1、2班
学号:200730580107
200730580225
200730580125
200730580132
指导老师:殷建军、俞龙、陈楚、李震、
孙道宗
日期:2010.12.20~2010.12.31
成员基本情况和分工
姓名学号分工情况
冯子勇(组长)200730580107 程序编写、成员分工卫晓欣200730580225 资料收集与程序编写
翁海权200730580125 资料收集
曾康玲200730580132 程序调试
摘要
本文说明为多功能时钟设计方案,基于S3C2410结合RTC模块,IIC(控制小键盘和数码管等)来做具备定期功能的实时时钟。
实时时钟(RTC)单元在系统电源关闭的情况下可以在备用电池下工作。RTC 可以使用STRB/LDRB ARM操作传输二进制码十进制数的8 位数据给CPU。数据包括秒、分钟、小时、日期、天、月、年的时间信息。RTC 单元可以在32.768KHz 的外部晶振下工作,可以可以执行报警功能。
关键词:多功能时钟;S3C2410;RTC;IIC
目录
1 实验题目分析 (5)
1.1 问题分析 (5)
1.2 功能分析 (5)
1.3 开发平台及工具介绍 (5)
2 实验概要设计 (5)
2.1 实验基本原理 (5)
2.2 实验电路图 (8)
2.3 实验主要步骤 (9)
3 实验详细过程 (9)
3.1 具体实验过程和内容 (9)
3.2 程序流程图 (10)
3.3 实验和程序问题分析 (11)
4 实验输出界面 (11)
5 总结 (13)
6 参考文献 (14)
7 附录:主要程序代码 (15)
1、实验题目分析
1.1 问题描述
结合实时时钟,IIC(控制小键盘和数码管等)来做具备定期功能的实时时钟。
1.2功能分析
至少完成以下功能:
(1)能显示每秒的时刻
(2)按下功能键能切换显示日期
(3)能设置定时闹钟,定时到产生某种输出
(4)可以扩展考虑加入外部中断,如停止闹钟功能等。
1.3 开发平台及工具介绍
实验器材:CITK2410开发板,JTAG连接线,调试器,并口数据线,串口数据线
开发软件:ADS1.2集成开发环境
2、实验概要设计
2.1 实验基本原理
IIC总线:IIC总线的器件分为主器件和从器件。主器件的功能是启动在总线上传送数据,并产生时钟脉冲,以允许与被寻址的器件进行数据传送。
SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL 线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。
图1 起始和停止信号图
I2C总线进行数据传送时,时钟信号为高电平期间,数据线上的数据必须保持稳定,只有在时钟线上的信号为低电平期间,数据线上的高电平或低电平状态才允许变化。
图2 数据传送时序图
IIC总线(IICSDA、IICSCL)经过VDD33的上拉后,进入ZLG7290
数码管:实验使用的数码管是广州周立公司单片机发展有限公司自行设计的一款数码管显示驱动及键盘扫描管理芯片。下面是介绍该数码管的特点还有电路图(图3):
1 IIC串行接口提供键盘中断信号方便与处理器接口
2 可驱动8 位共阴数码管或64只独立LED 和64个按键
3 可控扫描位数可控任一数码管闪烁
4 提供数据译码和循环移位段寻址等控制
5 8个功能键可检测任一键的连击次数
6 无需外接元件即直接驱LED可扩展驱动电流和驱动电压
7 提供工业级器件多种封装形式PDIP24 SO24
采用24引脚封装引脚图如图所示其引脚功能分述如下:
图3 ZLG7290引脚图
图4 IIC LED控制器连接电路
实时时钟(Real Time Clock):S3C2410提供了一个实时时钟,该时钟使用独立的一路1.8V供电,保证主电源切断时能正常维持RTC工作。S3C2410的RTC 支持两个中断:Time Tick(固定在一个频率内发出的时钟中断)和Alarm中断(在某个时刻产生闹铃中断)。利用这两个中断可以设置每一秒中断一次显示变化时间,用Alarm中断实现闹钟功能。以下为S3C2410内部RTC模块结构图:
图5 S3C2410内部RTC模块结构
特点:1.BCD数:秒、分钟、小时、日期、日、月、年;2.闰年生成器;3.报警功能:报警中断或从掉电模式中唤醒;4.已经解决2000年问题;5.独立电源引脚(RTCVDD);6.支持对于实时内核时间节拍的毫秒节拍时间中断。
2.2 实验电路图
ZLG7290功能电路图:
图6 ZLG7290功能电路图IIC总线接口电路图:
图7 IIC总线接口电路图
图8所示的RTC单元在32.768KHz 频率下振荡的电路
图8 TC单元在32.768KHz 频率下振荡的电路
2.3 实验主要步骤
1.初始化配置(各种寄存器)。
2.编写各种相关的中断程序。
3.主函数调用这几个中断程序。
4.编译程序。
5.使用仿真器调试。
3、实验详细过程
3.1 具体实验过程和内容
(1)实现实时时钟功能
设置rRTCCON、rTICNT、rRTCALM寄存器;ICNT[6:0]=127;可以设置rTICNT=(1<<7)|(127)实现每秒中断一次;以设置闹铃寄存器,例如每秒的第几秒中断一次,实现定时闹钟的功能;设置初始化当前时间;里还包括编写Time Tick 中断和Alarm中断的中断服务程序。
(2)初始化IIC总线,写一个IIC的操作库。包括发送和接受功能。编写可以向ZLG7290发出指令的函数。
(3)编写键盘中断处理程序
通过键盘中断,实现数码管显示日期和时间的切换,还有停止。
(4)使用ADS1.2集成开发环境编译调试程序