i S3C2440 测试程序(二)RTC显示实验-嵌入式MCU技术-电子人社区 -

电子人社区

 找回密码
 立即注册
今日 : 0|主题 : 4177|排名 : 314 
打印 上一主题 下一主题

S3C2440 测试程序(二)RTC显示实验

发表于 2019-1-10 21:18:10 | 86010 只看该作者 回帖奖励 |倒序浏览 |阅读模式

[复制链接]
发表于 2019-1-10 21:18:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
电子人社区网讯:   源代码:
  本文引用地址: http://www.21ic.com/app/mcu/201812/784557.htm
  void RTC_Display(void)
  {
  U16 year ;
  U8 month, day ; // week
  U8 hour, minute, second ;
  RTC_Time_Set() ;
  注: 初始日期和时间的设置
  Uart_Printf( "\nRTC TIME Display, press ESC key to exit !\n" ) ;
  while( Uart_GetKey() != ESC_KEY )
  {
  rRTCCON = 1 ; //RTC read and write enable
  year = 0x2000+rBCDYEAR ; //2012
  month = rBCDMON ; //??
  day = rBCDDATE ; //??
  // week = rBCDDAY ; //????
  hour = rBCDHOUR ; //???±
  minute = rBCDMIN ; //·?
  second = rBCDSEC ; //??
  rRTCCON &= ~1 ; //RTC read and write disable
  Uart_Printf( "RTC time : %04x-%02x-%02x %02x:%02x:%02x\n", year, month, day, hour, minute, second );
  Delay( 900 ) ;
  注:延迟900ms左右,差不多1S显示一次当前时间
  }
  }
  void RTC_Time_Set( void )
  {
  rRTCCON = 1 ; //RTC read and write enable
  注: 在读或写rBCDYEAR这些寄存器时都必须先置一该位
  rBCDYEAR = 0x12 ; //设定年
  rBCDMON = 0x05 ; //设定月
  rBCDDATE = 0x15 ; //设定日
  rBCDDAY = 0x05 ; //设定星期
  rBCDHOUR = 0x12 ; //设定小时
  rBCDMIN = 0x00 ;  //设定分钟
  rBCDSEC = 0x00 ; //设定秒
  注:16进制标志10进制  表示的是0012年 05月 15日,12:00:00
  rRTCCON &= ~1 ; //RTC read and write disable
  }

来源:网络转载

 

                                                   转载请注明:电子人社区

0条回复
跳转到指定楼层

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|电子人物联网  

Copyright 2013 最新最精彩-社区论坛 版权所有 All Rights Reserved.

QQ|电子人物联网  

GMT+8, 2024-5-2 00:21 , Processed in 0.105151 second(s), 33 queries.

快速回复 返回顶部 返回列表