久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1800|回復: 1
打印 上一主題 下一主題
收起左側

帶鬧鐘的單片機萬年歷程序 測試無誤

[復制鏈接]
跳轉到指定樓層
樓主
ID:233717 發表于 2018-11-28 23:11 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
帶鬧鐘的萬年歷程序測試無誤,希望能幫到大家

單片機源程序如下:
  1. #include "12864.h"
  2. #include "DS1302.h"
  3. #include "KEY.h"
  4. #include "DS18B20.h"
  5. #include<intrins.h>

  6. sfr CLK_DIV=0x97;
  7. uchar clock_page=0;                                                                                  //鬧鐘
  8. //uchar flag=0;
  9. uchar keynum;
  10. char yearH=20,year,month,date,day,hour=0,min=0,sec=0;          //時間變量
  11. //char cursor_xy=0;                                                                                    //光標位置
  12. uchar page=0;                                                                                              //page菜單頁面
  13. code char* Weekday[8]={"  ","一","二","三","四","五","六","日"};
  14. code uchar cursor[6][2]={{0,16},{4,16},{0,32},{4,32},{0,48},{4,48}}; //光標位置
  15. extern code uchar DS1302_Addr[7];
  16. uchar M_num=59,S_num=59;
  17. uchar counter=1;                                                                                   //定時器計數

  18. struct TIME
  19. {
  20.         char x;
  21.         char y;
  22.         char num;
  23.         char max;
  24.         char min;
  25. };
  26. struct TIME  Time[10]=
  27. {
  28.         {1,2,0,99,0},                //年
  29.         {3,2,0,12,1},                //月
  30.         {5,2,0,31,1},                //日

  31.         {1,3,0,23,0},                //時
  32.         {2,3,0,59,0},                //分
  33.         {4,3,0,59,0},                //秒
  34.         {4,4,0,7,1},                //星期

  35.         {1,2,0,23,0},                //鬧鐘小時
  36.         {3,2,0,59,0},                //鬧鐘分鐘
  37.         {3,3,0,1,0}                        //鬧鐘標志
  38. };

  39. uchar Clock_num_hour[3]={0,0,0};                           //三個鬧鐘小時
  40. uchar Clock_num_min[3]={0,0,0};                                   //三個鬧鐘分鐘
  41. uchar Clock_flag[3]={0,0,0};                                   //三個鬧鐘使能標志

  42. void Timer(void)
  43. {
  44.         uint temp;                                                                                                  //溫度
  45.         while(DS18B20_Init())                                                        //DS18B20初始化
  46.         {
  47.                  LCD12864_datas(3,2,"未插入");
  48.                  LCD12864_datas(2,3,"溫度模塊");
  49.                  LCD12864_WriteCom(0x01);                                           //12864清屏(DDRAM)
  50.         }               
  51.         LCD12864_datas(2,1,"年");
  52.         LCD12864_datas(4,1,"月");
  53.         LCD12864_datas(6,1,"日");

  54.         LCD12864_datas(2,4,"星期");

  55.         while(1)
  56.         {

  57.                 if(Clock_flag[0]==1||Clock_flag[1]==1||Clock_flag[2]==1)        LCD12864_DrawPic1616(0,48,0);
  58.                 else                                 LCD12864_DrawPic1616(0,48,1);                                         //鬧鐘標志

  59.                 hour=DS1302_ReadData(HOUR);
  60.                 min=DS1302_ReadData(MIN);
  61.                 sec=DS1302_ReadData(SEC);                                                                                         //讀取時間
  62.        
  63.                 LCD12864_Num3216(0,16,hour>>4);
  64.                 LCD12864_Num3216(1,16,hour&0x0f);            //小時
  65.                 LCD12864_Num3216(2,16,10);                                   //冒號
  66.        
  67.                 LCD12864_Num3216(3,16,min>>4);
  68.                 LCD12864_Num3216(4,16,min&0x0f);                           //分鐘
  69.                 LCD12864_Num3216(5,16,10);                                   //冒號
  70.        
  71.                 LCD12864_Num3216(6,16,sec>>4);
  72.                 LCD12864_Num3216(7,16,sec&0x0f);                           //秒針
  73.        
  74.                 year=DS1302_ReadData(YEAR);
  75.                 month=DS1302_ReadData(MONTH);
  76.                 date=DS1302_ReadData(DATE);                                                                                        //讀取年月日
  77.        
  78.                 LCD12864_SetXY(0,1);
  79.                 LCD12864_WriteData(yearH/10+'0');
  80.                 LCD12864_WriteData(yearH%10+'0');
  81.                 LCD12864_WriteData('0'+(year>>4));
  82.                 LCD12864_WriteData('0'+(year&0x0f)); //年份
  83.        
  84.                 LCD12864_SetXY(3,1);
  85.                 LCD12864_WriteData('0'+(month>>4));
  86.                 LCD12864_WriteData('0'+(month&0x0f));                  //月份
  87.        
  88.                 LCD12864_SetXY(5,1);
  89.                 LCD12864_WriteData('0'+(date>>4));
  90.                 LCD12864_WriteData('0'+(date&0x0f));                  //日期
  91.        
  92.                 LCD12864_datas(4,4,Weekday[DS1302_ReadData(DAY)]);                                        //星期
  93.        
  94.                 temp=DS18B20_ReadTemp();                                                                                        //讀取溫度值
  95.                 LCD12864_SetXY(6,4);
  96.                 LCD12864_WriteData('0'+(temp%10000/1000));
  97.                 LCD12864_WriteData('0'+(temp%1000/100));
  98. //                LCD12864_WriteData('C');                                                                                         
  99.                 LCD12864_DrawPic1616(7,48,2);                                                                                //溫度符號

  100.                 keynum=Key_Scan();
  101.                 if(keynum==13) {page=4;break;}                                                                                //當按鍵按下鍵值為13時,打開菜單
  102.                 LCD12864_Delay1ms(500);               
  103.         }
  104. }

  105. void Cursor(uchar n)
  106. {
  107.         switch(n)
  108.         {
  109.                 case 0:LCD12864_Reverse(1, 0,0);LCD12864_Reverse(2, 0,0);LCD12864_Reverse(3, 0,0);LCD12864_Reverse(4, 0,0);LCD12864_Reverse(5, 0,0);break;
  110.                 case 1:LCD12864_Reverse(1,16,0);LCD12864_Reverse(2,16,0);LCD12864_Reverse(3,16,0);LCD12864_Reverse(4,16,0);LCD12864_Reverse(5,16,0);break;
  111.                 case 2:LCD12864_Reverse(1,32,0);LCD12864_Reverse(2,32,0);LCD12864_Reverse(3,32,0);LCD12864_Reverse(4,32,0);LCD12864_Reverse(5,32,0);break;
  112.                 case 3:LCD12864_Reverse(1,48,0);LCD12864_Reverse(2,48,0);LCD12864_Reverse(3,48,0);LCD12864_Reverse(4,48,0);LCD12864_Reverse(5,48,0);break;
  113.                 default:break;
  114.         }
  115. }


  116. void meun(void)                                                                                                                                //菜單界面
  117. {
  118.         char n=0,late=7;
  119.        
  120.         LCD12864_datas(0,1,"  1.電子時鐘");
  121.         LCD12864_datas(0,2,"  2.調整時間");
  122.         LCD12864_datas(0,3,"  3.設置鬧鐘");
  123.         LCD12864_datas(0,4,"  4.倒計時器");
  124.         Cursor(0);                                                                //初始光標位置
  125.         while(1)
  126.         {       
  127.                 keynum=Key_Scan();
  128.                 late=n;
  129.                 if(keynum==13)                                {page=n;break;}        //確認鍵
  130.                 else if(keynum>=1&&keynum<=4)                n=keynum-1;
  131.                 else if(keynum==14) n++;
  132.                 else if(keynum==15) n--;
  133.                 if(n>3)n=0;if(n<0)n=3;
  134.                 if(n!=late)
  135.                 {
  136.                         Cursor(n);
  137.                         Cursor(late);
  138.                 }               
  139.         }
  140. }


  141. void Time_Cursor(char n)
  142. {
  143.         switch(n)                                                                                   //選光標
  144.         {
  145.                 case 0:LCD12864_Reverse(0,16,0);LCD12864_Reverse(1,16,0);break;
  146.                 case 1:LCD12864_Reverse(3,16,0);break;
  147.                 case 2:LCD12864_Reverse(5,16,0);break;
  148.                 case 3:LCD12864_Reverse(1,32,0);break;
  149.                 case 4:LCD12864_Reverse(2,32,1);LCD12864_Reverse(3,32,2);break;
  150.                 case 5:LCD12864_Reverse(4,32,0);break;
  151.                 case 6:LCD12864_Reverse(4,48,0);break;
  152.                 case 7:break;
  153.         }
  154. }

  155. void Adjust_time(void)
  156. {
  157.         char n=0,late=7;
  158.         LCD12864_datas(0,1,"----時間設置----");
  159.         LCD12864_datas(2,2,"年");
  160.         LCD12864_datas(4,2,"月");
  161.         LCD12864_datas(6,2,"日");
  162.         LCD12864_datas(2,4,"星期");
  163.         hour=DS1302_ReadData(HOUR);
  164.         min=DS1302_ReadData(MIN);
  165.         sec=DS1302_ReadData(SEC);                                                                                         //讀取時間
  166.         year=DS1302_ReadData(YEAR);
  167.         month=DS1302_ReadData(MONTH);
  168.         date=DS1302_ReadData(DATE);                                                                                        //讀取年月日
  169.         day=DS1302_ReadData(DAY);

  170.         LCD12864_SetXY(0,2);
  171.         LCD12864_WriteData(yearH/10+'0');
  172.         LCD12864_WriteData(yearH%10+'0');
  173.         LCD12864_WriteData('0'+(year>>4));
  174.         LCD12864_WriteData('0'+(year&0x0f)); //年份

  175.         LCD12864_SetXY(3,2);
  176.         LCD12864_WriteData('0'+(month>>4));
  177.         LCD12864_WriteData('0'+(month&0x0f));                  //月份

  178.         LCD12864_SetXY(5,2);
  179.         LCD12864_WriteData('0'+(date>>4));
  180.         LCD12864_WriteData('0'+(date&0x0f));                  //日期

  181.         LCD12864_SetXY(1,3);
  182.         LCD12864_WriteData((hour>>4)+'0');
  183.         LCD12864_WriteData((hour&0x0f)+'0');            //小時
  184.         LCD12864_WriteData(':');                                   //冒號

  185.         LCD12864_WriteData((min>>4)+'0');
  186.         LCD12864_WriteData((min&0x0f)+'0');                           //分鐘
  187.         LCD12864_WriteData(':');                                   //冒號

  188.         LCD12864_WriteData((sec>>4)+'0');
  189.         LCD12864_WriteData((sec&0x0f)+'0');                           //秒針
  190.        
  191.         LCD12864_datas(4,4,Weekday[day]);                        //星期

  192.         Time[0].num=(year>>4)*10+(year&0x0f);
  193.         Time[1].num=(month>>4)*10+(month&0x0f);
  194.         Time[2].num=(date>>4)*10+(date&0x0f);       
  195.         Time[3].num=(hour>>4)*10+(hour&0x0f);
  196.         Time[4].num=(min>>4)*10+(min&0x0f);
  197.         Time[5].num=(sec>>4)*10+(sec&0x0f);
  198.         Time[6].num=day;                                                 //將BCD碼轉換為十進制數

  199.         Time_Cursor(0);                                                         //初始光標位置
  200.                        
  201.         while(1)
  202.         {       
  203.                 LCD12864_datas(7,4,"00");
  204.                 late=n;
  205.                 keynum=Key_Scan();
  206.                 if(keynum==13)
  207.                 {
  208.                         LCD12864_datas(7,4,"01");
  209.                         while(1)
  210.                         {
  211.                                 keynum=Key_Scan();
  212.                                 if(keynum==14) Time[n].num++;
  213.                                 if(keynum==15) Time[n].num--;
  214.                                 if(Time[n].num>Time[n].max)Time[n].num=Time[n].min;
  215.                                 if(Time[n].num<Time[n].min)Time[n].num=Time[n].max;
  216.                                 if(n==6)
  217.                                 {
  218.                                          LCD12864_datas(4,4,Weekday[Time[n].num]);                        //星期
  219.                                 }
  220.                                 else
  221.                                 {       
  222.                                         LCD12864_SetXY(Time[n].x,Time[n].y);
  223.                                         if(n==4)  LCD12864_WriteData(':');                                   //冒號
  224.                                         LCD12864_WriteData('0'+(Time[n].num/10));
  225.                                         LCD12864_WriteData('0'+(Time[n].num%10));
  226.                                         if(n==4)  LCD12864_WriteData(':');                                   //冒號
  227.                                        
  228.                                 }
  229.                                 if(keynum==13)
  230.                                 {
  231.                                         DS1302_WriteDat(0x8e,0x00);                   //關閉寫保護
  232.                                         DS1302_WriteDat(DS1302_Addr[n],((Time[n].num/10)<<4)+(Time[n].num%10));
  233.                                         DS1302_WriteDat(0x8e,0x80);                  //開啟寫保護
  234.                                         break;
  235.                                 }
  236.                                 if(keynum==16) break;
  237.                         }
  238.                 }
  239.                 if(keynum==14) n++;
  240.                 if(keynum==15) n--;
  241.                 if(n>6)n=0;if(n<0)n=6;
  242.                 if(n!=late)
  243.                 {
  244.                         Time_Cursor(n);
  245.                         Time_Cursor(late);
  246.                 }
  247.                 if(keynum==16)        
  248.                 {
  249.                         page=4;
  250.                         break;
  251.                 }
  252.         }
  253.        
  254. }

  255. void Clock_Cursor(char n)
  256. {
  257.         switch(n)                                                                                   //選光標
  258.         {
  259.                 case 0:LCD12864_Reverse(1,16,0);break;
  260.                 case 1:LCD12864_Reverse(3,16,0);break;
  261.                 case 2:LCD12864_Reverse(3,32,0);break;
  262.                 case 3:break;
  263.         }
  264. }

  265. void Clock(uchar k)
  266. {
  267.         char n=0,late=3;
  268.         LCD12864_WriteCom(0x01);           //12864清屏

  269.         Time[7].num=Clock_num_hour[k];        //小時
  270.         Time[8].num=Clock_num_min[k];        //分鐘
  271.         Time[9].num=Clock_flag[k];                //標志

  272.         LCD12864_datas(0,1,"----鬧鐘設置----");

  273.         LCD12864_SetXY(2,2);
  274.         LCD12864_WriteData(':');                                   //冒號

  275.         LCD12864_SetXY(1,2);
  276.         LCD12864_WriteData((Time[7].num>>4)+'0');
  277.         LCD12864_WriteData((Time[7].num&0x0f)+'0');            //小時

  278.         LCD12864_SetXY(3,2);
  279.         LCD12864_WriteData((Time[8].num>>4)+'0');
  280.         LCD12864_WriteData((Time[8].num&0x0f)+'0');                           //分鐘

  281.         LCD12864_datas(0,3,"鬧鐘:");
  282.         if(Time[9].num==0)         LCD12864_datas(3,3,"關");
  283.         else                                 LCD12864_datas(3,3,"開");
  284.        
  285.         Time[7].num=(Time[7].num>>4)*10+(Time[7].num&0x0f);
  286.         Time[8].num=(Time[8].num>>4)*10+(Time[8].num&0x0f);
  287.         Time[9].num=(Time[9].num>>4)*10+(Time[9].num&0x0f);

  288.         Clock_Cursor(0);                                      //初始光標位置
  289.         while(1)
  290.         {
  291.                 LCD12864_datas(7,4,"00");
  292.                 keynum=Key_Scan();
  293.                 late=n;

  294.                 if(keynum==13)
  295.                 {
  296.                         LCD12864_datas(7,4,"01");
  297.                         n=n+7;
  298.                         while(1)
  299.                         {
  300.                                 keynum=Key_Scan();
  301.                                 if(keynum==14) Time[n].num++;
  302.                                 if(keynum==15) Time[n].num--;
  303.                                 if(Time[n].num>Time[n].max)Time[n].num=Time[n].min;
  304.                                 if(Time[n].num<Time[n].min)Time[n].num=Time[n].max;
  305.                                
  306.                                 if(Time[9].num==0)         LCD12864_datas(3,3,"關");
  307.                                 else                                 LCD12864_datas(3,3,"開");
  308.                                
  309.                                 LCD12864_SetXY(1,2);
  310.                                 LCD12864_WriteData((Time[7].num/10)+'0');
  311.                                 LCD12864_WriteData((Time[7].num%10)+'0');            //小時

  312.                                 LCD12864_SetXY(3,2);
  313.                                 LCD12864_WriteData((Time[8].num/10)+'0');
  314.                                 LCD12864_WriteData((Time[8].num%10)+'0');                           //分鐘
  315.                                 if(keynum==13)
  316.                                 {       
  317.                                         break;
  318.                                 }
  319.                                 if(keynum==16)
  320.                                 {
  321.                                         break;
  322.                                 }
  323.                         }
  324.                         n=n-7;       
  325.                 }        
  326.                 if(keynum==14) n++;
  327.                 if(keynum==15) n--;
  328.                 if(n>2)n=0;if(n<0)n=2;
  329.                 if(n!=late)
  330.                 {
  331.                         Clock_Cursor(n);
  332.                         Clock_Cursor(late);
  333.                 }
  334.                 if(keynum==16)        
  335.                 {
  336.                         page=2;                                                                  //返回菜單
  337.                         Time[7].num=((Time[7].num/10)<<4)+(Time[7].num%10);
  338.                         Time[8].num=((Time[8].num/10)<<4)+(Time[8].num%10);
  339.                         Time[9].num=((Time[9].num/10)<<4)+(Time[9].num%10);

  340.                         Clock_num_hour[k]=Time[7].num;        //小時
  341.                         Clock_num_min[k]=Time[8].num;        //分鐘
  342.                         Clock_flag[k]=Time[9].num;                //標志

  343.                         if(Clock_flag[k]!=0)
  344.                         {
  345.                                 TMOD|=0x01;
  346.                                 EA=1;
  347.                                 ET0=1;
  348.                                 TH0=0x3c;
  349.                                 TL0=0xb0;                                           //定時50ms
  350.                                 TR0=1;
  351.                         }
  352.                         break;
  353.                 }
  354.         }       
  355. }

  356. void Select_Clock_Cursor(uchar n)
  357. {
  358.         switch(n)
  359.         {
  360.                 case 0:LCD12864_Reverse(2,16,0);LCD12864_Reverse(3,16,0);LCD12864_Reverse(4,16,0);LCD12864_Reverse(5,16,0);break;
  361.                 case 1:LCD12864_Reverse(2,32,0);LCD12864_Reverse(3,32,0);LCD12864_Reverse(4,32,0);LCD12864_Reverse(5,32,0);break;
  362.                 case 2:LCD12864_Reverse(2,48,0);LCD12864_Reverse(3,48,0);LCD12864_Reverse(4,48,0);LCD12864_Reverse(5,48,0);break;
  363.                 default:break;
  364.         }
  365. }

  366. void Select_Clock(void)
  367. {
  368.         char n=0,late=4;
  369.         LCD12864_datas(0,1,"----鬧鐘選擇----");
  370.         LCD12864_datas(0,2,"    1.鬧鐘01");
  371.         LCD12864_datas(0,3,"    2.鬧鐘02");
  372.         LCD12864_datas(0,4,"    3.鬧鐘03");
  373.         Select_Clock_Cursor(0);                                                                //初始光標位置
  374.         while(1)
  375.         {       
  376.                 keynum=Key_Scan();
  377.                 late=n;
  378.                 if(keynum==13)                {clock_page=n;page=5;break;}        //確認鍵
  379.                 else if(keynum>=1&&keynum<=4)                n=keynum-1;
  380.                 else if(keynum==14) n++;
  381.                 else if(keynum==15) n--;
  382.                 else if(keynum==16) {page=4;        break;}
  383.                 if(n>2)n=0;if(n<0)n=2;
  384.                 if(n!=late)
  385.                 {
  386.                         Select_Clock_Cursor(n);
  387.                         Select_Clock_Cursor(late);
  388.                 }               
  389.         }
  390. }

  391. void Countdown(void)
  392. {       
  393.         LCD12864_datas(0,1,"----倒計時器----");
  394.        
  395.         while(1)
  396.         {
  397.                 keynum=Key_Scan();

  398.                 LCD12864_SetXY(3,3);

  399.                 LCD12864_WriteData((M_num/10)+'0');
  400.                 LCD12864_WriteData((M_num%10)+'0');                           //分鐘
  401.                 LCD12864_WriteData(':');                                   //冒號

  402.                 LCD12864_WriteData((S_num/10)+'0');
  403.                 LCD12864_WriteData((S_num%10)+'0');                           //分鐘

  404.                 if(keynum==13)   
  405.                 {
  406.                         TMOD|=0x10;
  407.                         EA=1;
  408.                         ET1=1;
  409.                         TH1=0x3c;
  410.                         TL1=0xb0;                                           //定時50ms
  411.                         TR1=1;
  412.                 }
  413.                 else if(keynum==2)                M_num--;         //減低分鐘
  414.                 else if(keynum==3)                S_num--;         //減低秒針
  415.                 else if(keynum==14)                                         //重置計數值
  416.                                 {
  417.                                         S_num=59;
  418.                                         M_num=59;       
  419.                                 }
  420.                 else if(keynum==15)                                         //停止計時
  421.                                 {
  422.                                         TR1=0;       
  423.                                 }
  424.                 else if(keynum==16) {page=4;        break;}          //退出到菜單頁

  425.                 if(S_num==0)                                                 //判斷時間越界
  426.                 {
  427.                         S_num=59;
  428.                         M_num--;
  429.                 }
  430.                 if(M_num==0&&S_num==0)
  431.                 {
  432.                         while(1)
  433.                         {       
  434.                                 Beep_key();
  435.                                 Delay10ms(5);
  436.                                 if(Key_Scan()!=0)
  437.                                 {
  438.                                         TR1=0;
  439.                                         S_num=59;
  440.                                         M_num=59;               
  441.                                         break;
  442.                                 }
  443.                                                
  444.                         }
  445.                 }
  446.         }

  447. }

  448. void time_2(void) interrupt 3
  449. {
  450.         TH1=0x3c;
  451.         TL1=0xb0;                                           //定時50ms
  452.         counter++;
  453.         if(counter==20)
  454.         {
  455.                 counter=0;
  456.                 S_num--;
  457.         }

  458. }

  459. void main(void)
  460. {
  461.         CLK_DIV=0x03;                                   //八分頻
  462.         LCD12864_Init();                           //12864初始化
  463.         LCD12864_CleanScreen();                   //12864清屏
  464.         DS1302_Init();                                   //DS1302初始化
  465.         while(1)
  466.         {
  467.                 LCD12864_CleanScreen();                                                   //12864清屏(CGRAM)
  468.                 LCD12864_WriteCom(0x01);                                           //12864清屏(DDRAM)
  469.                 if(page==0)                 Timer();                                //page=0時,數字鐘界面                
  470.                 else if(page==1)        Adjust_time();                        //page=1時,調整時間界面        
  471.                    else if(page==2)        Select_Clock();                        //page=2時,系統設置界面
  472.                 else if(page==3)        Countdown();                                //page=3時,倒計時器頁面
  473.                 else if(page==4)        meun();                                        //page=4時,菜單頁面
  474.                 else if(page==5)        Clock(clock_page);                                        //page=4時,菜單頁面         
  475.         }       
  476.        
  477. }

  478. void time_1(void) interrupt 1
  479. {
  480.         uchar i,H,M;
  481.         H=DS1302_ReadData(HOUR);
  482.         M=DS1302_ReadData(MIN);
  483.         TH0=0x3c;
  484.         TL0=0xb0;                                           //定時50ms
  485.         for(i=0;i<3;i++)
  486.         {       
  487.                 if(Clock_flag[i]==1)
  488.                         while(H==Clock_num_hour[i]&&M==Clock_num_min[i])
  489.                         {       
  490.                                 Clock_flag[i]=0;
  491.                                 Beep_key();
  492.                                 Delay10ms(5);
  493.                                 if(Key_Scan()!=0)         break;               
  494.                         }
  495.         }
  496.         if(Clock_flag[0]==0&&Clock_flag[1]==0&&Clock_flag[2]==0)
  497.         {
  498.                 TR0=0;
  499. //                Time[9].num=0;
  500. //                Clock_flag[0]=1;
  501. //                Clock_flag[1]=1;
  502. //                Clock_flag[2]=1;
  503.         }

  504. }
