该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
}
/*******************************LED动作*************************************/
void led() //led比较时动作
{
//uchar k=1; if(miao>dsh&j==0) //上限比较
{
P0=0xfe;
P2=0x80;
P2=0x00;
j=1;
}
if(miao>dxia&miao
{
P0=0xff;
P2=0x80; P2=0x00;
}
if(miao
{
P0=0xfd;
P2=0x80; P2=0x00;
j=0;
}
} /*****************************串口************************************/
void fasong() //单片机向pc发送数据
{
// uchar i;
for(a=0;a<6;a++)
{
SBUF=k[a];
while(TI==0);
TI=0;
}
yy++;
kai=1;
ES=1; } void jieshou() interrupt 4 //单片机接受pc机发来的数据
{
unsigned char j;
// if(RI==1)
// {
RI=0;
kfor[j]=SBUF;
j++;
if(j==5)
{
ES=0;
chuli();
yy++;
d=1;
}
// }
} void shifa() //实时发送18b20数据
{
uint q;
SBUF=miao/10+48;
SBUF=miao%10+48;
while(TI==0);
TI=0;
for(q=0;q<50;q++); //延时发送快慢
} /*****************************ds1302*********************************/
void ds1302()
{
fen=DS1302_Read(READ_MINUTE);
shi=DS1302_Read(READ_HOUR);
} /*****************************初始化**********************************/ void init()
{
P0=0x00;
P2=0xa0;
P2=0x00;
EA=1;
ET0=1;
TMOD=0x21;
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
TR0=1; //TMOD=0x20;
TH1=243;
TL1=243;
TR1=1;
SCON=0x50;
//EA=1;
//ES=1;
PS=1;
fasong();
} /****************************主函数****************************/
void main()
{ Init_DS1302();
init();
while(1)
{
//if(yy==1)
//jieshou();
if(yy>1)
shifa();
} } /*****************************中断*******************************/
void zhd() interrupt 1
{
uchar x;
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
DS18B20();
ds1302();
led();
if(kai==1)
{
xianxian();
if(d==1)
{
x++;
if(x==200)
kai=2;
}
}
if(kai>1)
{
xianshi();
}
}