標(biāo)題: 為什么我做的霍爾傳感器不能計(jì)算路程?利用LCD12864顯示 顯示沒問題 就是路程總顯不對(duì) [打印本頁]

作者: 愛在心    時(shí)間: 2015-5-18 20:38
標(biāo)題: 為什么我做的霍爾傳感器不能計(jì)算路程?利用LCD12864顯示 顯示沒問題 就是路程總顯不對(duì)
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int

uint i,z,s,count,zhuan,msec;
uchar qian=5;
void counter(void) interrupt 0
{
EX1=0
count++
if(count==4
{count=0;
  z++
}
EX1=1
  }        void Init_Timer0(void) interrupt 1
{
TMOD|=0x01
TH0=0x00;
TL0=0x00;
msec++;
if(msec==20)
{msec=0;
zhuan=z;
z=0;
s=zhuan*3.14;       
qian=s*1.5;
}
}  
/**********************初始化****************************/
void Initial_com(void)
{
        z=0;
        count=0;
        zhuan=0;
    TMOD=0x01;           //計(jì)數(shù)器T1  定時(shí)器T0
    TH0=0x00;
    TL0=0x00;
    EA=1;
    ET0=1;
    TR0=1;    IT0=1;
    EX0=1;
}void Test()
{          write_com(0x03);
        delay(50);   
        write_com(0x80);
        hzkdis("起步價(jià):5元  客1 ");

        write_com(0x90);
        hzkdis("運(yùn)行里程:  ");
        write_com(0x97);
        hzkdis("km");

        write_com(0x88);
        hzkdis("單價(jià):1.5元每公里");

        write_com(0x98);
        hzkdis("總額:  ");
        write_com(0x9F);
        hzkdis("元");

    write_com(0x95);
    write_data(s/1000+0x30);  //千位
    write_data(s%1000/100+0x30);
    write_data(s%100%10+0x30);
    write_data(s%100/10+0x30);

    write_com(0x9D);
    write_data(qian/1000+0x30);  //千位
    write_data(qian%1000/100+0x30);
    write_data(qian%100%10+0x30);
    write_data(qian%100/10+0x30);
  /*  write_data(qian/100+0x30);
    write_data(qian%100/10+0x30); */
//        delay(10);
        }
/*********************主程序*************************/
void jishu()
{Initial_com();
/*EA=1;
ET0=1;
TR0=1;
IT0=1;
EX0=1;*/
while(1)
{Test();}
}
/*****************************************************/






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1