#include <REG52.H>
#define uchar unsigned char
#define uint unsigned int
int xscode[6]=
{0x3f,0x06,0x5b,0x4f,0x66,0x6d};//顯示存儲區
int codetab[]=
{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共陰級數碼管段選碼{0-9}
int zxscode[]=
{0x1f,0x2f,0x37,0x3b,0x3d,0x3e};//共陰級數碼管片選碼
int i,j,flag;
uint s=0;
uint m=0;
uint h=0;
int secflag=0;//時間標志位
int sec=0;//時間中斷標志位
int kk=0;//路程x
int jkk=0;//費用
int jflag=0;//費用標志位
int kflag=0;//路程標志位
int zdflag=0;//中斷標志位
int kilo=0;//路程s
int dj=4;//路程單價標志位
int djflag=0;//路程單價標志位
sbit key1=P1^0;//啟動/停止
sbit key2=P1^1;//日夜切換
sbit key3=P1^2;//清零
sbit lcjj=P1^3;//路程計價
sbit sj=P1^4; //顯示時間/路程
sbit sjjj=P1^6;//時間計價
sbit key5=P3^4;//外部脈沖
void delay1(xms)// 延時程序
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
void xianshi()//顯示程序
{
for(flag=0;flag<6;flag++)
{
P0=xscode[flag];
P2=zxscode[flag];
delay1(2);
P0=0;
}
}
void jijia()//按路程計價程序
{
if(kk<=3)
{jkk=8;//起步價
kk=3; |