wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

六數碼管DS1302時鐘

查看數: 12258 | 評論數: 13 | 收藏 10
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2015-11-20 07:54

正文摘要:

手上有幾個別的機器拆下來的數碼管,閑時沒事做了個數碼鐘,F發網上大家共同學習。數碼管共陽,用掃描方式,段碼用的74LS47,位碼用138。秒閃獨立控制。

回復

ID:112806 發表于 2016-4-7 19:54
好東西,好好研究一下
ID:86421 發表于 2015-12-4 19:38
消抖用的是延時。顯示用定時器控制。
ID:98321 發表于 2015-12-4 19:26
如何消抖?貌似你的顯示的很清楚
ID:86421 發表于 2015-12-3 21:04
實在對不起,我沒有畫電路圖。畫那個還得安軟件,我只是平時玩玩,所以電腦上就沒有安。
ID:97771 發表于 2015-12-1 20:41
大神有電路圖嗎
ID:86421 發表于 2015-11-23 18:14
是呀,可我是學俄語的,比不了你們現在的大學生了呀。不過這東西整著挺有意思,但得時間了。
ID:96682 發表于 2015-11-22 12:46
LZ 已經很棒了,還那么謙虛。學這玩意不懂英文感覺太費勁了。
ID:86421 發表于 2015-11-20 20:28
我是一個初學者,興趣使然。從網上下來的程序,好多都不合適或是編不過。這是在多個網上程序的基礎上合一起的,挺費勁的,和初學者一起交流。感謝網上發程序的朋友,學習了。
ID:86421 發表于 2015-11-20 08:03
自我感覺還是較為詳實的,且有一定的可讀性。如果數碼管不一樣,可修改顯示方式及顯示函數兩個主程序中的內容,其它的就不用動了。如哪個高手再給加個紅外控制進去,我也學習學習。先感謝了。
ID:86421 發表于 2015-11-20 08:00

  1. #ifndef __DS1302_H__
  2. #define __DS1302_H__

  3. #include <reg52.h>
  4. #include<intrins.h>

  5. sbit SCK=P1^4;               
  6. sbit SDA=P1^5;               
  7. sbit RST=P1^6;
  8. //復位腳
  9. #define RST_CLR        RST=0//電平置低
  10. #define RST_SET        RST=1//電平置高


  11. //雙向數據
  12. #define IO_CLR        SDA=0//電平置低
  13. #define IO_SET        SDA=1//電平置高
  14. #define IO_R        SDA  //電平讀取


  15. //時鐘信號
  16. #define SCK_CLR        SCK=0//時鐘信號
  17. #define SCK_SET        SCK=1//電平置高


  18. #define ds1302_sec_add                        0x80                //秒數據地址
  19. #define ds1302_min_add                        0x82                //分數據地址
  20. #define ds1302_hr_add                        0x84                //時數據地址
  21. #define ds1302_date_add                        0x86                //日數據地址
  22. #define ds1302_month_add                0x88                //月數據地址
  23. #define ds1302_day_add                        0x8a                //星期數據地址
  24. #define ds1302_year_add                        0x8c                //年數據地址
  25. #define ds1302_control_add                0x8e                //控制數據地址
  26. #define ds1302_charger_add                0x90                                          
  27. #define ds1302_clkburst_add                0xbe

  28. extern unsigned char time_buf1[8];//空年月日時分秒周
  29. extern unsigned char time_buf[8] ;//空年月日時分秒周
  30. /*------------------------------------------------
  31.            向DS1302寫入一字節數據
  32. ------------------------------------------------*/
  33. void Ds1302_Write_Byte(unsigned char addr, unsigned char d);
  34. /*------------------------------------------------
  35.            從DS1302讀出一字節數據
  36. ------------------------------------------------*/
  37. unsigned char Ds1302_Read_Byte(unsigned char addr) ;
  38. /*------------------------------------------------
  39.            向DS1302寫入時鐘數據
  40. ------------------------------------------------*/
  41. void Ds1302_Write_Time(void) ;
  42. /*------------------------------------------------
  43.            從DS1302讀出時鐘數據
  44. ------------------------------------------------*/
  45. void Ds1302_Read_Time(void)  ;
  46. /*------------------------------------------------
  47.                 DS1302初始化
  48. ------------------------------------------------*/
  49. void Ds1302_Init(void);

  50. #endif
