[范例教程] LCD12864万年历程序

[复制链接]
 楼主| vivilyly 发表于 2023-10-21 16:00 | 显示全部楼层 |阅读模式


  1. #include "public.h"
  2. #include "lcd12864.h"
  3. #include "ds1302.h"
  4. #include "string.h"

  5. char num=0;
  6. u8 DisplayData[8];

  7. u8 DisData[6];


  8. void delay(u16 i)
  9. {
  10.         while(i--);        
  11. }

  12. void datapros()         
  13. {
  14.   Ds1302ReadTime();
  15.         DisplayData[0] = TIME[2]/16+0x30;                                
  16.         DisplayData[1] = (TIME[2]&0x0f)+0X30;                                 
  17.         DisplayData[2] = 0x2D;
  18.         DisplayData[3] = TIME[1]/16+0X30;                                
  19.         DisplayData[4] = (TIME[1]&0x0f)+0X30;        
  20.         DisplayData[5] = 0x2D;
  21.         DisplayData[6] = TIME[0]/16+0X30;                                
  22.         DisplayData[7] = (TIME[0]&0x0f)+0X30;
  23. }



  24. void datapros2()         
  25. {
  26.   Ds1302ReadTime();
  27.         DisData[0] = TIME[6]/16+0x30;                        //年        
  28.         DisData[1] = (TIME[6]&0x0f)+0X30;                                 
  29.         DisData[2] = TIME[4]/16+0X30;                                
  30.         DisData[3] = (TIME[4]&0x0f)+0X30;        
  31.         DisData[4] = TIME[3]/16+0X30;                                
  32.         DisData[5] = (TIME[3]&0x0f)+0X30;
  33. }


  34. void main()
  35. {        
  36.         Ds1302Init();
  37.         lcd12864_init();//LCD12864初始化

  38.         lcd12864_show_string(0,0,"万年历");//第1行字符串显示
  39.         //lcd12864_show_string(0,1,"2021年12月10日");//第2行字符串显示
  40.         lcd12864_show_string(0,2,"时间:");//第3行字符串显示
  41.         
  42.         while(1)
  43.         {
  44.                 datapros();
  45.                 datapros2();
  46.                 lcd12864_show_string(0,1,DisData);
  47.                 lcd12864_show_string(1,1,"年");
  48.                 lcd12864_show_string(2,1,&DisData[2]);
  49.                 lcd12864_show_string(3,1,"月");
  50.                 lcd12864_show_string(4,1,&DisData[4]);
  51.                 lcd12864_show_string(5,1,"日");
  52.                 lcd12864_show_string(0,3,DisplayData);//第4行字符串显示
  53.                 lcd12864_show_string(4,3,"  ");//第4行字符串显示
  54.         }        
  55. }


tpgf 发表于 2023-11-7 15:02 | 显示全部楼层
这种万年历的误差能达到多少啊
木木guainv 发表于 2023-11-7 15:45 | 显示全部楼层
一般万年历的精度就是到秒级的是吗
磨砂 发表于 2023-11-7 16:48 | 显示全部楼层
万年历的计时基准一般选取什么呢
八层楼 发表于 2023-11-7 19:19 | 显示全部楼层
有没有单片机里边单独的就有万年历这个模块呢
晓伍 发表于 2023-11-7 19:49 | 显示全部楼层
一般使用的万年历的精度要求并不高
xiaoqizi 发表于 2023-11-7 20:20 | 显示全部楼层
一般这种万年历的是不是都需要节电池啊啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

109

主题

1988

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部