找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2398|回复: 0
收起左侧

为什么我做的霍尔传感器不能计算路程?利用LCD12864显示 显示没问题 就是路程总显不对

[复制链接]
ID:80408 发表于 2015-5-18 20:38 | 显示全部楼层 |阅读模式
#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;           //计数器T1  定时器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("起步价:5元  客1 ");

        write_com(0x90);
        hzkdis("运行里程:  ");
        write_com(0x97);
        hzkdis("km");

        write_com(0x88);
        hzkdis("单价: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();}
}
/*****************************************************/

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表