极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 17050|回复: 7

带调速的安卓手机蓝牙遥控小车

[复制链接]
发表于 2015-1-30 15:01:42 | 显示全部楼层 |阅读模式
本帖最后由 JML 于 2015-1-30 22:52 编辑

所需配件如下:
       1:Arduino UNO R3 控制器 ;
       2 :L298N电机驱动模块;
       3 :无线蓝牙串口透传模块HC-06;
       4:小米充电宝(需拆开使用);
       5 : 智能车底盘带减速电机
  
图中的蓝牙遥控软件:
      
      下面附上控制代码,接线方法看代码:
   
char getstr;
int in1=3;
int in2=4;
int in3=7;
int in4=8;
int n=0;
int inENA=9;
int inENB=10;
//上面定义了板上的4个控制端,12一组,34一组 
void _mRight(int pin1,int pin2)//当in1和in2中有一个接高位时,电机会向某一方向转动

{ 
  digitalWrite(pin1,HIGH);
  digitalWrite(pin2,LOW);
} 
void _mLeft(int pin1,int pin2)//同上
{ 
  digitalWrite(pin1,LOW);
  digitalWrite(pin2,HIGH);
} 
void _mStop(int pin1,int pin2)//紧急制动,实际就是将电机两个端短接了
{ 
  digitalWrite(pin1,HIGH);
  digitalWrite(pin2,HIGH);
} 
void setup()
{ 
  Serial.begin(9600);
  pinMode(in1,OUTPUT);
  pinMode(in2,OUTPUT);
  pinMode(in3,OUTPUT);
  pinMode(in4,OUTPUT);
  pinMode(inENA,OUTPUT);
  pinMode(inENB,OUTPUT);
  //下面程序开始时让控制端都为高电平,电机保持不动。
  digitalWrite(in1,HIGH);
  digitalWrite(in2,HIGH);
  digitalWrite(in3,HIGH);
  digitalWrite(in4,HIGH);
}

void loop()
{ 
  getstr=Serial.read();
  if(getstr=='A')
  { 
    Serial.println("go forward!");
    _mStop(in1,in2); 
    _mStop(in3,in4);
    _mRight(in1,in2); 
    _mRight(in3,in4); 
  } 
  else if(getstr=='B'){
    Serial.println("go back!");
    _mStop(in1,in2); 
    _mStop(in3,in4); 
    _mLeft(in1,in2); 
    _mLeft(in3,in4); 
  } 
  else if(getstr=='C'){
    Serial.println("go left!");
    _mStop(in1,in2); 
    _mStop(in3,in4); 
    _mRight(in1,in2); 
    _mLeft(in3,in4); 
  } 
  else if(getstr=='D'){
    Serial.println("go right!");
    _mStop(in1,in2); 
    _mStop(in3,in4); 
    _mRight(in3,in4);
    _mLeft(in1,in2); 
  } 
  else if(getstr=='7'){
    Serial.println("go back!");
    n=n+85;                         //每次累加值为5
    if (n>=255)
      n=255;
      analogWrite(9,n);
      analogWrite(10,n);
    }
    else if(getstr=='9'){
    Serial.println("go back!");
     n=n-85;
&#160;&#160;&#160;&#160;if (n<=0)
&#160;&#160;&#160;&#160;&#160;&#160;n=0;
&#160;&#160;&#160;&#160;&#160;&#160;analogWrite(9,n);
&#160;&#160;&#160;&#160;&#160;&#160;analogWrite(10,n);
&#160;&#160;&#160;&#160;}
&#160;&#160;else if(getstr=='F'){
&#160;&#160;&#160;&#160;Serial.println("Stop!");
&#160;&#160;&#160;&#160;_mStop(in1,in2);&#160;
&#160;&#160;&#160;&#160;_mStop(in3,in4);&#160;&#160;&#160;
&#160;&#160;}&#160;
}


  附件;
    下面是成品图:
   

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2015-1-30 16:47:24 | 显示全部楼层
还真不错
..........................
回复 支持 反对

使用道具 举报

发表于 2015-1-31 01:29:09 | 显示全部楼层
路由刷openwrt挂只摄像头,你懂得
回复 支持 反对

使用道具 举报

发表于 2015-1-31 16:51:31 | 显示全部楼层
感谢楼主分享
回复 支持 反对

使用道具 举报

发表于 2015-1-31 19:52:13 | 显示全部楼层
还带重力感应?
回复 支持 反对

使用道具 举报

发表于 2015-2-1 13:31:28 | 显示全部楼层
很有才。哈哈{:soso_e100:}
回复 支持 反对

使用道具 举报

发表于 2015-3-30 16:01:01 | 显示全部楼层
求楼主QQ,  正在做这个,希望与楼主交流交流
回复 支持 反对

使用道具 举报

发表于 2015-12-26 16:15:49 | 显示全部楼层
学习啦,代码构思真不错,一个人一个想法呀
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-26 09:31 , Processed in 0.043134 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表