以上是具体电路,应该是电压比较器的电平送给单片机P2.0口的,怎么现在反而被影响了。
单片机的程序:
void main ( ) //主程序
{
P20=0; //端口初始化
P21=0;
P22=0;
P23=0;
P24=1;
P25=1;
P10=0;
while(1)
{ if(P20) //当光检测电路有信号时
{
P10=1; //控制端置高电平,继电器工作
P24=0; //PT2262-IR的使能端给低电平工作
P25=0;
}
if(P23) //手动控制为高电平,强制停止继电器工作
P10=0;
while (P10) //当控制端为高电平时,检测红外发射情况
{
if(P21) //当车头的红外检测到信号时
{
P10=0; //控制端置低
P24=1;
P25=1;
}
if(P22) //当车尾的红外检测到信号时,车头使能端置高不工作,延时再置低工作
{
P24=1;
delay();
P24=0;
}
if(P23) //手动控制为高电平,强制停止继电器工作
P10=0 ;
}
}
}
请大侠帮忙解答下,急!!! |