东单片机的应该都直接P0口和P1口在哪儿,图片为网上乱找。用杜邦线链接接好了电源,驱动模块。单片机电路板,基本可以测试前进后退左转右转来看看以上步骤有没有成功。以下我贴出测试源程序:
#include<AT89x51.H>
#define Left_moto_go {P1_0=1,P1_1=0,P1_2=1,P1_3=0;} //左边两个电机向前走
#define Left_moto_back {P1_0=0,P1_1=1,P1_2=0,P1_3=1;} //左边两个电机向后转
#define Left_moto_Stop {P1_0=0,P1_1=0,P1_2=0,P1_3=0;} //左边两个电机停转
#define Right_moto_go {P1_4=1,P1_5=0,P1_6=1,P1_7=0;}//右边两个电机向前走
#define Right_moto_back {P1_4=0,P1_5=1,P1_6=0,P1_7=1;}//右边两个电机向前走
#define Right_moto_Stop {P1_4=0,P1_5=0,P1_6=0,P1_7=0;}//右边两个电机停转
//延时函数
void delay(unsigned int k)
{
unsigned int x,y;
for(x=0;x<k;x++)
for(y=0;y<2000;y++);
}
/************************************************************************/
//前进
void run(void)
{
Left_moto_go ; //左电机往前走
Right_moto_go ; //右电机往前走
}
//后退
void backrun(void)
{
Left_moto_back ; //左电机往前走
Right_moto_back ; //右电机往前走
}
//左转
void leftrun(void)
{
Left_moto_back ; //左电机往前走
Right_moto_go ; //右电机往前走
}
//右转
void rightrun(void)
{
Left_moto_go ; //左电机往前走
Right_moto_back ; //右电机往前走
}
/*********************************************************************/
/*--主函数--*/
void main(void)
{
delay(100);
run(); //前进函数
while(1)/*无限循环*/
{
run();
}
}
在最后run();//前进函数中,大家改为
backrun() ;//后退
leftrun() ;//左拐
rightrun();//右拐
即可,这样就得到四个测试程序,大家自己测试。哦对了。IN1-4为左边2电机模块,5-8为右边2电机模块
把四个电机焊接电池盒也固定好。2节18650.是7.4V,3节将近11-12V,速度飞快,2也跑得慢点。
经过测试,4个TT电机一块298完全可以带动。把2边2个电机并在一起接一个out即可,右边2个也如此,还有个三个端子的接口。第一根红色的接18650正极(2节18650串联),中间黑色和蓝色的接地和负极,第三孔灰色的是输出5V,接单片机,记得要共地(所有传感器,控制器,驱动器的接地一定要连在一起
固定好控制板,自己焊接哟
一辆最基本的小车就装好了。其他传感器可以自己家,舵机,超声波。循迹模块等等。
需要注意的是蓝牙模块一般2中。4针的为HC-06,6针的为HC-05,不管几针,大家只要记住,只要接4个接口就行,VCC,GND ,TXD ,RXD,其他不用接,悬空就行。
还有,蓝牙TXD要接单片机的RXD,蓝牙的RXD要接单片机的TXD,否则无法
通信。
手机端。
``
106