<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發(fā)網(wǎng)

      電子開發(fā)網(wǎng)電子設(shè)計(jì) | 電子開發(fā)網(wǎng)Rss 2.0 會(huì)員中心 會(huì)員注冊(cè)
      搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> 單片機(jī) >> 正文

      c51單片機(jī)萬年歷的c程序

      作者:佚名    文章來源:本站原創(chuàng)    點(diǎn)擊數(shù):    更新時(shí)間:2012/5/12

      求一個(gè)單片機(jī)可以顯示陽歷的年、月、日、星期、小時(shí).分.秒。陰歷也能顯示,標(biāo)明是否為閏年。  用LCD液晶顯示,可以調(diào)整時(shí)間。。。。。

      這有個(gè)數(shù)碼管顯示的程序
      以前做的,。。
      你可以在我這個(gè)程序上修改修改
      包括鍵盤掃描,還有動(dòng)態(tài)顯示
      。
      。

      【。。!
      #include <REG51.H>
      //常量參數(shù)
      #define TMODW 0x01;
      #define SCONW 0x00;
      #define xplay 0x04;//顯示分頻系數(shù)
      //顯示位選
      unsigned char data stb;
      //鍵值緩存,0xFF無鍵命令
      unsigned char data keynum;
      //顯示字型變量
      unsigned char data play[8];
      //工作參數(shù)
      unsigned char data l,m;
      //字型碼
      unsigned char code BCDPC[10]=
      {0x3F,0x06,0x5B,0x4F,0x66,
      0x6D,0x7D,0x07,0x7F,0x6F};
      //字位碼
      unsigned char code STBCODE[8]=
      {0x01,0x02,0x04,0x08,
      0x10,0x20,0x40,0x80 };
      //400Hz xplay分頻計(jì)數(shù)
      unsigned char data cttime;
      //時(shí)鐘參數(shù)
      unsigned char data hr,min,sec,sec100;
      //調(diào)整時(shí)鐘參數(shù)(時(shí)鐘“走”)
      void ct1()
      {sec100++;
      if (sec100==100)
      {sec100=0;sec++;
      if (sec==60)
      {sec=0;min++;
      if (min==60)
      {min=0;hr++;
      if (hr==24) hr=0;
      }
      }
      }
      }
      //時(shí)鐘參數(shù)→LED 顯示緩存7段參數(shù)轉(zhuǎn)換函數(shù);
      void xcplay()
      {play[0]=BCDPC[hr/10];
      play[1]=BCDPC[hr%10];
      play[2]=BCDPC[min/10];
      play[3]=BCDPC[min%10];
      play[4]=BCDPC[sec/10];
      play[5]=BCDPC[sec%10];
      play[6]=BCDPC[sec100/10];
      play[7]=BCDPC[sec100%10];
      }
      //顯示掃描
      void cplay()
      {T0=1;//T0-高電平消隱
      T1=0;//T1-低電平準(zhǔn)備發(fā)脈沖前沿
      TI=0;//?
      P1=0;//?
      SBUF=STBCODE[stb];
      while (TI==0)
      {
      };
      TI=0;
      SBUF=play[stb];
      while (TI==0)
      {
      };
      T1=1;
      T0=0;
      stb=++stb&0x07;
      }

      extern void cthl0();
      //定時(shí)器0中斷處理程序
      void ct0(void) interrupt 1 using 1
      {cthl0();
      cttime--;
      if (cttime==0)
      {cttime=xplay;
      ct1();//調(diào)用時(shí)鐘“走”函數(shù)
      xcplay();//調(diào)用時(shí)鐘參數(shù)→Led顯示緩存轉(zhuǎn)換函數(shù)
      };
      cplay();
      }
      void w20ms()
      {for (l=0;l<41;l++)
      {for (m=0;m<81;m++)
      {
      }
      }
      }
      void tkey()
      {P1=0xF0;
      keynum=0xFF;
      if (P1!=0xF0)
      {w20ms();
      P1=0xF0;
      if (P1!=0xF0)
      {P1=0xFE;
      switch (P1)
      {case 0xEE:keynum=0;break;
      case 0xDE:keynum=1;break;
      case 0xBE:keynum=2;break;
      case 0x7E:keynum=3;break;
      }
      P1=0xFD;
      switch (P1)
      {case 0xED:keynum=4;break;
      case 0xDD:keynum=5;break;
      case 0xBD:keynum=6;break;
      case 0x7B:keynum=7;break;
      }
      P1=0xFB;
      switch (P1)
      {
      case 0xEB:keynum=8;break;
      }
      };
      };
      P1=0x00;
      }
      void command()
      {switch (keynum)
      {
      case 0:{hr=hr+1;
      if (hr==24)
      hr=0;
      }
      break;


      case 1:{min=min+1;
      if (min==60)
      min=0;
      }
      break;


      case 2:{sec=sec+1;
      if (sec==60)
      sec=0;
      }
      break;

      case 3:{sec100=0;
      }
      break;


      case 4:{
      while(!(P1=0xED))
      {
      hr=0;
      min=0;
      sec=0;
      }
      }
      break;

      case 5:{hr=hr-1;
      if (hr==00)
      hr=24;
      }
      break;
      case 6:{min=min-1;
      if (min==00)
      min=59;
      }
      break;

      case 7:{sec=sec-1;
      if (sec==00)
      sec=0;
      }
      break;

      case 0xFF:break;
      }
      keynum=0xFF;
      }
      main ()
      { hr=8;
      min=5;
      sec=8;
      sec100=0;
      TMOD=TMODW;
      SCON=SCONW;
      ET0=1;
      TR0=1;
      EA=1;
      cttime=xplay;
      while (1)
      {w20ms();
      tkey();
      command();

      };
      }

      Tags:單片機(jī),萬年歷,程序  
      責(zé)任編輯:admin
      相關(guān)文章列表
      基于AT89C52單片機(jī)控制的雙軸太陽自動(dòng)跟蹤系統(tǒng)設(shè)計(jì)
      ESP32單片機(jī)入門篇
      超聲波測(cè)距+溫度+報(bào)警的單片機(jī)代碼_51單片機(jī)超聲波測(cè)距C語言程序
      七段數(shù)碼管顯示原理研究_數(shù)碼管顯示0~9對(duì)應(yīng)的段碼
      單片機(jī)C語言編程入門教程  流水燈程序示例
      基于51單片機(jī)—多功能秒表,多功能計(jì)時(shí)器C語言程序
      STC89C52單片機(jī)數(shù)字電流表電壓表源碼與電路圖  51單片機(jī)電流電壓
      自學(xué)stm32單片機(jī)四個(gè)步驟,實(shí)用又高效!
      先學(xué)51還是先學(xué)STM32?STM32和51單片機(jī)的區(qū)別
      單片機(jī)最小系統(tǒng)介紹及電路設(shè)計(jì) STM32單片機(jī)最小系統(tǒng)
      什么是PIC單片機(jī)
      為什么51單片機(jī)的晶振一般使用11.0592? 51單片機(jī)常用波特率初值表
      51單片機(jī)寄存器功能一覽表
      單片機(jī)寫延時(shí)程序的幾種方法
      自學(xué)單片機(jī)編程之中斷與時(shí)鐘程序
      哈佛結(jié)構(gòu)與馮·諾伊曼結(jié)構(gòu)區(qū)別以及X86體系
      單片機(jī)萬年歷:公歷日期與農(nóng)歷日期的相互轉(zhuǎn)換程序
      AVR定時(shí)器1的CTC模式設(shè)置
      單片機(jī)超聲波視覺識(shí)別系統(tǒng)的測(cè)量軟件開發(fā),超聲波測(cè)距
      LCD1602的單片機(jī)驅(qū)動(dòng)詳解
      請(qǐng)文明參與討論,禁止漫罵攻擊,不要惡意評(píng)論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個(gè)字
      [ 查看全部 ] 網(wǎng)友評(píng)論
      最新推薦
      關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 久久精品亚洲综合| 国产精品亚洲综合五月天| 色综合久久天天综合观看| 国产成人综合日韩精品无码| 国产综合色产在线精品| 天天躁夜夜躁狂狂躁综合| 国产成人综合久久精品亚洲| 国产成人综合久久精品免费| 久久婷婷五月综合国产尤物app| 狠狠色丁香久久婷婷综合蜜芽五月| 乱色熟女综合一区二区三区| 伊人久久大香线蕉综合爱婷婷| 天天综合天天综合| 狠狠色狠狠色综合曰曰| 色视频综合无码一区二区三区| 色综合久久综合中文综合网| 国产精品激情综合久久| 一本色道久久综合无码人妻| 亚洲国产成人久久综合碰碰动漫3d| 色噜噜狠狠色综合免费视频| 亚洲欧美成人综合久久久| 亚洲人成伊人成综合网久久| 色欲综合一区二区三区| 日韩亚洲人成在线综合日本| 一本色道久久88综合亚洲精品高清 | 亚洲成AV人综合在线观看| 伊伊人成亚洲综合人网7777| 久久久久一级精品亚洲国产成人综合AV区| 久久久久久综合网天天| 色综合久久中文色婷婷| 狠狠色成人综合首页| 国产成人综合久久精品亚洲| 精品综合一区二区三区| 国产综合久久久久| 色欲久久久天天天综合网精品| 亚洲人成伊人成综合网久久 | 婷婷成人丁香五月综合激情| 色综合天天做天天爱| 色综合久久加勒比高清88| 狠狠人妻久久久久久综合| 婷婷综合另类小说色区|