• 大小: 125KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-07
  • 语言: 其他
  • 标签:

资源简介

这是一份很好的ds1302万年历,其时间、日期都可调!

资源截图

代码片段和文件信息

/**********************ET-C52实验开发板例程************************
*  名称:DS18B20温度传感器与1602液晶显示屏的综合应用
*  公司:武汉东方智达科技有限公司
*  网站:www.east027.com    http://shop73255907.taobao.com/
*  编写:东方智达研究员
*  日期:2011--08--20
*   QQ : 836730083
*  晶振: 11.0594MHZ
*  内容:DS1302时钟芯片的应用,将时钟数据用1602液晶屏显示。
******************************************************************/

#include 
#include “ds1302.h“
#include “lcd1602.h“
#include “key.h“
//sbit wela=P2^7;
//sbit dula=P2^6;
uchar tab_date[14]=“2012-11-16 TUE“;//表示年月日星期
uchar tab_time[8]=“00:00:00“;//表示时分秒
uchar tiao;
uchar msecond;
uchar hourminseckeysition;
//uchar kong[]=“   “;

//------------------------------------------
//              数据转换
//------------------------------------------
void trans()
{
 tab_date[2]=tab_1302[6]/10+‘0‘;     //年十位
 tab_date[3]=tab_1302[6]%10+‘0‘;     //年个位
 tab_date[5]=tab_1302[4]/10+‘0‘;     //月十位
 tab_date[6]=tab_1302[4]%10+‘0‘;     //月个位
 tab_date[8]=tab_1302[3]/10+‘0‘;     //日十位
 tab_date[9]=tab_1302[3]%10+‘0‘;     //日个位

 tab_time[0]=tab_1302[2]/10+‘0‘;     //小时十位
 tab_time[1]=tab_1302[2]%10+‘0‘;     //小时个位
 tab_time[3]=tab_1302[1]/10+‘0‘;     //分十位
 tab_time[4]=tab_1302[1]%10+‘0‘;     //分个位
 tab_time[6]=tab_1302[0]/10+‘0‘;     //秒十位
 tab_time[7]=tab_1302[0]%10+‘0‘;     //秒个位
}

//------------------------------------------
//              星期显示
//------------------------------------------
void week()
{
 uchar i;
 if(tab_1302[5]==1)
 {i=7;}
 else 
 {i=tab_1302[5]-1;}      /*实时时钟里的值是6,但是2008/08/08是星期五,所以减1,
                             Proteus的问题??  */
 switch(i)
  {
   case 1: tab_date[11]=‘M‘;tab_date[12]=‘O‘;tab_date[13]=‘N‘;  break;
   case 2: tab_date[11]=‘T‘;tab_date[12]=‘U‘;tab_date[13]=‘E‘;  break;
   case 3: tab_date[11]=‘W‘;tab_date[12]=‘E‘;tab_date[13]=‘D‘;  break;
   case 4: tab_date[11]=‘T‘;tab_date[12]=‘H‘;tab_date[13]=‘U‘;  break;
   case 5: tab_date[11]=‘F‘;tab_date[12]=‘R‘;tab_date[13]=‘I‘;  break;
   case 6: tab_date[11]=‘S‘;tab_date[12]=‘T‘;tab_date[13]=‘A‘;  break;
   case 7: tab_date[11]=‘S‘;tab_date[12]=‘U‘;tab_date[13]=‘N‘;  break;
   default: ;  break;  //其它情况  
 }
}
void getweek(uchar week1uchar t[])
{
uchar i;
  if(week1==1)
  i=7;
  else 
  i=week1-1;      /*实时时钟里的值是6,但是2008/08/08是星期五,所以减1,
                             Proteus的问题??  */
 switch(i)
  {
   case 1: t[0]=‘M‘;t[1]=‘O‘;t[2]=‘N‘;  break;
   case 2: t[0]=‘T‘;t[1]=‘U‘;t[2]=‘E‘;  break;
   case 3: t[0]=‘W‘;t[1]=‘E‘;t[2]=‘D‘;  break;
   case 4: t[0]=‘T‘;t[1]=‘H‘;t[2]=‘U‘;  break;
   case 5: t[0]=‘F‘;t[1]=‘R‘;t[2]=‘I‘;  break;
   case 6: t[0]=‘S‘;t[1]=‘T‘;t[2]=‘A‘;  break;
   case 7: t[0]=‘S‘;t[1]=‘U‘;t[2]=‘N‘;  break;
   default: ;  break;  //其它情况  
 }
}
void cls(uchar i) //表示打印出i个空格
{
// lcd_wcom(addr); //重新设定显示地址为0xc4即下排第5位
for(;i>0;i--)
{
lcd_wdat(‘ ‘);
lcddelay(1);
}
}
//------------------------------------------
//              lcd液晶屏显示
//-----------------------------------------

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-06-02 12:26  1602与DS1302万年历\
     文件       92197  2012-11-18 13:24  1602与DS1302万年历\Last Loaded 万年历 (2).DBK
     文件      100453  2012-11-16 09:36  1602与DS1302万年历\Last Loaded 万年历.DBK
     文件        6376  2009-05-07 14:37  1602与DS1302万年历\STARTUP.A51
     文件       14048  2012-11-16 13:04  1602与DS1302万年历\STARTUP.LST
     文件         749  2012-11-16 13:04  1602与DS1302万年历\STARTUP.OBJ
     文件        3909  2012-11-16 13:12  1602与DS1302万年历\ds1302.h
     文件        1172  2012-11-18 12:38  1602与DS1302万年历\key.h
     文件        1231  2012-11-16 15:51  1602与DS1302万年历\lcd1602.h
     文件       39730  2012-11-20 00:42  1602与DS1302万年历\lcd1602万年历
     文件       52200  2012-11-20 00:42  1602与DS1302万年历\lcd1602万年历.M51
     文件       13040  2012-11-20 00:42  1602与DS1302万年历\lcd1602万年历.hex
     文件          67  2012-11-20 00:42  1602与DS1302万年历\lcd1602万年历.lnp
     文件         208  2013-03-10 13:27  1602与DS1302万年历\lcd1602万年历.plg
     文件       57490  2013-03-09 21:43  1602与DS1302万年历\lcd1602万年历.uvopt
     文件       13912  2012-11-18 13:24  1602与DS1302万年历\lcd1602万年历.uvproj
     文件       57494  2012-12-04 22:14  1602与DS1302万年历\lcd1602万年历_uvopt.bak
     文件       13908  2012-11-16 19:50  1602与DS1302万年历\lcd1602万年历_uvproj.bak
     文件       92181  2012-11-18 13:28  1602与DS1302万年历\万年历 (2).DSN
     文件        1221  2013-03-09 21:43  1602与DS1302万年历\万年历 (2).PWI
     文件       50428  2012-11-20 00:42  1602与DS1302万年历\万年历.LST
     文件       47647  2012-11-20 00:42  1602与DS1302万年历\万年历.OBJ
     文件          36  2012-11-20 00:42  1602与DS1302万年历\万年历.__i
     文件       17626  2012-11-20 00:42  1602与DS1302万年历\万年历.c
     文件         134  2012-11-15 21:35  1602与DS1302万年历\万年历.txt

评论

共有 条评论