求一个智能小车实现电机调速(尽量使速度降低)、循迹避障功能的C程序。

尽量有详细程序说明。单片机是AT89S52,电机驱动是L293D,它的两个使能端(EN1,EN2)接的是单片机的同一个引脚P3.6(PWM),它的四个输入分别接的是单片机的P1.0到P1.3口,通过改变PWM的占空比来调速。循迹模块是5路循迹,要接单片机的P0口。避障是由两个红外避障模块组成,用来探测小车前方是否有障碍物,最远探测距离是25厘米。求高手帮忙,急用,自己编的实现不了功能。尤其是调速的代码。还有就是避障,小车侧面没有红外避障的检测模块,只有前方有,怎么样才能是小车在检测到障碍物之后绕过去,并且能重新回到轨迹上来啊?障碍物是白色的,是放在黑色轨迹上的,共有三个障碍物,且成直线排列,只是不知道障碍物之间的距离。电机调速一定得让电机转的速度降低,不然很容易冲出轨迹的。

几个驱动轮的?可以用笨一点的方法 如果你是四轮车 你可以控制它直线高速四轮全动 低速动两个
转弯的话 高速可以正转一边反转 低速一边正转 另一边锁死 或者转一个 我比较笨 到现在都没学会pwm 所以只有这本办法了~
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-27
不知道硬件的话,很难说清楚,电机调速用PWM,接入使能端,PWM可以单片机模拟产生,用两个定时器,一个控制周期,一个控制高电平时间!追问

硬件不是说了,单片机是AT89S52,电机驱动是L293D,它的两个使能端(EN1,EN2)接的是单片机的同一个引脚P3.6(PWM),它的四个输入分别接的是单片机的P1.0到P1.3口。帮个忙呗!

本回答被提问者采纳
第2个回答  2011-05-13
很难~~~~~~~~~~~!
相似回答