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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1868|回復: 0
收起左側

基于51單片機的簡單電子秒表

[復制鏈接]
ID:997916 發表于 2021-12-28 17:28 | 顯示全部樓層 |閱讀模式
#include<reg51.h>                     //單片機頭文件

#define uint unsigned int
#define uchar unsigned char
#define CF P0                                           //宏定義

uint sec=0;                          //數碼管顯示同步定義數值sec 后面還會講

sbit K1=P3^2;   //K1復位 就是將運行的程序結束 然后重新開始運行          
sbit K2=P3^1;                 //暫停
sbit K3=P3^0;                         //開始          

sbit LED1=P2^0;
sbit LED2=P2^1;
sbit LED3=P2^2;                   //位選定義
sbit LED4=P2^3;                       

uchar disbuff[]={0,0,0,0}; //數碼管顯示位數的數值數組         

uchar const num[10]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f};                                                         //0-9的顯示碼

void delay(int s)
{
        uint i,j;
        for(i=0;i<s;i++)                                 //延時函數
                for(j=114;j>0;j--);
}

void DigDisplay()                                           //顯示函數
{
        LED1=1;LED2=1;LED3=1;LED4=0;           //最右邊一位開啟  也就是個位
        CF = disbuff[0];
        delay(5);
        CF=0x00;//消隱

        LED1=1;LED2=1;LED3=0;LED4=1;                   //十位
        CF=disbuff[1];                                                                                         //因為人肉眼的可見變化最小為500ms 這個數碼管此刻的變化為微秒級 所以不會看到有不顯示的情況
        delay(5);
        CF=0x00;   //消隱

        LED1=1;LED2=0;LED3=1;LED4=1;                         //百位
        CF=disbuff[2];
        delay(5);
        CF=0x00;         //消隱

        LED1=0;LED2=1;LED3=1;LED4=1;                          //千位
        CF=disbuff[3];
        delay(5);
        CF=0x00;         //消隱

}

void Count()                                                          //計算函數
{
        disbuff[0]=num[sec%10];                                    //個位數字
        disbuff[1]=num[sec/10%10];                             //十位數字
        disbuff[2]=num[sec/100%10];                            //百位數字
        disbuff[3]=num[sec/1000%10];                 //千位數字
}

void KEY()                                                                 //按鍵函數
{
        if(K1==0);                          //啟動
        delay(10);
        if(K1==0)
        {TR0=1;}
        while(!K1) DigDisplay();Count();                   //按鍵釋放
        if(K2==0)
        {
                delay(5);

                if(K2==0)
                {
                        TR0=0;            //關閉定時器
                }
        }         while(!K2)DigDisplay();Count();

        if(K3==0)
        {
                delay(10);
                if(K3==0)
                {
                        sec=0;
                        TH0=0x3c;//設定T0初始值(高八位)
                        TL0=0xb0;
                }
        }
}  

void main()
{
        TMOD=0x11;//設定定時氣的工作方式
        TH0=0x3c;//設定初始值(高八位)
        TL0=0xb0;//設定T0初始值(低五位)            設定時間為50ms
        ET0=1;         //內部中斷                                         
        EA=1;           //打開總中斷
        TR0=1; //啟動定時器0

        while(1)                                                         //         while循環

        {
                Count();        //計算
                DigDisplay();        //延時
                KEY();

        }
}

void time1() interrupt 1
{
        uchar m;
        TH0=0x3c;
        TL0=0xb0;                //重新賦初值
        m++;                        //50ms m++                    
        if(m==20)
        {                           //                每50ms執行20次也就是一秒
                m=0;
                sec++;                           //每一秒數碼管的顯示同步數值加一
                if(sec==10000)          //因為我們顯示只能到9999 所以達到最大顯示需要清零
            {
                        sec=0;
                        }
       
        }
}


捕獲.PNG
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久国产亚洲精品 | 中文字幕一区二区三区四区五区 | 日韩欧美中文 | 精品在线观看一区二区 | 精品国产一级片 | av看片网站| 欧美日韩一区二区视频在线观看 | 国产精品久久网 | 国产精品日韩一区二区 | 久草99 | 国产精品久久久久国产a级 欧美日韩国产免费 | 欧美精品一区二区三区在线播放 | 免费99精品国产自在在线 | 欧美黄色绿像 | 四虎影院一区二区 | 精品免费视频 | 久草免费在线视频 | 五月婷婷激情 | 国产亚洲精品美女久久久久久久久久 | 欧美xxxx黑人又粗又长 | 欧美日韩亚洲一区 | 亚洲精品一区二区 | 亚洲免费一区二区 | av在线免费观看网站 | 国产高清视频 | 久久国产视频一区 | 日韩欧美中文 | 国产成人精品a视频一区www | 欧洲性生活视频 | 亚洲在线久久 | 成人久久18免费 | 91麻豆精品国产91久久久更新资源速度超快 | 激情婷婷 | 久久久久久a | 福利网站在线观看 | 国产精品日韩一区 | 亚洲高清在线 | 欧美综合视频在线 | 精品日韩欧美一区二区 | 台湾av在线 | 国产一区 在线视频 |