新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機數碼管顯示的數字鐘

        51單片機數碼管顯示的數字鐘

        作者: 時間:2016-11-30 來源:網絡 收藏

        這是一個基于51單片機的數字鐘程序用數碼管來顯示數據.

        本文引用地址:http://www.104case.com/article/201611/323805.htm

        原理圖源代碼及仿真文件下載地址:http://www.51hei.com/bbs/dpj-20407-1.html
        下面是源碼:
        #include
        unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,
        0x66,0x6d,0x7d,0x07,
        0x7f,0x6f,0x77,0x7c,
        0x39,0x5e,0x79,0x71,0x00};
        unsigned char dispbitcode[]={0xfe,0xfd,0xfb,0xf7,
        0xef,0xdf,0xbf,0x7f};
        unsigned char dispbuf[8]={0,0,16,0,0,16,2,1};
        unsigned char dispbitcnt;
        unsigned char second;
        unsigned char minite;
        unsigned char hour;
        unsigned int tcnt;
        unsigned char mstcnt;
        unsigned char i,j;
        void main(void)
        {
        TMOD=0x02;
        TH0=0x06;
        TL0=0x06;
        TR0=1;
        ET0=1;
        EA=1;
        hour=12;
        while(1)
        {
        if(P0_0==0)
        {
        for(i=5;i>0;i--)
        for(j=248;j>0;j--);
        if(P0_0==0)
        {
        second++;
        if(second==60)
        {
        second=0;
        }
        dispbuf[0]=second%10;
        dispbuf[1]=second/10;
        while(P0_0==0);
        }
        }
        if(P0_1==0)
        {
        for(i=5;i>0;i--)
        for(j=248;j>0;j--);
        if(P0_1==0)
        {
        minite++;
        if(minite==60)
        {
        minite=0;
        }
        dispbuf[3]=minite%10;
        dispbuf[4]=minite/10;
        while(P0_1==0);
        }
        }
        if(P0_2==0)
        {
        for(i=5;i>0;i--)
        for(j=248;j>0;j--);
        if(P0_2==0)
        {
        hour++;
        if(hour==24)
        {
        hour=0;
        }
        dispbuf[6]=hour%10;
        dispbuf[7]=hour/10;
        while(P0_2==0);
        }
        }
        }
        }


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 阿瓦提县| 兴仁县| 阳春市| 西丰县| 隆尧县| 西城区| 信宜市| 丹凤县| 平顶山市| 黄骅市| 江安县| 买车| 冀州市| 镇江市| 林口县| 顺昌县| 洪洞县| 呼图壁县| 通许县| 镇江市| 大同市| 安康市| 江永县| 蒙阴县| 桦川县| 宁乡县| 凤山市| 封开县| 呼伦贝尔市| 黑山县| 灵武市| 霍林郭勒市| 延安市| 彰武县| 资溪县| 遂平县| 平凉市| 临江市| 东港市| 苏尼特左旗| 来凤县|