復制代碼
ID:86421 發表于 2015-11-20 08:00

  1. #include "ds1302.h"

  2. unsigned char time_buf1[8] = {20,15,10,1,8,8,8,6};//空年月日時分秒周
  3. unsigned char time_buf[8] ;                         //空年月日時分秒周
  4. /*------------------------------------------------
  5.            向DS1302寫入一字節數據
  6. ------------------------------------------------*/
  7. void Ds1302_Write_Byte(unsigned char addr, unsigned char d)
  8. {

  9.         unsigned char i;
  10.         RST_SET;       
  11.        
  12.         //寫入目標地址:addr
  13.         addr = addr & 0xFE;     //最低位置零
  14.         for (i = 0; i < 8; i ++)
  15.             {
  16.                 if (addr & 0x01)
  17.                     {
  18.                         IO_SET;
  19.                         }
  20.                 else
  21.                     {
  22.                         IO_CLR;
  23.                         }
  24.                 SCK_SET;
  25.                 SCK_CLR;
  26.                 addr = addr >> 1;
  27.                 }
  28.        
  29.         //寫入數據:d
  30.         for (i = 0; i < 8; i ++)
  31.            {
  32.                 if (d & 0x01)
  33.                     {
  34.                         IO_SET;
  35.                         }
  36.                 else
  37.                     {
  38.                         IO_CLR;
  39.                         }
  40.                 SCK_SET;
  41.                 SCK_CLR;
  42.                 d = d >> 1;
  43.                 }
  44.         RST_CLR;                                        //停止DS1302總線
  45. }
  46. /*------------------------------------------------
  47.            從DS1302讀出一字節數據
  48. ------------------------------------------------*/

  49. unsigned char Ds1302_Read_Byte(unsigned char addr)
  50. {

  51.         unsigned char i;
  52.         unsigned char temp;
  53.         RST_SET;       

  54.         //寫入目標地址:addr
  55.         addr = addr | 0x01;//最低位置高
  56.         for (i = 0; i < 8; i ++)
  57.             {
  58.              
  59.                 if (addr & 0x01)
  60.                    {
  61.                         IO_SET;
  62.                         }
  63.                 else
  64.                     {
  65.                         IO_CLR;
  66.                         }
  67.                 SCK_SET;
  68.                 SCK_CLR;
  69.                 addr = addr >> 1;
  70.                 }
  71.        
  72.         //輸出數據:temp
  73.         for (i = 0; i < 8; i ++)
  74.             {
  75.                 temp = temp >> 1;
  76.                 if (IO_R)
  77.                    {
  78.                         temp |= 0x80;
  79.                         }
  80.                 else
  81.                    {
  82.                         temp &= 0x7F;
  83.                         }
  84.                 SCK_SET;
  85.                 SCK_CLR;
  86.                 }
  87.        
  88.         RST_CLR;        //停止DS1302總線
  89.         return temp;
  90. }

  91. /*------------------------------------------------
  92.            向DS1302寫入時鐘數據
  93. ------------------------------------------------*/
  94. void Ds1302_Write_Time(void)
  95. {
  96.      
  97.     unsigned char i,tmp;
  98.         for(i=0;i<8;i++)
  99.             {                  //BCD處理
  100.                 tmp=time_buf1[i]/10;
  101.                 time_buf[i]=time_buf1[i]%10;
  102.                 time_buf[i]=time_buf[i]+tmp*16;
  103.             }
  104.         Ds1302_Write_Byte(ds1302_control_add,0x00);                        //關閉寫保護
  105.         Ds1302_Write_Byte(ds1302_sec_add,0x80);                                //暫停
  106.         //Ds1302_Write_Byte(ds1302_charger_add,0xa9);                        //涓流充電
  107.         Ds1302_Write_Byte(ds1302_year_add,time_buf[1]);                //年
  108.         Ds1302_Write_Byte(ds1302_month_add,time_buf[2]);        //月
  109.         Ds1302_Write_Byte(ds1302_date_add,time_buf[3]);                //日
  110.         Ds1302_Write_Byte(ds1302_day_add,time_buf[7]);                //周
  111.         Ds1302_Write_Byte(ds1302_hr_add,time_buf[4]);                //時
  112.         Ds1302_Write_Byte(ds1302_min_add,time_buf[5]);                //分
  113.         Ds1302_Write_Byte(ds1302_sec_add,time_buf[6]);                //秒
  114.         Ds1302_Write_Byte(ds1302_day_add,time_buf[7]);                //周
  115.         Ds1302_Write_Byte(ds1302_control_add,0x80);                        //打開寫保護
  116. }

  117. /*------------------------------------------------
  118.            從DS1302讀出時鐘數據
  119. ------------------------------------------------*/
  120. void Ds1302_Read_Time(void)  
  121. {
  122.                unsigned char i,tmp;
  123.         time_buf[1]=Ds1302_Read_Byte(ds1302_year_add);                //年
  124.         time_buf[2]=Ds1302_Read_Byte(ds1302_month_add);                //月
  125.         time_buf[3]=Ds1302_Read_Byte(ds1302_date_add);                //日
  126.         time_buf[4]=Ds1302_Read_Byte(ds1302_hr_add);                //時
  127.         time_buf[5]=Ds1302_Read_Byte(ds1302_min_add);                //分
  128.         time_buf[6]=(Ds1302_Read_Byte(ds1302_sec_add))&0x7F;//秒
  129.         time_buf[7]=Ds1302_Read_Byte(ds1302_day_add);                //周


  130.         for(i=0;i<8;i++)
  131.            {           //BCD處理
  132.                 tmp=time_buf[i]/16;
  133.                 time_buf1[i]=time_buf[i]%16;
  134.                 time_buf1[i]=time_buf1[i]+tmp*10;
  135.            }
  136. }

  137. /*------------------------------------------------
  138.                 DS1302初始化
  139. ------------------------------------------------*/
  140. void Ds1302_Init(void)
  141. {
  142.        
  143.         RST_CLR;                        //RST腳置低
  144.         SCK_CLR;                        //SCK腳置低
  145.     Ds1302_Write_Byte(ds1302_sec_add,0x00);                                 
  146. }
