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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

我做的簡易單片機時鐘 0-99計數(shù)的另一做法 含原理圖,代碼與仿真

[復制鏈接]
跳轉到指定樓層
樓主
ID:254333 發(fā)表于 2017-12-3 19:38 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
第一次發(fā)帖如有不足望指正。這個是我今天制作的.
原理圖是用proteus仿真軟件做的。存在不足。在定時器那快,計時速度大約快了1倍。所以最后我通過增加循環(huán)的方式大致做到1S計時。
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)

也希望有大佬指出我的問題,幫助我,謝謝。

這是運行起來的圖,前兩位是分鐘,后兩位是秒。

0-99計數(shù)的另一做法單片機源程序如下:
  1. #include<reg51.h>
  2. sbit key1=P1^5;//開始按鍵
  3. sbit key2=P1^6;
  4. sbit key3=P1^7;
  5. #define uchar unsigned char
  6. #define uint unsigned int

  7. uchar seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  8. uchar counter=0,second=0,second_1=0,second_0=0,min=0,min_1=0,min_0=0;  

  9. void delay(uint m)
  10.   {
  11.          uint i,j;
  12.          for(i=0;i<m;i++)
  13.                  for(j=0;j<10;j++);
  14.   }
  15.    void display(void)
  16.   {
  17.         P2=seg[second_1];
  18.         P3=0x02;
  19.         delay(20);
  20.         P3=0x00;
  21.         P2=seg[second_0];
  22.         P3=0x01;
  23.         delay(20);
  24.         P3=0x00;
  25.         P2=seg[min_0];
  26.         P3=0x04;
  27.         delay(20);
  28.         P3=0x00;
  29.         P2=seg[min_1];
  30.         P3=0x08;
  31.         delay(20);
  32.         P3=0x00;
  33.     }
  34. void key(void)
  35.   {
  36.    if(key1==0)//判斷按鍵是否被按下
  37.       delay(10);//按鍵消抖*/
  38.    if(key1==0)//再次判斷是否被下
  39.      {
  40.                 EA=1;
  41.                 TR0=1;
  42.        while(!key1)//等待按鍵釋放
  43.             {        
  44.                     display( );
  45.             }
  46.      }
  47.          if(key2==0)//判斷按鍵是否被按下
  48.       delay(10);//按鍵消抖*/
  49.    if(key2==0)//再次判斷是否被下
  50.      {
  51.            display();
  52.            EA=0;
  53.            if(min==60)min=0;
  54.        while(!key2)//等待按鍵釋放
  55.             {        
  56.                     display( );
  57.             }
  58.      }if(key3==0)//判斷按鍵是否被按下
  59.       delay(10);//按鍵消抖*/
  60.    if(key3==0)//再次判斷是否被下
  61.      {
  62.            second=0;
  63.            min=0;
  64.        while(!key3)//等待按鍵釋放
  65.             {        
  66.                     display( );
  67.             }
  68.      }
  69.          }  
  70.                  

  71.   void main( )
  72.   {
  73.         TMOD=0X01;
  74.         TL0=0X3C;
  75.         TH0=0XB0;
  76.         ET0=1;
  77.         
  78.         while(1)
  79.          {
  80.            key();
  81.            min_0=min%10;
  82.            min_1=min/10;
  83.            second_1=second/10;
  84.            second_0=second%10;
  85.            display( );
  86.      }
  87.    }
  88.    void timer()interrupt 1
  89.    {
  90.         ET0=0;
  91.         TL0=0X3C;
  92.         TH0=0XB0;
  93.         counter++;
  94.         if(counter==40){
  95.         counter=0;
  96. ……………………

  97. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼


所有資料51hei提供下載:
簡易時鐘.rar (49.02 KB, 下載次數(shù): 14)



評分

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

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:254333 發(fā)表于 2017-12-5 19:31 | 只看該作者
發(fā)現(xiàn)問題了,文中
TL0=0X3C;
TH0=0XB0;
錯誤了,應該是
TL0=0XB0;
TH0=0X3C;
所以97行代碼最后的counter只需要=20

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 人人人人爽 | 天天色官网 | 欧美五月婷婷 | 国产ts人妖一区二区三区 | 欧美激情五月 | 水蜜桃久久夜色精品一区 | 影音先锋久久 | 国产在线一区二区三区 | av片免费 | 欧美福利 | 九九热精品视频 | 一区二区日韩精品 | 精品久久国产 | 午夜激情视频在线 | 精品欧美久久 | 久久综合伊人一区二区三 | 国产精品久久久久久久久久久久午夜片 | 国产一区二区三区色淫影院 | 亚洲一级黄色 | 精品91久久 | 欧美精品一区二区三区在线 | 国产成人91视频 | 久久久久久色 | 国产精品一区二区三区四区 | 国产精品久久九九 | 精品91久久| 亚洲精品永久免费 | 一区二区三区四区在线视频 | 99国产精品99久久久久久粉嫩 | 天天干天天爱天天爽 | 中文av字幕| 亚洲欧美在线一区 | 天堂资源最新在线 | 欧美日韩中文在线 | a级片www | 91免费在线看| 亚洲 精品 综合 精品 自拍 | 久热伊人 | 成人午夜免费视频 | 日本一区二区高清不卡 | 伊人影院99|