智能移动设备和Arduino微电脑,两者相辅相成,可各自发挥所长。例如,用手机当成Arduino的显示器或输入设备,Arduino当做手机的硬件扩展口,控制灯光和自走车,或者返回温湿度传感器的数据给手机。

电波、频段和无线传输简介

利用电波或红外线来传输数据。可见光、红外线和电波都是一种电磁波,并非所有的频段和无线电设备都需要使用执照,世界各国都有保留某些给工业(industrial)、科学研究(Scientific)和医疗(Medical)方面的频段,简称ISM频段,2.4GHZ是世界各国共同的ISM频段,因此市面上许多无线通信产品都采用2.4GHZ。
NFC是一种采用电磁波,用于1~2米内的短距离无线通信技术,全名是Near Field Communicatin(进场通信,或近距离无线通信)。在联机范围内的两台机器要相连时,只要在屏幕上点选是否接收另一方的联机即可。

14-2 认识蓝牙(Bluetooth)

蓝牙是一种近距离无线数据和语音传输技术,主要用于取代线材和红外线传输。蓝牙主要用于无线耳机和数据传输,蓝牙技术联盟(Bluetooth Special Interest Group,简称SIG),定义了多种蓝牙规范(Profile,或译为“协议”):
HID:制定鼠标、键盘和游戏杆等人机接口设备(human interface device)所要遵循的规范。
HFP: 泛指用于行动设备,支持语音拨号和重拨等功能的免提听筒设备
A2DP: 可传输16位、44.1kHZ取样频率的高质量立体声音乐,主要用于随身听和影音设备。
SPP:用于取代有线串口的蓝牙设备规范。Bluetooth 2.1 + EDR代表“加强资料传输率(Enhanced Data Rate)

动手做14-1 使用软件串口程序连接Arduino与蓝牙模块

**实验说明:**在电脑上通过蓝牙与Arduino板联机,控制端口13上的LED。
蓝牙模块通过串口和Arduino板联机,不过,Arduino的程序和“串口监控窗口”也是通过串口传输。Arduino微电脑板默认只有一个串口(简称“系统串口”),应保留给串口监控窗口使用,本单元将通过SoftwareSerial(软件串口)扩展库,把其他端口变成串口给蓝牙模块使用。
**实验电路:**数字0和1是Arduino自带的串口端口,我们可以连接蓝牙模块。蓝牙模块的发送端(Tx)接Arduino的接收端(Rx),这种方式会占用系统串口,应该避免使用。
实验程序: Arduino软件自带的SoftwareSerial扩展库,能让我们指定任意两个端口充当串口

//蓝牙模块其实就是无线串口,程序写法和有线的串口相同。
#include <SoftwareSerial.h>
SoftwareSerial BT(10, 9);  //自定义SoftwareSerial类型对象,参数(接收端,发送端)
const byte ledPin = 13;
char val;
void setup() {pinMode(ledPin, OUTPUT); ///*初始化串口,请依照你的蓝牙模块设置联机速率,笔者的模块采用9600bps速率联机。*/BT.begin(9600);BT.print("BT is ready!"); //
}void loop() {if (BT.available()){val = BT.read();switch (val) {case '0':digitalWrite(ledPin, LOW);break;case '1':digitalWrite(ledPin, HIGH);break;}}
}

动手做14-2 用Android手机蓝牙遥控机器人

**实验说明:本单元的遥控机器采用Android手机蓝牙控制,架构图如下:
控制原理是从手机蓝牙传递字符给机器人,机器人的微电脑将依照收到的’w’、'a’等字符,执行前进和转弯等动作。
实验材料:
具备蓝牙的Android智能手机、采用两个碳刷电机的模型动力玩具、L298N电机模块、蓝牙接口模块、电池盒

