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