Arduino智能小车设计(七)

上回书说到,小车的超声波避障功能基本完成。那么本篇就来介绍最后一个功能,蓝牙智能控制功能。

废话不多说,来吧。

蓝牙控制功能

最令我感动的是,我原以为最困难的一个功能在实际操作下居然成为了最简单的那个。

原本我以为,蓝牙模块要查一堆代码并且慢慢理解才能掌握(这个模块一开始是和我同组的另一个组员来研究的,所以我当时并不了解。),没想到这个功能一下子就搞出来了,现在细细来说吧。

示例代码:

int inputPin = 8; // 定义超声波信号接收接口
int outputPin = 9; // 定义超声波信号发出接口

int STBY = 11; //控制电机驱动状态引脚

int PWMA = 3; //A电机速度控制
int AIN1 = 23; //A电机方向
int AIN2 = 22; 

int PWMB = 5; //与上述A做对应即可
int BIN1 = 25;
int BIN2 = 24; 
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);       //波特率设为9600
  
}

void loop() {
  // put your main code here, to run repeatedly:
  int i;
  Serial.println("Hello World!");     //这个代码是一开始测试用的,用的Arduino上的串口监视器来测试数据是否接收到
  if(Serial.available())                   //下面这个if条件语句,是让从串口输入数据来给i赋值的
  {
     i=Serial.parseInt();
  }
  Serial.println(i,DEC);
  switch(i)              //i的值不同,所实现的功能不同
  {
    case 2:            //如果i=2,小车前进
    {
      move(1,128,1);
      move(2,128,1);
      Serial.println("前进");      //输出这个是为了测试输入的数据是否进入了case语句中
      break;
    }
    case 4:            //如果i=4,小车左转
    {
      move(1,90,1);
      move(2,90,0);
      Serial.println("左转");
      break;
    }
    case 6:            //如果i=6,小车右转
    {
      move(1,90,0);
      move(2,90,1);
      Serial.println("右转");
      break;
    }
    case 8:            //如果i=8,小车后退
    {
      move(1,128,0);
      move(2,128,0);
      Serial.println("后退");
      break;
    }
    case 5:            //如果i=5,小车停止
    {
      move(1,0,0);
      move(2,0,0);
      Serial.println("STOP!!!");
      break;
    }
  }
}

当然要控制,只有代码是不行的,要下一个app叫蓝牙串口。
在这里插入图片描述
就是这么一个app,进去后也要设置好。进入页面,点击右上角的连接,找到HC—05,连接初始密码是1234
在这里插入图片描述
成功连接后,你就可以输入消息了。比如输入2,则给i赋值为2,就会打印“前进”字符,证明了成功进入了case 2语句中,随后小车前进。其他样例与之类似,蓝牙功能就可以实现了。

这个app有一点十分方便,输入数据的十分麻烦,如果是按键形式,那不就简单多了,这个app就有这种功能。在这里插入图片描述
聊天那一行,如果往右滑,会发现一个键盘的操作界面,打开编辑模式,你就可以自己改变了。比如点击前进,就自动输入2这个消息,十分方便吧。

我的想法:

在蓝牙功能这一设计上,并没有出现太多的困难。(大概是实现的功能太简单了吧,蓝牙的其他功能没有涉及到的缘故吧)

至此,Arduino智能小车的三个功能就介绍完了。不出意外的话,下一篇智能小车介绍的内容应该是矩阵焊接(因为现在实现的功能是一个一个的,还没有选择这一功能),完成矩阵焊接,各个模块就都可以放在小车上了。

加油
  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值