復制代碼

所有資料51hei提供下載:
帶鬧鐘萬年歷程序.zip (117.86 KB, 下載次數: 36)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:782897 發表于 2020-6-19 13:27 來自手機 | 只看該作者
仿真都沒有?
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: h片免费在线观看 | 亚洲一区二区三区高清 | 手机在线观看 | 日韩国产一区二区 | 激情五月综合网 | 一区二区三区欧美在线观看 | 免费污视频| 男插女下体视频 | 久久亚洲天堂 | 欧美精品日韩精品国产精品 | av一级久久 | 欧美成人精品 | 成人免费网站www网站高清 | 毛片一级网站 | 影音先锋亚洲资源 | 亚洲一区二区在线播放 | 国产一区二区美女 | 人人人干 | 亚洲h在线观看 | 97国产一区二区精品久久呦 | 日韩一区二区av | 欧美成人精品一区二区男人看 | 一区二区久久 | 国产一区二区欧美 | 91伊人网| 中文字幕综合 | 欧美一级片在线看 | 欧洲毛片 | 欧美久久一区 | 国产精品福利视频 | 久久久久久成人 | 亚洲一区成人 | 欧美精品一二三区 | 天堂成人国产精品一区 | 日日夜夜天天干 | 国产精品视频二区三区 | 久久国品片 | 999视频| 高清视频一区二区三区 | 日本不卡一区 | 国产成人精品一区二区三区在线 |