收藏 分销(赏)

利用开发板编程完成显示实时时钟功能.doc

上传人:仙人****88 文档编号:11731548 上传时间:2025-08-11 格式:DOC 页数:4 大小:38.04KB 下载积分:10 金币
下载 相关 举报
利用开发板编程完成显示实时时钟功能.doc_第1页
第1页 / 共4页
利用开发板编程完成显示实时时钟功能.doc_第2页
第2页 / 共4页


点击查看更多>>
资源描述
实验三 显示实时时钟 一. 实验目的 1.了解实时时钟的硬件控制原理及设计方法; 2.掌握OK210开发板处理器中RTC模块程序的设计方法。 二.实验设备 硬件:OK210开发板(配有RTC模块),串口线,PC机 软件:Android开发环境,超级终端 三. 实验内容 学习和掌握OK210开发板中处理器中RTC模块的使用,编写应用程序,修改时钟日期及时间的设置,以及使用开发板的串口,在超级终端显示当前系统时间。 四. 实验原理 实时时钟(RTC) 实时时钟(RTC)器件是一种能提供日历/时钟、数据存储等功能的专用集成电路,常用作各种计算机系统的时钟信号源和参数设置存储电路。RTC具有计时准确、耗电低和体积小等特点,特别是在各种嵌入式系统中用于记录事件发生的时间和相关信息,如通信工程,电力自动化、工业控制等自动化程度高的领域的无人值守环境。RTC器件与微控制器之间的接口大都采用连线简单的串行接口,有同步串口和异步串口。 OK210开发板中实时时钟RTC单元是处理器集成的片内外设。由开发板上的后备电池供电,可以在系统电源关闭的情况下运行。RTC发送8位BCD码数据到CPU,传送的数据包括秒,分,小时,星期,月份和年份,CPU通过访问RTC模块的寄存器,首先要设RTCCON的bit为1。CPU通过读取RTC模块中寄存器的值,得到当前的相应的时间值。RTC单元时钟源由外部晶振提供,可以实现闹钟功能。 五. 实验步骤 1.准备实验环境 将开发板与电脑通过串口连接好,笔记本没有串口设备,通过USB串口适配器,并且连接开发主板上的电源接口。 2.串口接收设置 在PC机上运行超级终端串口通信程序,设置超级终端:波特率115200、1位停止位、无校验位、无硬件流控制。 3.将编写好的程序导入到开发板进行运行 通过超级终端输入相应的信息,开发板将显示对应的信息,最终将显示时间信息。 六. 实验程序 时间设置控制程序 void rtc_set(void) { uart_printf(“\n please input 0x and two digit then press Enter,such as 0x66.\n”); uart_printf(“year (0x7DF):”); g_nyear=uart_getintnum(); uart_printf(“month (0x01):”); g_nmonth=uart_getintnum(); uart_printf(“date (0x06):”); g_ndate=uart_getintnum(); uart_printf(“\n1:Sunday 2:Moday 3:Thesday 4:Wednesday 5:Thursday 6:Friday 7:Saturday\n ”); uart_printf(“\n hour (0x09):”); g_nhour=uart_getintnum(); uart_printf(“\n minute (0x1E):”); g_nmin=uart_getintnum(); uart_printf(“\n second (0x00):”); g_nsec=uart_getintnum(); rRTCCON= rRTCCON &~(0xf)丨0x1; rBCDYEAR= rBCDYEAR &~(0xff)丨g_nyear; rBCDMON= rBCDMON &~(0x1f)丨g_nmonth; rBCDDAY= rBCDDAY &~(0x7) 丨g_nweekday; rBCDDATE= rBCDDATE &~(0x3f) 丨g_ndate; rBCDHOUR= rBCDHOUR &~(0x3f) 丨g_nhour; rBCDMIN= rBCDMIN &~(0x7f) 丨g_nmin; rBCDSEC= rBCDSEC &~(0x7f) 丨g_nsec; rRTCCON=0x0; RTC Control disable; } 定时程序代码: #include "config.h"   #define LED (1<<17) void __irq Timer0ISR (void)  {  if((IO0PIN & LED)==0)  {  IO0SET=LED;   }      else IO0CLR=LED;  T0IR=0x01;                              VICVectAddr=0x00;                      } void Timer0Init(void) { T0TCR=0x02; T0PR=0; T0MCR=0x03; T0MR0=Fpclk/2; T0IR=0x01; T0TCR=0x01; } int main(void)  { PINSEL1=PINSEL1 & 0xFFFFFFF3; IO0DIR=LED; IO0SET=LED; Timer0Init(); IRQEnable(); VICIntSelect=VICIntSelect & (~(1 << 4)); VICVectCntl0=0x20|4; VICVectAddr0=(uint32)Timer0ISR; VICIntEnable=1<<4; while(1); return0; } 
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服