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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

里程表代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:247127 發表于 2017-11-9 18:58 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include <reg51.h>
unsigned char i,j,t,m,key,DelayTime,DispBuf[3];
unsigned int n;
unsigned long int c,spm;
unsigned char code
BitTab[3]={0xf7,0xef,0xdf};//位驅動碼
unsigned char code
DispTab[10]={0x81,0xcf,0x92,0x86,0xcc,0xa4,0xa0,0x8f,0x80,0x84};//字形碼
sbit P3_0=P3^0;
void delay(DelayTime);
main()         //主程序
{       
        TMOD=0x01;//定時器T0工作于方式1
        IT0=1;   //外部中斷0為邊沿觸發方式
        TH0=0xec;
        TL0=0x78;//T0定時時間為5ms
        IE=0X83; //開中斷
        TR0=1;   //開定時器T0
        key=0;
        for(;;)  //鍵盤處理
        {
                if(key==1)
                {
                        if(P3_0==0)
                        {
                                delay(100);
                                if(P3_0==0)
                                key=0;
                        }
                }
                else
                {
                        if(P3_0==0)
                        {
                                delay(100);
                                if(P3_0==0)
                                key=1;
                        }
                }
                for(;P3_0==0;)
                                ;
        }
}
external0() interrupt 0//外部中斷0服務程序
{
        c++;
        if(key==0)                  //計算速度
        {
                if(n==0)//
                        spm=0;
                else
                        spm=14904/n;   
        }
        else                          //計算里程
        {
                spm=207*c;
                spm=spm/10000;
        }
        n=0;
        DispBuf[2]=spm%10;//取個位數
        spm=spm/10;
        DispBuf[1]=spm%10;//取十位數
        DispBuf[0]=spm/10;//取百位數
}
Timer0() interrupt 1//定時器T0中斷服務程序
{       
        TH0=0xec;
        TL0=0x78;
        n++;
        t=BitTab[j]; //取位值
        P3=P3|0x38;  //P3.3-P3.5送1
        P3=P3&t;     //P3.3-P3.5輸出取出的位值
        t=DispBuf[j];//取出待顯示的數
        t=DispTab[t];//取字形碼
        P1=t;        //字型碼由P3輸出顯示
        j++;         //j作為數碼管的計數器,取值0-2,顯示程序通過它確認顯示哪個數碼管
        if(j==3)
        j=0;
        if(n>1000)      //自行車停止超過5秒鐘,n復位
        n=0;
}
void delay(DelayTime)//延時子程序
{
        for(;DelayTime>0;DelayTime--)
        {
                for(i=0;i<250;i++)
                        ;
        }

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 在线视频一区二区 | 黄久久久 | 神马久久av | 婷婷色成人| 天天操综合网 | 老妇激情毛片免费 | 91素人| 亚洲精品国产精品国自产在线 | 亚洲精品国产成人 | 国产一区二区三区色淫影院 | www久久av| 99视频在线| 日韩精品av一区二区三区 | 激情亚洲| 热re99久久精品国产99热 | 三级高清 | 成人h视频在线 | 精品久久久久久亚洲精品 | 国产精品久久久久久久久图文区 | 午夜精品福利视频 | 久久精品久久久久久 | 久久久久久国产精品三区 | 欧美区在线 | 一区中文字幕 | 亚洲国产精品网站 | 国产精品久久午夜夜伦鲁鲁 | 亚洲一区二区视频 | 91精品国产一区二区三区 | 中文字幕 国产 | 久久综合入口 | 国产一级毛片视频 | 久久精品二区亚洲w码 | 亚州精品天堂中文字幕 | 久久国产成人 | 久久综合国产 | 国产亚洲精品美女久久久久久久久久 | 亚洲视频在线看 | 婷婷久久综合 | 91精品一区二区三区久久久久久 | 一区二区在线 | 特黄特色大片免费视频观看 |