復制代碼
ID:86421 發表于 2015-11-20 07:59
上面是主程序,為了發著方便合一起了。下面是DS1032的C、H程序,網上多的是,在些也發了吧。
ID:86421 發表于 2015-11-20 07:57
  1. /*-----------------------------------------------
  2.   名稱:DS1302時鐘數碼管顯示可調
  3.   編寫:LI
  4.   日期:2015.11
  5.   修改:無
  6.   內容:DS1302實時時鐘數碼管顯示,時間和日期切換顯示 三按鍵控制
  7.         時間格式xx-xx-xx
  8.                 日期格式xx-xx-xx
  9.                 周秒格式-x-   xx
  10. ------------------------------------------------*/
  11. #include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
  12. #include "ds1302.h"
  13. #define DataPort P0 //定義數據端口 程序中遇到DataPort 則用P0 替換

  14. #define uchar unsigned char
  15. #define uint unsigned int
  16. sbit BEEP=P1^0;
  17. sbit led=P0^7;
  18. sbit SET=P3^5;
  19. sbit UP=P3^6;
  20. sbit DOWN=P3^7;
  21. unsigned char id=0,re_disp=0;  //定義用到的變量,id為調整模式用,不為0時表示調整模式,調整哪個量由id值確定
  22.            //時間到取反flag標志位,re_disp記數200次共10s,調整狀態下按鍵無操作10s自動返回正常顯示狀態
  23. bit hour,minute,second,flag,year,month,date,day;    //定義位變量,hour,minute,second分別為調整時閃爍標志位,flag 500ms取反一次,調整位閃爍及冒號閃爍用


  24. bit ReadTimeFlag;//定義讀時間標志

  25. unsigned char code dofly_DuanMa[10]={0xf0,0xf8,0xf1,0xf9,0xf2,0xfa,0xf3,0xfb,0xf4,0xfc};// 顯示段碼值0~9
  26. unsigned char code dofly_WeiMa[]={0xef,0xdf,0xcf,0xbf,0xaf,0x9f};//分別對應相應的數碼管點亮,即位碼
  27. unsigned char TempData[8]; //存儲顯示值的全局變量


  28. void Display(unsigned char FirstBit,unsigned char Num);//數碼管顯示函數
  29. void Scan_Key(void);//按鍵
  30. void Init_Timer0(void);//定時器0初始化
  31. void Init_Timer1(void);        //定時器1初始化
  32. void display8(void);//顯示方式
  33. void id_case1_key(void);//鍵值處理
  34. void Set_id(unsigned char ,unsigned char);        //加減變量函數
  35. unsigned char displaynum; //顯示方式標志
  36. /*------------------------------------------------
  37.                     主函數
  38. ------------------------------------------------*/
  39. void main ()
  40. {
  41.        
  42.         Init_Timer0();
  43.         Init_Timer1();
  44.         if(!UP&!DOWN)Ds1302_Init();   //如果同時按下UP和DOWN鍵則初始化1302,該語句在while(1)前,只執行一次,需要復位,防止誤操作
  45.         Ds1302_Write_Time();

  46.         while (1)         //主循環
  47.           {
  48.       id_case1_key();
  49.       Scan_Key();

  50.           }

  51. }


  52. ------------------------------------------------*/
  53. /*------------------------------------------------
  54. 顯示函數,用于動態掃描數碼管
  55. 輸入參數 FirstBit 表示需要顯示的第一位,如賦值2表示從第三個數碼管開始顯示
  56. 如輸入0表示從第一個顯示。
  57. Num表示需要顯示的位數,如需要顯示99兩位數值則該值輸入2
  58. ------------------------------------------------*/
  59. void Display(unsigned char FirstBit,unsigned char Num)
  60. {
  61.       static unsigned char i=0;
  62.           

  63.            DataPort=0;   //清空數據,防止有交替重影

  64.       DataPort=dofly_WeiMa[i+FirstBit]&TempData[i];

  65.       
  66.            i++;
  67.        if(i==Num)
  68.               i=0;


  69. }
  70. /*------------------------------------------------
  71.                     定時器0初始化子程序
  72. ------------------------------------------------*/
  73. void Init_Timer0(void)
  74. {
  75. TMOD |= 0x01;          //使用模式1,16位定時器,使用"|"符號可以在使用多個定時器時不受影響                     
  76. //TH0=0x00;              //給定初值
  77. //TL0=0x00;
  78. EA=1;            //總中斷打開
  79. ET0=1;           //定時器中斷打開
  80. TR0=1;           //定時器開關打開
  81. }
  82. /*------------------------------------------------
  83.                     定時器1初始化子程序
  84. ------------------------------------------------*/
  85. void Init_Timer1(void)
  86. {
  87. TMOD |= 0x10;          //使用模式1,16位定時器,使用"|"符號可以在使用多個定時器時不受影響
  88. //TH1=0x00;              //給定初值,這里使用定時器最大值從0開始計數一直到65535溢出
  89. // TL1=0x00;
  90. EA=1;            //總中斷打開
  91. ET1=1;           //定時器中斷打開
  92. TR1=1;           //定時器開關打開
  93. }
  94. /*------------------------------------------------
  95.                  定時器0中斷子程序
  96. ------------------------------------------------*/
  97. void Timer0_isr(void) interrupt 1
  98. {
  99. static unsigned int num,a;
  100. TH0=(65536-2000)/256;                  //重新賦值 2ms
  101. TL0=(65536-2000)%256;

  102. Display(0,6);       // 調用數碼管掃描
  103. num++;
  104. if(num==50)        //大致100ms
  105.    {
  106.     num=0;
  107.     ReadTimeFlag=1; //讀標志位置1
  108.         }

  109.            a++;                                  //秒閃
  110.    if(a<=250)led=1;
  111.    if(a>250)led=0;
  112.    if(a==500)a=0;

  113. }
  114. /*------------------------------------------------
  115.                  定時器1中斷子程序
  116. ------------------------------------------------*/
  117. void Timer1_isr(void) interrupt 3 using 1   //中斷處理程序,主要用于取反標志位,返回正常顯示狀態
  118. {
  119.    unsigned char timecount;
  120.    TH1=(65535-50000)/256; //50ms定時
  121.    TL1=(65535-50000)%256;  
  122.    timecount++;re_disp++;
  123.           
  124.            if(timecount>9)
  125.              {
  126.            timecount=0;
  127.               flag=~flag;
  128.              }

  129.    if(re_disp>150){re_disp=0;if(id)id=0;}

  130. }
  131. /*---------------------------------------------------------
  132.           顯示方式
  133. ---------------------------------------------------------*/
  134. void display8(void)
  135. {
  136.   if(ReadTimeFlag==1)
  137.   {
  138.    ReadTimeFlag=0;
  139.    Ds1302_Read_Time();
  140.   }


  141.    if(displaynum==0) //顯示時間
  142.     {
  143.         if(flag&hour)       //如hour為1表示調整時,flag為1時不顯示
  144.           {
  145.            TempData[0]=0;   //這句中的0xff是數碼管的滅碼
  146.            TempData[1]=0;  
  147.           }
  148.           else         //flag為0時顯示,產生閃爍效果,下同
  149.           {
  150.           TempData[0]=dofly_DuanMa[time_buf1[4]/10];//時        //數據的轉換,
  151.           TempData[1]=dofly_DuanMa[time_buf1[4]%10];//因我們采用數碼管0~9的顯示,將數據分開
  152.           }

  153.         if(flag&minute)         //分
  154.           {
  155.            TempData[2]=0;   //這句中的0xff是數碼管的滅碼
  156.            TempData[3]=0;
  157.           }
  158.         else
  159.           {
  160.            TempData[2]=dofly_DuanMa[time_buf1[5]/10];//分
  161.            TempData[3]=dofly_DuanMa[time_buf1[5]%10];
  162.            }

  163.         if(flag&second)         //秒
  164.           {
  165.            TempData[4]=0;   //這句中的0xff是數碼管的滅碼
  166.            TempData[5]=0;  
  167.           }
  168.         else
  169.           {
  170.            TempData[4]=dofly_DuanMa[time_buf1[6]/10];//秒
  171.            TempData[5]=dofly_DuanMa[time_buf1[6]%10];       
  172.           }
  173.          }

  174.         if(displaynum==1)//顯示日期
  175.          {
  176.          led=0;
  177.          if(flag&year)
  178.          {
  179.           TempData[0]=0;   //這句中的0xff是數碼管的滅碼
  180.           TempData[1]=0;  
  181.          }
  182.          else
  183.          {
  184.          TempData[0]=dofly_DuanMa[time_buf1[1]/10];//年                       
  185.          TempData[1]=dofly_DuanMa[time_buf1[1]%10];
  186.          }
  187.          if(flag&month)
  188.          {
  189.           TempData[2]=0;   //這句中的0xff是數碼管的滅碼
  190.           TempData[3]=0;  
  191.      }
  192.          else
  193.          {                                                    
  194.          TempData[2]=dofly_DuanMa[time_buf1[2]/10];//月
  195.          TempData[3]=dofly_DuanMa[time_buf1[2]%10];
  196.          }
  197.          if(flag&date)
  198.          {
  199.           TempData[4]=0;   //這句中的0xff是數碼管的滅碼
  200.           TempData[5]=0;  
  201.          }
  202.          else
  203.          {
  204.          TempData[4]=dofly_DuanMa[time_buf1[3]/10];//日
  205.          TempData[5]=dofly_DuanMa[time_buf1[3]%10];       
  206.          }
  207.          }


  208.         if(displaynum==2)//顯示周  秒
  209.          {
  210.          led=1;
  211.          if(flag&day)
  212.          {
  213.          TempData[1]=0xff;
  214.          }
  215.          else
  216.          {
  217.          TempData[0]=0xff;                               
  218.          TempData[1]=dofly_DuanMa[time_buf1[7]%10];//周
  219.          TempData[2]=0xff;
  220.          TempData[3]=0xff;
  221.          TempData[4]=dofly_DuanMa[time_buf1[6]/10];//秒
  222.          TempData[5]=dofly_DuanMa[time_buf1[6]%10];       
  223.          }
  224.          }

  225. }

  226. /*------------------------------------------------
  227.             鍵盤檢測函數
  228. ------------------------------------------------*/
  229. void Scan_Key(void)    //鍵盤檢測函數
  230. {
  231.   display8();    //程序開頭調用顯示函數
  232.   if(!SET)   
  233.   {
  234.    while(!SET);display8(); //等待按鍵釋放,如一直按下一直調用顯示函數,防止顯示中斷
  235.    re_disp=0;    //清除記數,重新開始10s定時
  236.    id++;
  237.    if(id>7)id=0;  //id加1,后面根據id值對應調整項目
  238.   }
  239.   if(id==0){hour=0;minute=0;second=0;year=0;month=0;date=0;day=0;} //根據id值跳到相應處理函數
  240.   if(id==1){displaynum=0;hour=1;minute=0;second=0;year=0;month=0;date=0;day=0;id_case1_key();}  //id為1,選擇調整小時位,閃爍標志位置1,然后跳到鍵盤處理函數,下同
  241.   if(id==2){displaynum=0;hour=0;minute=1;second=0;year=0;month=0;date=0;day=0;id_case1_key();}
  242.   if(id==3){displaynum=0;hour=0;minute=0;second=1;year=0;month=0;date=0;day=0;id_case1_key();}
  243.   if(id==4){displaynum=1;hour=0;minute=0;second=0;year=1;month=0;date=0;day=0;id_case1_key();}
  244.   if(id==5){displaynum=1;hour=0;minute=0;second=0;year=0;month=1;date=0;day=0;id_case1_key();}
  245.   if(id==6){displaynum=1;hour=0;minute=0;second=0;year=0;month=0;date=1;day=0;id_case1_key();}
  246.   if(id==7){displaynum=2;hour=0;minute=0;second=0;year=0;month=0;date=0;day=1;id_case1_key();}
  247. }

  248. /*-----------------------------------------------------
  249.                 鍵盤處理函數
  250. -----------------------------------------------------*/

  251. void id_case1_key(void)      //鍵盤處理函數,只有按下set鍵時才會進入,
  252. {
  253.    display8();        
  254.    if (!DOWN) //減少
  255.        {
  256.          while(!DOWN)display8();   //等待按鍵釋放,如一直按下一直調用顯示函數,防止顯示中斷
  257.          re_disp=0;      //清除記數,重新開始10s定時
  258.          Set_id(id,0);     //跳到加減判斷函數,下同,
  259.        }
  260.    
  261.     if (!UP)  //增加
  262.        {
  263.          while(!UP)display8();
  264.          re_disp=0;
  265.          Set_id(id,1);   
  266.        }

  267. }

  268. /*-------------------------------------------------------
  269. //根據選擇調整相應項目并寫入DS1302
  270. --------------------------------------------------------*/
  271. void Set_id(unsigned char sel,unsigned char sel_1)  //執行調整項目的函數
  272. {
  273.            if(sel==0)         //時間、日期、周顯示選擇
  274.         {
  275.           if(sel_1==0)
  276.           {
  277.           displaynum++;
  278.       if(displaynum==3)
  279.       displaynum=0;
  280.           }
  281.           else
  282.           {
  283.           displaynum++;
  284.       if(displaynum==3)
  285.       displaynum=0;

  286.           }
  287.         }



  288.     if(sel==1)        //調時
  289.      {
  290.          if(sel_1==0)
  291.                  {
  292.                  time_buf1[4]--;if(time_buf1[4]==24)time_buf1[4]=0;
  293.                  }
  294.                  else
  295.                  {
  296.                  time_buf1[4]++;if(time_buf1[4]==24)time_buf1[4]=0;
  297.                  }
  298.          Ds1302_Write_Time();
  299.          }

  300.          if(sel==2)        //調分
  301.      {
  302.          if(sel_1==0)
  303.                  {
  304.                  time_buf1[5]--;if(time_buf1[5]==59)time_buf1[5]=0;
  305.                  }
  306.                  else
  307.                  {
  308.                  time_buf1[5]++;if(time_buf1[5]==59)time_buf1[5]=0;
  309.                  }
  310.          Ds1302_Write_Time();
  311.          }

  312.     if(sel==3)          //調秒
  313.      {
  314.          if(sel_1==0)
  315.                  {
  316.                  time_buf1[6]--;if(time_buf1[6]==0)time_buf1[6]=0;
  317.                  }
  318.                  else
  319.                  {
  320.                  time_buf1[6]++;if(time_buf1[6]==0)time_buf1[6]=0;
  321.                  }
  322.          Ds1302_Write_Time();
  323.          }

  324.              if(sel==4)          //調年
  325.      {
  326.          if(sel_1==0)
  327.                  {
  328.                  time_buf1[1]--;if(time_buf1[1]==99)time_buf1[1]=15;
  329.                  }
  330.                  else
  331.                  {
  332.                  time_buf1[1]++;if(time_buf1[1]==99)time_buf1[1]=15;
  333.                  }
  334.          Ds1302_Write_Time();
  335.          }

  336.              if(sel==5)          //調月
  337.      {
  338.          if(sel_1==0)
  339.                  {
  340.                  time_buf1[2]--;if(time_buf1[2]==13)time_buf1[2]=1;
  341.                  }
  342.                  else
  343.                  {
  344.                  time_buf1[2]++;if(time_buf1[2]==13)time_buf1[2]=1;
  345.                  }
  346.          Ds1302_Write_Time();
  347.          }

  348.              if(sel==6)          //調日
  349.      {
  350.          if(sel_1==0)
  351.                  {
  352.                  time_buf1[3]--;if(time_buf1[3]==32)time_buf1[3]=1;
  353.                  }
  354.                  else
  355.                  {
  356.                  time_buf1[3]++;if(time_buf1[3]==32)time_buf1[3]=1;
  357.                  }
  358.          Ds1302_Write_Time();
  359.          }
  360.             
  361.                
  362.                  if(sel==7)          //調周
  363.      {
  364.          if(sel_1==0)
  365.                  {
  366.                  time_buf1[7]--;if(time_buf1[7]==8)time_buf1[7]=1;
  367.                  }
  368.                  else
  369.                  {
  370.                  time_buf1[7]++;if(time_buf1[7]==8)time_buf1[7]=1;
  371.                  }
  372.          Ds1302_Write_Time();
  373.          }

  374. }
