如果不会用滤波算法的话
我想到的只有一个办法,就是用一个循迹条,放在车前
到拐弯的时候用延时,近似转到90度,然后用循迹条去走直线
简单写个程序:
//现在到了拐弯处,假设有1个7个led的灰度循迹条(或者红外循迹条)
//灯:led1 led2 led3 led4 led5 led6 led7
car_right();
delag_ms(300);
car_stop();
while(1)
{
if((!led4)||(!led5)||(!led3))
{
car_go();
}
if((!led1)||(!led2))
{
car_left();
}
if((!led6)||(!led7))
{
car_right();
}
}
1、是什么单片机?STC89C52 还是AT89S52
2、是哪种下载线?STC-ISP 还是USB-ISP
3、STC-ISP是否两头都是USB接口的?这是需要CH340驱动软件的!
4、USB-ISP也需要2302驱动!
ORG 0000H
SJMP MAIN
MAIN:
MOV TMOD,#05H
MOV TH0,#0
MOV TL0,#0
SETB EA
MOV P0,#0FFH
SETB TR0
ST:
MOV A,TL0
MOV 30H,A
LCALL BTOD
LCALL DISP
SJMP ST
BTOD:
MOV A,30H
MOV B,#100
DIV AB
MOV 20H,A
MOV A,B
MOV B,#10
DIV AB
MOV 21H,A
MOV 22H,B
RET
DISP:
MOV DPTR,#SEG7
MOV A,21H
MOVC A,@A+DPTR
MOV P0,A
CLR P30
LCALL DELAY
SETB P30
MOV A,22H
MOVC A,@A+DPTR
MOV P0,A
CLR P31
LCALL DELAY
SETB P31
RET
DELAY:MOV R7,#20
D00:MOV R6,#100
D11:DJNZ R6,D11
DJNZ R7,D00
RET
SEG7: DB 0C0H,0F9H,0A4H,0B0H
DB 99H,92H,82H,0F8H
DB 80H,90H,88H,83H
DB 0C6H,0A1H,86H,8EH
END
用单片机的p34口 数码管显示p0口 共阳极数码管动态显示p30和p31接com端,我这个程序你得修改一下 根据你的轮子的大小 计算每圈走的距离就可以算出小车行走的距离 祝你成功!
先买车模,最好是带电机而且能转弯的那种,四五十块钱,然后网上搜一下电机驱动电路。最节约成本的是H桥,全用三极管和二极管就可以实现,网上都有电路。至于单片机的最小系统的电路相信你都会了。然后自己把电路焊好,至于需要再添加其他模块儿(例:超声波,红外,激光,摄像头等等),你可以在自己搜搜电路。弄好后开始写程序,程序的事儿不是三言两语就能说清的,相信楼主既然想到做这个了,程序应该是自己可以搞定了,然后就是下载程序,调试小车了。呵呵,希望微薄的建议能够帮到楼主,祝你成功。
这种智能小车一般都是用stm32单片机的,51单片机的拓展太差,不是不能做,而是做出来效果并不是很好,而且51作为入门级单片机,如果你连51的一些功能比如中断,发送接收,双机通信,LCD,时钟之类的都还不清楚的,建议你在学习学习吧,网上买个开发板再说吧。
以上就是关于让51单片机控制的智能小车,利用红外对管检测黑白线拐直角弯,我想在车身侧面加红外对管,求大神支招!全部的内容,包括:让51单片机控制的智能小车,利用红外对管检测黑白线拐直角弯,我想在车身侧面加红外对管,求大神支招!、51智能避障小车 刷程序时,单片机工作,灯也亮,但程序就是刷不进去,一直现实正在检测目标单片机。。、基于51单片机,用霍尔传感器测算智能小车行走的距离!谁有汇编程序,贴上来我学习学习。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)