标题:
51单片机做的小车,红外遥控和超声波测距好像有冲突
[打印本页]
作者:
muziYANG
时间:
2022-11-17 01:13
标题:
51单片机做的小车,红外遥控和超声波测距好像有冲突
主函数如下,里面有超声波模块和红外遥控模块,注释一个测试另一个都可以,但一起运行就只能进行超声波测距,红外失效
void main()
{
LCD_Init();
init(); //????????0?????0
EN1 = EN2 = 0;//?????????
speed = 8;//???????8,8/40=0.2,?????20%???,speed???????,????????
while(1)
{
Timer0Init();//??????,????????????
TrigInit();//???????,??300ms
Bc_Dis();//?????
LCD_ShowNum(1,1,(unsigned int)dis,3);
if(IRok) //??????????
{
IRcordpro();//???????4??????
IRok = 0; //????????
if(IRpro_ok) //????????
{
switch(IRcord[2])
{
case 0x0C: forward(); break; //??
case 0x18: backward(); break; //??
// case 0x0c: left(); break;//??
case 0x5A: right(); break;//??
case 0x16: stop(); break;//??
case 0x5E: speed_up(); break;//??
case 0x08: speed_down(); break;//??
default: break;
}
IRpro_ok = 0;
}
}
if(dis <=010){
BUZZER = ON;
Delay2(30);
BUZZER = OFF;
Delay2(30);
}
else if((010< dis) && (dis <= 020)){
BUZZER = ON;
Delay2(100);
BUZZER = OFF;
Delay2(100);
}
else if((020 < dis) && (dis <= 050)){
BUZZER = ON;
Delay2(150);
BUZZER = OFF;
Delay2(150);
}
}
}
作者:
lkc8210
时间:
2022-11-17 09:28
代码给全一点
缩进弄整齐一点
代码可以放到代码格式里
2022-11-17_092719.png
(4.54 KB, 下载次数: 31)
下载附件
2022-11-17 09:28 上传
作者:
hzxyy
时间:
2022-11-17 10:25
估计是,超声波、红外共用了同一个定时器
作者:
tzs233
时间:
2022-11-17 15:45
红外对时序要求挺高的吧。做好不同任务时间评估。格式不对当然解码不正确
作者:
yzwzfyz
时间:
2022-11-17 17:01
如果不能DELAY,问题就解决了。
作者:
清炒苦瓜丝
时间:
2022-11-17 21:15
检查一下红外试试呢
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1