2019-07-16 22:46发布
WAITXHURT 发表于 2012-12-24 18:07 去掉Q1,多余。。。直接连单片机检测,别忘了IO口初始化。。。
yedaochang 发表于 2012-12-25 12:24 程序写得不对。
最多设置5个标签!
还是不行,驱动Q1根本就驱动不了 程序应该没问题,你加我Q指导一下我吧 419299076 谢谢了
#include <reg51.h>
unsigned int num,count;
unsigned char arr[]={0x82,0x92,0x99,0xb0,0xa4,0xf9,0xc0}; //显示6到0
sbit LED1=P1^0;
sbit LED2=P1^1;
sbit LED3=P1^2;
sbit LED4=P1^3;
sbit LED5=P1^4;
sbit LED6=P1^5;
sbit LED7=P1^6;
sbit LED8=P1^7;
sbit key=P3^2;
void main(void)
{
TMOD=0x01;
TR0=1;
TF0=0;
EA=1; //定时器设置
while(1)
{
if(key!=1)
{
P0=arr[num];
if(num<6)
{LED1=LED2=LED3=LED4=LED5=LED6=LED7=LED8=0;ET0=1;}
else
{LED1=LED3=LED5=LED7=1;ET0=0;}
}
if(key==1)
{P0=0xff;num=0;count=0;ET0=1;LED1=LED2=LED3=LED4=LED5=LED6=LED7=LED8=1;}
}
}
void time0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256; //时间常数 50ms
count++;
if(count==20) //定时 1 秒
{ count=0;
num++; //计数
}
}
Q1去掉了还识别不了?程序上加上IO口初始化:
key=1; //初始化光线检测
弄好了 谢谢了
一周热门 更多>