热释电防盗报警系统,复位电路和晶振电路求解释
外部中断0是接传感器的,中断0接受到信号,蜂鸣器响,D1闪烁,数码管显示报警次数。外部中断1是取消报警,D1不亮,蜂鸣器不叫,但是数码管保持不变。问题就是复位电路不能工作,却晶振没有工作,已经经过多次实验了,请大神点播下,我的程序有没有问题
#include<reg52.h>
sbit D2=P1^7;
sbit D1=P1^6;
sbit SPP=P1^5;
int a=0,c=0,e=1,b=0;
int code table[]={0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void delay(int z)
{
intx,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void main()
{
D2=0;
EA=1;//传感器
EX0=1;
IT0=1;
TMOD=0x01;//持续报警
ET0=1;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
IT1=1;//取消报警
EX1=1;
while(1)
{
if(b==9)
{
b=0;
}
P2=table;
if(a==1)
{
SPP=0;
if(e==1)
{
D1=0;
delay(2);
D1=1;
delay(2);
}
}
if(c==200)//50ms*200=10000ms=10s
{
c=0;
a=0;
D1=1;
SPP=1;
TR0=0;
}
}
}
void chuangganqi() interrupt 0
{
a=1;
TR0=1;
b++;
}
void TT0() interrupt 1
{
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
c++;
}
void quxiaobaojing() interrupt 2
{
a=0;
c=0;
TR0=0;
SPP=1;
D1=1;
}
原理图,proteus中图
我觉得我的设计没有错,是不是因为proteus软件的问题,我自己百度的
复位电路和晶振和程序都是没有关系的
proteus软件真的没问题,你的图纸的问题,连接点都没有接上~~
IC各引脚是否正常?
图片看起来没接上去,在软件里面是有接的。后面用实物测试了下就可以了
软件里面能控制那些连接点吗
测试最小系统有没有问题,写个小程序把所P0~P3全置零,确认程序烧入正常,用万用表测下P口是否是低电平,不是的话,一般就是晶振不起振