找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1508|回復(fù): 0
收起左側(cè)

基于stc89c52單片機的LCD1602液晶屏顯示DS1302時鐘程序

[復(fù)制鏈接]
ID:934951 發(fā)表于 2023-5-25 15:38 | 顯示全部樓層 |閱讀模式
基于stc89c52單片機的LCD1602液晶屏顯示DS1302時鐘程序
并且可以按鍵調(diào)節(jié)
  1. #include <REG52.H>
  2. #include "stdio.h"
  3. #include "lcd1602.h"
  4. #include "ds1302.h"  

  5. sbit key1 = P3^0;
  6. sbit key2 = P3^1;
  7. sbit key3 = P3^2;
  8. sbit key4 = P3^3;
  9. sbit key5 = P3^4;
  10. sbit key6 = P3^5;
  11. sbit key7 = P3^6;
  12. sbit key8 = P3^7;
  13. void delay_ms(unsigned int ms);

  14. float n = 0,m = 123.56;
  15. xdata unsigned char tab[10];
  16. unsigned char sta;
  17. //unsigned int k = 1234;


  18. //unsigned char int_time;
  19. void main()
  20. {

  21.         LCD_Init();
  22.         Ds1302_Init();
  23.         while(1)
  24.         {
  25.                
  26.                 Ds1302_Read_Time();//先讀取DS1302的數(shù)據(jù)
  27.                 sprintf  (tab,"%02bd:%02bd:%02bd",time_buf1[4],time_buf1[5],time_buf1[6]);                //shi fen miao
  28.                 LCD_Staing(2,5,tab);
  29.                
  30.                 //sprintf  (tab,"20%02bd/%02bd/%02bd",time_buf[1],time_buf[2],time_buf[3]);               
  31.                 //LCD_Staing(1,5,tab);
  32.                
  33.                
  34.                 if(key1 == 0)
  35.                         {
  36.                                  while (!key1);
  37.                                   sta++;
  38.                                 if(sta>5)
  39.                                         sta=0;
  40.                         }
  41.                  if(sta == 0)//時間調(diào)整
  42.                  {
  43.                      if(key2 == 0)
  44.                                                         {
  45.                                                                  while (!key1);
  46.                                                                  time_buf1[4]++;
  47.                                                                 if(time_buf1[4]>23)
  48.                                                                 {
  49.                                                                         time_buf1[4] = 0;
  50.                                                                 }
  51.                                                                 Ds1302_Write_Time();
  52.                                                         }
  53.                                                        
  54.                                                 if(key3 == 0)
  55.                                                 {
  56.                                                          while (!key2);
  57.                                                        
  58.                                                         if(time_buf1[4]>0)
  59.                                                         {
  60.                                                                 time_buf1[4] --;
  61.                                                         }else
  62.                                                         {
  63.                                                         time_buf1[4]=23;
  64.                                                         }
  65.                                                         Ds1302_Write_Time();
  66.                                                 }
  67.                                                
  68.                
  69.                  }
  70.                
  71.                  
  72.                  if(sta == 1)
  73.                  {
  74.                  
  75.                  }
  76.                
  77.                
  78.         }

  79. }

  80. void delay_ms(unsigned int ms)
  81. {
  82.         unsigned char i;
  83.         while(ms--)
  84.         {
  85.                 for(i = 0;i<123;i++);
  86.         }


  87. }



復(fù)制代碼




1602顯示DS1302時鐘.rar

59.81 KB, 下載次數(shù): 36, 下載積分: 黑幣 -5

51單片機

回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表