欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1575|回復: 2
收起左側

脈沖這個怎么調試.是在哪里啊

[復制鏈接]
ID:939264 發表于 2021-6-17 14:45 | 顯示全部樓層 |閱讀模式
#include        <reg51.h>
#define uchar unsigned char
#define  uint unsigned int
sbit        RESET                =        P3^7;
int                Price                =        70,        Mileage                =        0;
uchar        count                =        0;
uchar code tab_d[10]                =        {0x3F,        0X06,        0X5B,        0X4F,        0X66,        0X6D,        0X7D,        0X07,        0X7F,        0X6F};
uchar code tab_wei[8]                ={0x7f,        0xbf,        0xdf,        0xef,        0xf7,        0xfb,        0xfd,        0xfe};

//????ms
void        delay(uint t)
{
        uchar                i                =        0;
        while(t--)
                for        (i;        i<120;        i++);
}

//???????
/*
  ????:
   d : ???????
         x : ????????(0x80 ?? 0??
   w :?????
*/
void        disp(uchar d,        uchar x,        uchar w)
{
        P2                =        0XFF;
        P2                =        tab_wei[w];
        P0                =        0;
        P0                =        tab_d[d]        | x;
        delay        (100);
}

//????
void        refresh()
{
        disp(Mileage%10,        0,        0);//??
        disp(Mileage/10%10,        0x80,        1);       
        if        (Mileage >= 100)               
                        disp(Mileage/100%10,        0,        2);               
        if        (Mileage >= 1000)               
                        disp(Mileage/1000%10,        0,        3);       
        disp(Price%10,        0,        4);
        disp(Price/10%10,        0x80,        5);       
        if        (Price        >= 100)
                disp(Price/100%10,        0,        6);
        if        (Price        >=        1000)
                disp(Price/1000%10,        0,        7);
}
void timer1        ()        interrupt 1
{
        count++;
        Mileage +=        1;
        if(        count        ==        5)
        {
                count        =        0;
                if        (Mileage        >        30)
                                Price +=10;
                }
}

//?????
void init()
{
        P0                        =        0;
        P2                        =        0XFF;
        TMOD                =        0X0E;   //???????
        IT0                        =        1;                  //????       
        TH0                        =        255;                //1?????
        TL0                        =        255;
        TR0                        =        1;
        IE                        =        0X82;
}

void        judgeReset()
{
        if(RESET        ==        0)
        {
                Price                =        70;
                Mileage        =        0;
        }
}
void        main()
{
                init        ();                //?????
                while        (1)
                {
                        judgeReset        ();
                        refresh                        ();
                        }                       
}
回復

使用道具 舉報

ID:328014 發表于 2021-6-17 14:57 | 顯示全部樓層
你是不是要調整定時器的時間,你改這里即可 void timer1        ()        interrupt 1
回復

使用道具 舉報

ID:939264 發表于 2021-6-17 15:05 | 顯示全部樓層
51hei團團 發表于 2021-6-17 14:57
你是不是要調整定時器的時間,你改這里即可 void timer1        ()        interrupt 1

就是脈沖一次為一公里怎么改
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表