14. 手机蓝牙遥控机器人制作相关推荐

  1. 在windowsXP系统下,如何通过手机蓝牙让电脑上网

    1/:安装完BlueSoleil后,插上蓝牙Dongle,右击"我的电脑","属性",会发现系统自动添加"Bluetooth DUN modem&qu ...

  2. microbit编程_使用图形化编程实现主控板与手机蓝牙通讯(2019.3.25)

    本文转自:DFRobot创客社区 原文链接: [Mind+]使用图形化编程实现主控板与手机蓝牙通讯-Mind+论坛-DF创客社区​mc.dfrobot.com.cn 本帖最后由 Forgotten 于 ...

  3. 笔记本电脑通过手机蓝牙上网

    硬件准备:             笔记本电脑(测试 HP 6120x)             蓝牙USB dongle (推荐CSR芯片)             蓝牙手机(带DUN功能, 测试M ...

  4. 基于手机蓝牙的arduino遥控小车

    遥控小车是每个人童年的最爱,不仅好奇它的奇妙,更是喜欢它带来的刺激.小编为大家带来几篇博客,来给大家讲讲制作遥控小车的程序. 看大标题可知我们一共有五个方法去制作一款带有遥控功能的小车,小编分开来给大 ...

  5. android ev3 蓝牙连接,手机蓝牙遥控EV3教程

    本帖最后由 徐小JUN 于 2014-5-16 20:28 编辑 想必和我一样刚入手EV3的人都很想体验下它的新功能--蓝牙和WIFI 蓝牙都可以实现,只是WIFI的话,EV3现在只支持一款网卡 -- ...

  6. 基于QT的安卓手机蓝牙APP开发

    摘要:前段时间用QT写了一个串口调试助手,感觉还可以.因为QT是跨平台的,同样一套代码可以在windows上面跑,也可以在linux上面跑,也可以在安卓手机上面跑.而且不需要修改任何东西,编译器会自动 ...

  7. 手机直播app制作时怎样在iOS中实现富文本

    我们在观看直播时,经常会看到有的主播房间名字下面带有话题小标签,比如#搞笑的一天##悲伤的瞬间##双十一买了点啥#等,虽然看起来是很小的一个功能,但是在进行手机直播app制作时,在iOS中通过富文本的 ...

  8. 如何利用手机蓝牙与第三方进行数据交互?

    最近,自己想通过手机来控制摩托车实现靠近开锁.离开自动锁车的功能. 但在实际操作的时候,着实是发现一头雾水. 如何实现靠近开锁.离开锁车? 我想到的方法仅有以下几种: a.红外[不现实,需要瞄准,而且 ...

  9. 项目小实战:51单片机控制的手机蓝牙遥控小车设计(程序 元件清单 实物图)

    这几天有时间做了一个手机控制的蓝牙遥控小车车,终于今天实现了,把过程和心得跟大家分享一下. 废话不多说,先上实物图 一.项目元件清单 1.某宝购买一个智能小车底盘(本人车是四驱的,因此有四个电机,两块 ...

最新文章

  1. 工作能力强的人有哪些共同特征?
  2. linux 路径名长度限制,linux下 如何修改命令行提示符路径提示符路径长度
  3. python如何将生成的随机数存入文件中_用python在excel中读取与生成随机数写入excel中...
  4. java参数注解pam_java – 使用xmlelement defaultvalue注释指定默认值的简单方法
  5. 报文解析_104规约报文结构解析
  6. C#中的i++和++i
  7. django的get和filter方法的区别
  8. Filecoin网络目前总质押量约为4110万枚FIL
  9. 大橡塑属于机器人板块吗_机器人中的启蒙教育
  10. 计算机的硬盘 u盘启动,U盘启动和硬盘启动两种不同教程步骤
  11. 【X240 QQ视频对方听不到声音】解决方法
  12. c语言a十六进制的地址,使用gdb调试c程序以显示十六进制地址
  13. HashTable与ConcurrentHashMap的区别
  14. messagebox函数弹窗后根据选择的YES或者NO做出不一样的操作
  15. ORB SLAM论文
  16. 基础摄影测量学_光束区域网平差法列加密区内第一次迭代的全部原始误差方程式
  17. java根据指定大小kb压缩图片
  18. 微信小程序—修改日期
  19. 【毕业设计】树莓派单片机墨水屏电子日历系统 - 物联网 嵌入式
  20. Flutter 自定义组件实战

热门文章

  1. 待定系数法求二阶常系数非齐次线性方程特解
  2. kali在高清屏幕下如何放大字体与图标
  3. 计算机组成原理简答题
  4. word中装订线位置_word装订线位置在哪里
  5. 天津专升本应届生学信网学籍在线验证报告查询下载操作步骤
  6. 【波段分析】揭秘主力做庄波段分析指标支持多分时级别
  7. [技术干货] zabbix docker安装详细教程
  8. 专业项目管理软件统御项目管理系统V7.0(oKit)试用感受
  9. 卸载cuda,以及N卡驱动
  10. 大写日期(大写日期10月前要写0吗)