復制代碼

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
日韩精品极品视频免费观看| 国产乱人伦精品一区二区三区| 欧美日韩国产一区中文午夜| 美女www一区二区| 国产一区二区三区黄网站| 未来日记在线观看| 美女脱光衣服与内衣内裤一区二区三区四区| 国产精品扒开腿做爽爽| 国产日韩欧美精品在线观看| 亚洲在线一区二区| 久久精品视频网站| 欧美一区二区三区免费大片 | 国产精品无码一区| 国产精品无码一区二区三区| 欧美视频第三页| 日韩欧美99| 国产一区二区在线免费| 久久久国产精品亚洲一区| 欧美人狂配大交3d怪物一区| 中文字幕亚洲区| 国产成人综合在线| 国产精品入口| 日韩a一区二区| 999久久久国产999久久久| 成人免费网址| 在线一区观看| 天天噜噜噜噜噜噜| 精品一区二区三区五区六区| 国产麻豆一精品一男同| 日本少妇激情舌吻| 欧美最猛性xxxx| 亚洲韩国青草视频| 欧美在线综合视频| 亚洲欧美日韩中文播放| 成人听书哪个软件好| 国产精品日韩精品欧美精品| 久久免费大视频| 久久动漫网址| 五月天色综合| 欧美黑人粗大| 国产一二在线播放| 宅男网站在线免费观看| 极品白浆推特女神在线观看| 777视频在线观看| 交videos老少配com| 麻豆国产原创| 日本电影中文字幕| 五月色婷婷综合| 一二三区中文字幕| 久久久999久久久| 91精品国产乱码在线观看| 欧美爱爱免费视频| 我想看黄色大片| 国产又粗又猛又爽又黄av| 在线黄色免费网站| 日韩av手机在线播放| 337p日本欧洲亚洲大胆张筱雨| 久久久精品麻豆| 国产精品wwwww| 乱子伦视频在线看| 久久人妻精品白浆国产| 国产男女免费视频| 青青在线免费观看| 欧美性猛交内射兽交老熟妇| 国产午夜精品视频一区二区三区| 中文字幕一区综合| 强伦女教师2:伦理在线观看| 国产女主播av| www.国产在线播放| 国产 福利 在线| 成年人在线看片| 亚洲综合欧美在线| 制服下的诱惑暮生| 日韩成人av一区二区| 日韩免费高清一区二区| 国产aaaaaaaaa| 精品国产视频在线观看| 国产在线视频二区| 中文字幕免费观看| 精品国产一区二区三区麻豆小说 | 最近中文字幕免费| 97在线观看免费高| 国产五月天婷婷| 中文字幕日日夜夜| 亚洲第一大网站| 亚洲在线偷拍自拍| 69精品视频| 亚色视频在线观看| 在线观看av网站| 日本中文字幕在线2020| 97天天综合网| 国产欧美视频在线| 九一成人免费视频| 韩国在线一区| 精品在线观看视频| 久久久蜜桃精品| 一区二区三区欧美日| 欧美这里有精品| 亚洲欧美日韩网| 久久天堂电影网| 国产精品久久77777| 久久99影院| 欧美爱爱视频免费看| 亚洲欧美日韩一二三区| 美国美女黄色片| japanese国产在线观看| 狠狠鲁男人天堂| japanese日本护士撒尿| 精品视频三区| 亚洲精品永久免费视频| 国产图片一区| 1024日韩| 99久久精品国产观看| 伊人夜夜躁av伊人久久| 制服丝袜国产精品| 久青草国产97香蕉在线视频| 国产在线视频2019最新视频| 日韩欧美在线一区二区| 国产wwwxx| 91禁男男在线观看| 91国产免费视频| 夜夜骑日日操| 中文在线www| 激情都市亚洲| 欧美电影免费播放| 韩国三级在线一区| 樱桃视频在线观看一区| 欧美tickling挠脚心丨vk| 久久久久久亚洲精品中文字幕| 91久久国产综合久久蜜月精品| 亚洲精品少妇一区二区| 国产福利短视频| 青青成人在线| 在线视频一二区| 精品成人久久久| 欧美精品se| 中文字幕免费在线| 91伊人久久| 在线成人超碰| 久久久不卡影院| 91精品国产一区二区三区| 久久久久久久久久久av| 欧美日韩精品久久| 一二三级黄色片| 日韩亚洲综合在线| 国产精品久久久久国产a级| 精品一区二区成人免费视频| 欧美夫妇交换xxx| 波多野结衣二区三区| 青青草草视频| 国产嫩草在线视频| 久久精品99久久无色码中文字幕| 国产成人免费视频一区| 一本大道综合伊人精品热热| 精品国产一区二区三区久久久| 国产亚洲精品美女久久久m| 色婷婷狠狠18| 一区二区三区在线观看av| 尤物在线观看| 久久99亚洲网美利坚合众国| 婷婷亚洲综合| 中文字幕一区二区三区不卡在线| 日韩大片在线观看视频| 翡翠波斯猫1977年美国| xxx国产在线观看| 久久精品视频5| 香蕉521av成人网| 欧美舌奴丨vk视频| 欧美亚洲网站| 亚洲成av人片| 午夜剧场成人观在线视频免费观看| 一区二区三区av| a一级免费视频| 国产精品合集一区二区| 欧美xxxx免费虐| 伊人激情综合| 亚洲福利视频一区二区| 国产69精品久久久久9| 久久国产午夜精品理论片最新版本| 国产精品三区在线观看| 女人被狂躁到高潮视频免费网站| 在线成人av观看| 日本亚洲欧美天堂免费| 欧美人体做爰大胆视频| 91亚洲精品在线观看| 精产国品一区二区三区| 免费看日韩av| 99热这里只有精品9| 女人体1963| 欧美激情99| 久久天堂av综合合色蜜桃网| 亚洲欧美在线x视频| 亚洲精品9999| 日本少妇做爰全过程毛片| 香艳视频网站| 免费成人三级| 欧美国产日韩精品免费观看| 日韩在线视频观看正片免费网站| 在线观看免费91| 国产成人一区二区三区影院在线| av手机在线看| 亚洲福利天堂| 亚洲视频 欧洲视频| 97超级碰碰人国产在线观看| 日韩爱爱小视频| 亚洲av成人精品毛片| 国产白丝在线观看| 精品综合免费视频观看| 亚洲人高潮女人毛茸茸| 欧美 国产 精品| 中文字幕有码无码人妻av蜜桃| 在线观影网站| 欧美日韩免费| 666欧美在线视频| 欧美性天天影院| 国产午夜小视频| 男人久久精品| 亚洲精品男同| 精品国产sm最大网站免费看| 中文字幕一区二区三区四区五区六区 | 又污又黄的网站| 瑟瑟视频在线| 日本不卡高清视频| 亚洲乱码av中文一区二区| 99久热在线精品视频| 国产精品无码一区二区桃花视频| 日韩免费啪啪| 免费欧美在线视频| 亚洲午夜精品视频| www.国产区| 欧美日本色图| 成人av综合网| 五月婷婷色综合| 精品视频免费观看| 97超碰人人干| 五月婷婷在线观看| 精一区二区三区| 欧美成人sm免费视频| 日韩在线不卡一区| 日本免费看黄| 操欧美老女人| 在线不卡免费av| 无码毛片aaa在线| 精品国产无码一区二区| 九色porny自拍视频在线观看 | 在线观看国产视频一二三| 日皮视频在线观看| 国产一区二区三区免费| 欧美另类极品videosbestfree| 日韩精品视频一二三| 九色91蝌蚪| 欧美日韩激情| 欧美一区二区不卡视频| 日韩欧美猛交xxxxx无码| 蜜臀av午夜精品| 91麻豆精品国产综合久久久| 一区二区三区在线视频播放| 亚洲一级大片| 国产中文字幕一区二区| 黄色录像特级片| 国产精品成人在线| zjzjzjzjzj亚洲女人| 午夜av噜噜噜噜噜噜| 精品视频国产| 欧美性猛交xxxx乱大交退制版| 小说区图片区图片区另类灬| 成人h动漫精品一区二区无码| 日本在线中文字幕一区二区三区| 亚洲日本一区二区| 日本高清视频一区二区三区| 国产精品自偷自拍| 3d动漫一区二区三区在线观看| 亚洲国产精品影院| 欧美h视频在线观看| 中国女人内谢69视频| 亚洲警察之高压线| 欧美zozozo| 手机看片国产精品| 在线观看视频免费| 另类综合日韩欧美亚洲| 日产日韩在线亚洲欧美| 日韩av黄色片| 78精品国产综合久久香蕉| 高跟丝袜欧美一区| 黄色www网站| jizzjizzjizz美国| 日韩电影免费一区| 国产成人中文字幕| 精品久久久久久久久久久久久久久久久久| 台湾佬中文娱乐网欧美电影| 五月天一区二区三区| 国产乱子伦精品无码专区| 国产91色蝌蚪视频| 免费日韩av片| 欧美在线亚洲在线| 婷婷激情五月综合| 免费观看在线一区二区三区| 日韩欧美精品三级| 北京富婆泄欲对白| 高清在线观看av| 国产精品视频线看| 秋霞在线一区二区| 很很鲁在线视频播放影院| 日韩国产精品大片| 91视频国产一区| 黄色av网站免费在线观看| 成久久久网站| 久久久亚洲国产天美传媒修理工| 久久久久久久国产精品毛片| 色成人免费网站| 9191久久久久久久久久久| 韩国一区二区三区四区| 在线观看美女网站大全免费| 国产精品九色蝌蚪自拍| 欧美a级免费视频| 三级黄色的网站| 成人激情动漫在线观看| 日本一区二区三区精品视频| 国产一级影片| 美女视频第一区二区三区免费观看网站 | 全部免费的黄色毛片| 首页综合国产亚洲丝袜| 国产欧美一区二区三区视频 | 日本高清www| caoprom在线| 欧美日韩国产在线播放网站| 亚洲一区和二区| 羞羞的视频在线看| 日本道色综合久久| 日本一区二区在线观看视频| 青青在线视频| 欧美丰满高潮xxxx喷水动漫| av在线播放网址| 丰满的护士2在线观看高清| 欧美日本一区二区| 成年人免费观看视频网站| 自拍偷拍欧美视频| 亚洲精品久久久久久下一站| 蜜臀av午夜精品久久| 久久av偷拍| 久久777国产线看观看精品| 中国a一片一级一片| 日韩成人激情| 国产精品久久久久aaaa九色| 亚洲日本色图| 日本不卡123| 日本视频一区二区在线观看| 俺也去.com| 欧美国产一区二区| 手机在线免费观看毛片| www在线视频| 日韩精品一区二区三区视频播放| 亚洲欧美综合7777色婷婷| 人人爱人人干婷婷丁香亚洲| 久久久电影免费观看完整版| 一本到在线视频| 国产日韩欧美一区二区三区在线观看| www.久久艹| 天天色天天草天天射| 亚洲蜜桃精久久久久久久| 亚洲熟女乱综合一区二区| 亚洲高清黄色| xxxxx91麻豆| 亚洲精品综合久久| 麻豆精品新av中文字幕| 天堂v在线视频| 国产专区在线播放| 欧美一三区三区四区免费在线看| 成年人视频软件| 亚洲系列另类av| 国产一区玩具在线观看| 日日爱夜夜操| 中文字幕在线免费不卡| 三大队在线观看| 四虎国产精品永久在线国在线| 美女福利视频一区| 日韩在线观看视频一区二区三区| 九九**精品视频免费播放| 成年人午夜免费视频| 美女尤物在线视频| 夜夜嗨av一区二区三区四区| 国产精品嫩草影院精东| 日本视频一区二区三区| 国产欧美精品aaaaaa片| 26uuu亚洲电影在线观看| 日韩大陆毛片av| 性做久久久久久久久久| 国产美女精品在线| 九色porny91| 青青热久免费精品视频在线18| 色综合色综合网色综合| 欧美成人高清手机在线视频| 国产日韩视频一区二区三区| 特黄特黄一级片| 在线视频亚洲欧美中文| 国产精品亚洲第一区| 免费的av电影| 欧美午夜在线观看| 亚洲熟妇无码乱子av电影| 久久久久久夜|