简单的手机蓝牙遥控智能小车

       蓝牙驱动基本原理

         辆小车的基本功能就是让它能动起来,能通过手机蓝牙进行遥控,所以就需要用到L298N电机驱动模块,和HC-06蓝牙模块。下面就简单介绍一下这两个模块。

            一个L298N电机驱动模块能驱动2个马达,小车是四驱驱动,我们可以把两个L298N模块并联,并用12V电压供电,如果你的小车不需要调速,就不用考虑PWM问题,也就无需把使能端ENA、ENB的跳线帽拔掉,直接将IN1、IN2、IN3、IN4与单片机的端口相连,把OUT1、OUT2、OUT3、OUT4与马达相连即可。

                电机驱动模块弄好后,离它能动就只有一步之遥了,我们需要用到HC-06蓝牙模块对小车进行控制。

        蓝牙模块的TXD,RXD要分别与单片机的RXD、TXD相连,这样串口通信才能收发正常,然后软件设置串口。利用switch 函数,对蓝牙接收的数据进行处理,执行相应的运动。(串口调试我推荐正点原子的Xcom都行啊,能有就行了)。

下面是引脚控制98N的驱动,主要是原理双H桥路理解了就差不多了,你马达接反了转向就会不一样,哈哈小爷我就是这样马达接反了,所以要灵活运用。

 

主要程序



#include<reg52.h>

#define uchar unsigned char
#define uint  unsigned int

sbit IN1=P1^0;	   //  
sbit IN2=P1^1;	   //  
sbit IN3=P1^2;	   //  
sbit IN4=P1^3;	   //  
sbit IN5=P1^4;	   //
sbit IN6=P1^5;	   //  
sbit IN7=P1^6;	   // 
sbit IN8=P1^7;	   //  

 void stop()
{
IN1=0;		
		IN2=0;		 
		IN3=0;		 
		IN4=0;		 
		
		IN5=0;		 
		IN6=0;		 
		IN7=0;		 
		IN8=0;
}

void forward()
{
	IN1=0;		 
		IN2=1;		 
		IN3=0;		 
		IN4=1;		 
		
		IN5=1;		 
		IN6=0;		 
		IN7=0;		 
		IN8=1;  
}

void back()
{
    IN1=1;		 
		IN2=0;	//	 
		IN3=1;		 
		IN4=0;		// 
		
		IN5=0;		 
		IN6=1;		//  
		IN7=1;		 // 
		IN8=0;		
}

void left()
{
IN1=0;		 
		IN2=0;		 
		IN3=0;		 
		IN4=0;		 
		
		IN5=0;		 
		IN6=0;		 
		IN7=0;		 
		IN8=1;	
}

void right()
{
IN1=0;		 
		IN2=0;		 
		IN3=1;		 
		IN4=0;		 
		
		IN5=1;		 
		IN6=0;		 
		IN7=0;		 
		IN8=0;	
	
}
void Com_Int(void) interrupt 4
{
	uchar receive_data;	
	EA = 0;
	if(RI == 1) 
	{ 
		RI=0; 
			IN2=0;		 
		IN3=0;		 
		IN4=0;		 
		
		IN5=0;		 
		IN6=0;		 
		IN7=0;		 
		IN8=0;
		receive_data = SBUF;
		switch(receive_data)
		{
		case ('1'):
				forward();break;
			case ('2'):
				back();break;
			case ('3'):
				left();break;
			case ('4'):
				right();break;
			case ('0'):
				stop();break;
		}			
	}		
		EA = 1;
}
	
void UsartConfiguration()
{	
	SCON=0X50;	//		
	TMOD=0X20;			
	PCON=0X00;		
	TH1=0Xfd;		    
	TL1=0Xfd; //
	TR1= 1;					
	ES = 1;        
    	EA = 1;         
}


void main()
{
	UsartConfiguration();	
	while(1);	
}

    

       


 

  • 7
    点赞
  • 97
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值