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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機8位動態數碼管的24小時制電子表仿真+程序

[復制鏈接]
跳轉到指定樓層
樓主
  基于80C51單片機的電子時鐘  8位動態數碼管顯示時分秒

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. //==================================================//
  2. //==          電子信息科學與技術(2)班           ==//
  3. //==                                              ==//
  4. //==               八位數碼管電子時鐘             ==//
  5. //==   16214088       陳朝      24小時制電子表    ==//
  6. //==                                              ==//
  7. //==================================================//
  8. #include<reg51.h>
  9. #include"delay.h"
  10. unsigned char code LED[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; //定義共陰極LED7段顯示碼

  11. unsigned char dispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};   //定義數碼管位碼
  12. unsigned char hour=23,min=58,sec=52;                 //定義初始時間為23時58分52秒
  13. unsigned char tcount;                           //定義50ms計數變量

  14. void display(unsigned char,unsigned char,unsigned char);

  15. void delay(unsigned int time)//定義延時函數
  16.         {
  17.                 unsigned int j = 0;
  18.                 for(;time>0;time--)
  19.                         for(j=0;j<125;j++);
  20.         }

  21. void main(void)
  22. {
  23.          TMOD=0x01;                  //定時/計數器0設為方式1
  24.          TH0=(65536-50000)/256;      //定時50ms初值的高八位送入TH0
  25.          TL0=(65536-50000)%256;      //定時50ms初值的低八位送入TL0
  26.          EA=1;                       //開CPU中斷
  27.          ET0=1;                      //開定時/計數器0的中斷
  28.          TR0=1;                      //啟動定時器0
  29.         while(1)
  30.         {
  31.              display(hour,min,sec);
  32.         }
  33. }


  34. void display(unsigned char hour,unsigned char min,unsigned sec)
  35. {
  36.        
  37.         P0=LED[hour/10];            //小時的十位送數碼管1位顯示
  38.         P2=0xfe;
  39.         delay(1);
  40.         P2=0xff;
  41.        
  42.         P0=LED[hour%10];            //小時的個位送數碼管2位顯示
  43.         P2=0xfd;
  44.         delay(1);
  45.         P2=0xff;
  46.        
  47.         P0=LED[10];                 //橫杠送數碼管3位顯示
  48.         P2=0xfb;
  49.         delay(1);
  50.         P2=0xff;
  51.        
  52.         P0=LED[min/10];             //分的十位送數碼管4位顯示
  53.         P2=0xf7;
  54.         delay(1);
  55.         P2=0xff;
  56.        
  57.         P0=LED[min%10];             //分的個位送數碼管5位顯示
  58.         P2=0xef;
  59.         delay(1);
  60.         P2=0xff;
  61.        
  62.         P0=LED[10];                 //橫杠送數碼管6位顯示
  63.         P2=0xdf;
  64.         delay(1);
  65.         P2=0xff;
  66.        
  67.         P0=LED[sec/10];             //秒的十位送數碼管7位顯示
  68.         P2=0xbf;
  69.         delay(1);
  70.         P2=0xff;
  71.        
  72.         P0=LED[sec%10];             //秒的個位送數碼管8位顯示
  73.         P2=0x7f;
  74.         delay(1);
  75.         P2=0xff;
  76. }



  77. void T0_time() interrupt 3    //定時器中斷處理函數
  78. {
  79.         TH0=(65536-50000)/256;      //重新將定時50ms初值的高八位送TH0
  80.         TL0=(65536-50000)%256;      //重新將定時50ms初值的低八位送TH0
  81.         tcount++;                   //定時50ms時間到加1
  82.         if(tcount==20)              //判斷是否到1s
  83.         {
  84.         tcount=0;                   //到1s,變量清0
  85.         sec++;                      //秒計數變量加1
  86.         if(sec==60)                 //判斷秒是否到60
  87.         {
  88.         sec=0;                      //到60,秒變量清0
  89.     min++;                    //分計數變量加1
  90.         if(min==60)                 //判斷分是否到60
  91.         {
  92.         min=0;                      //到60,分變量清0
  93.         hour++;                     //小時計數變量加1
  94.         if(hour==24)                //判斷小時是否到24
  95.         hour=0;                     //到24,小時清0
  96.         }
  97. }
  98. }
  99. }
  100.                                        
復制代碼

所有資料51hei提供下載:
8位數碼管24小時制電子表.zip (94.15 KB, 下載次數: 95)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:458623 發表于 2018-12-31 16:48 | 只看該作者
我愛你

51hei.png (21.64 KB, 下載次數: 142)

51hei.png
回復

使用道具 舉報

板凳
ID:723510 發表于 2020-5-4 16:59 | 只看該作者
大佬  跪了跪了  牛皮
回復

使用道具 舉報

地板
ID:854794 發表于 2020-12-6 15:48 | 只看該作者
Thanks♪(・ω・)ノ

回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 97人人超碰| 黑人中文字幕一区二区三区 | 亚洲精品1 | 岛国av一区二区 | 国产日韩欧美一区 | 午夜激情影院 | 国产精品久久亚洲 | 欧美一区二区在线观看 | 亚洲在线一区二区三区 | 中文字幕免费视频 | 久久久久久久久久久国产 | 亚洲精品久久久久中文字幕二区 | 亚洲精品成人 | 黄色网址大全在线观看 | 免费观看一级特黄欧美大片 | 国产视频h | 国产高清在线观看 | 国产一区二区中文字幕 | 三级免费av| 亚洲综合在线一区二区 | 久久亚洲国产 | 男女视频在线观看免费 | 日韩欧美字幕 | 亚洲欧美综合精品另类天天更新 | 日韩欧美在线免费 | 久久九九色 | 久久精品欧美一区二区三区不卡 | 国精产品一品二品国精在线观看 | 久久精品综合 | 97精品超碰一区二区三区 | 欧美日韩国产一区二区三区不卡 | 中文字幕一区在线 | 国产精品一区二区三区99 | 日韩一区二区三区在线视频 | 久草青青草| 亚洲视频在线观看免费 | 精品视频一区二区三区在线观看 | 日韩精品一区二区三区在线观看 | 国产午夜精品视频 | 福利视频网站 | 国产精品免费视频一区 |