当前位置:文档之家› 实时时钟实验报告

实时时钟实验报告

嵌入式系统开发实验报告
实验四:实时时钟实验
班级:应电112
姓名:张志可
学号: 110415151 指导教师:李静
实验日期: 2013年9月25日
实验四:实时时钟实验
一、实验目的
1. 了解实时时钟的硬件控制原理及设计方法。

2. 掌握 S3C2410X 处理器的 RTC 模块程序设计方法。

二、实验设备
硬件:Embest ARM 教学实验系统,ULINK USB-JTAG 仿真器套件,PC 机。

软件:MDK 集成开发环境,Windows 98/2000/NT/XP。

三、实验原理
1. 实时时钟(RTC)
实时时钟(RTC)器件是一种能提供日历/时钟、数据存储等功能的专用集成电路,常用作各种计算机系统的时钟信号源和参数设置存储电路。

RTC 具有计时准确、耗电低和体积小等特点,特别是在各种嵌入式系统中用于记录事件发生的时间和相关信息,如通信工程、电力自动化、工业控制等自动化程度高的领域的无人值守环境。

随着集成电路技术的不断发展,RTC 器件的新品也不断推出,这些新品不仅具有准确的 RTC,还有大容量的存储器、温度传感器和 A/D 数据采集通道等,已成为集 RTC、数据采集和存储于一体的综合功能器件,特别适用于以微控制器为核心的嵌入式系统。

RTC 器件与微控制器之间的接口大都采用连线简单的串行接口,诸如 I2C、SPI、MICROWIRE 和CAN 等串行总线接口。

这些串口由2~3 根线连接,分为同步和异步。

2. S3C2410X 实时时钟(RTC)单元
S3C2410X 实时时钟(RTC)单元是处理器集成的片内外设。

由开发板上的后备电池供电,可以在系统电源关闭的情况下运行。

RTC 发送8 位BCD 码数据到CPU。

传送的数据包括秒、分、小时、星期、日期、月份和年份。

RTC 单元时钟源由外部32.768KHz 晶振提供,可以实现闹钟(报警)功能。

四、实验内容
学习和掌握 Embest ARM 教学实验平台中 RTC 模块的使用,编写应用程序,修改时钟日期及时间的设置,以及使用 EMBEST ARM 教学系统的串口,在超级终端显示当前系统时间。

实时时钟外围电路
五、实验参考程序
/*********************************************************************** **********************
* name:
rtc_display
* func:
display rtc value
* para:
none
* ret:
none
* modify:
* comment:
************************************************************************ *********************/
void rtc_display(void)
{
INT32T nTmp;
// INT32T nKey;
uart_printf("\n Display current Date and time: \n");
rRTCCON = 0x01;
// No reset, Merge BCD counters, 1/32768, RTC Control enable
- 155 -
uart_printf(" Press any key to exit.\n");
while(!uart_getkey())
{
while(1)
{
if(rBCDYEAR==0x99)
g_nYear = 0x1999;
else
g_nYear = 0x2000 + rBCDYEAR;
g_nMonth = rBCDMON;
g_nWeekday = rBCDDAY;
g_nDate = rBCDDATE;
g_nHour = rBCDHOUR;
g_nMin = rBCDMIN;
g_nSec = rBCDSEC;
if(g_nSec!=nTmp) // Same time is not display
{
nTmp = g_nSec;
break;
}
}
uart_printf("%02x:%02x:%02x%10s, %02x/%02x/%04x\r",
g_nHour,g_nMin,g_nSec,day[g_nWeekday],g_nMonth,g_nDate,g_nYear);
}
rRTCCON = 0x0; //No reset, Merge BCD counters, 1/32768, RTC Control disable(for power consumption)
uart_printf("\n\n Exit display.\n");
}。

相关主题