标题:
单片机程序和仿真图都没有错误,仿真结果出不来,候车大厅人数检测的
[打印本页]
作者:
1923780622
时间:
2020-6-30 00:18
标题:
单片机程序和仿真图都没有错误,仿真结果出不来,候车大厅人数检测的
3ef149b2c8c2bba5.png
(107.17 KB, 下载次数: 38)
下载附件
2020-6-30 00:18 上传
#include <reg52.h>
#include <intrins.h>#define uchar unsigned char
#define uint unsigned intuint count=0;
uint sudu=0;
uchar time;
uint num;
sbit beep = P3^7;
sbit key1 = P3^5;
sbit key2 = P3^6;
uchar dat[4]={0,1,2,3};uchar table[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void delayms(unsigned int x)
{
unsigned char j;
while(x--)
{
for(j=0;j<123;j++){;}
}
}
void display ()
{
uchar i,dis=0x7f;
for(i=0;i<4;i++)
{
P1=~table[dat[i]];
P0=dis;
dis=(dis>>1)|0x80;
delayms(1);
}
}
void process(uint i)
{
dat[0]=num/10;
dat[1]=num%10;
dat[2]=i/10;
dat[3]=i%10;}
void keyClear(){
if(key1==0)
{
delayms(10);
if(key1==0)
{
count=0;
}
while(!key1)
{
process(count);
display();
};
}
}
void keySet(){
if(key2==0)
{
delayms(10);
if(key2==0)
{
num++;
}
while(!key2)
{
process(count);
display();
};
}
}
void BJ()
{
if(count>=num)
beep=0;
else
beep=1;
}
void main()
{
ET0=1;
IT0=1;
EX0=1;
EA=1;
beep=1;
num=10;
while(1)
{
keyClear();
keySet();
BJ();
process(count);
display();
}
}
void ex0(void) interrupt 0 using 0
{
count++;
}
复制代码
作者:
man1234567
时间:
2020-7-1 08:22
传说中的电脑坏了
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1