技术标签: arduino Arduino / IoT 蓝牙 ios 开发人员
通过这篇文章,你可以了解到以下内容:
BLE 全称是 Bluetooth Low Energy 低功耗蓝牙的缩写,是蓝牙 4.0 的一个分支。
BLE 支持 iPhone4s 以上的 iOS 设备,并且无需做 MFI 认证,因此对于个人开发者及一些中小型开发团队快速开发硬件原型以及智能家居等产品设备有着极大的便利。
作为 Arduino 开发者,我们常见的蓝牙 BLE 模块主要是采用美国TI公司CC2541芯片的模块,这种模块比较容易购买,现在能买到的蓝牙BLE模块主要有两种,一种是已经焊接好,带有针脚的模块,另外一种是没有焊接针脚的,用户可以根据自己项目及需求的实际情况进行选择。
我们可以通过USB-TTL 模块
将蓝牙BLE
与电脑连接,使用蓝牙串口助手软件对蓝牙BLE模块进行调试。
USB-TTL
与 BLE4.0
的连接方法如下:
BLE4.0 | USB-TTL |
---|---|
VCC | 3.3V |
GND | GND |
TXD | RXD |
RXD | TXD |
注意,在通电之前,请确保连接正确,以防因连接错误而损坏模块设备!
接线完成后,把 USB-TTL
连接电脑,打开串口调试软件(可以根据自己的使用习惯选择串口调试软件),选择好正确的端口号,打开串口即可通讯。
BLE4.0的AT指令大致与HC05蓝牙模块类似,详细AT指令请参考购买时商家提供的手册。
这里有一点需要注意,BLE4.0模块进入AT指令设置模式,不需要向HC05一样需要按着模块电路板上的按钮,但是需要确保该模块没有被连接。
接下来,我们将尝试使用Arduino和BLE4.0模块与 iOS 设备进行互联通信。进行这个实验,我们需要预先准备好以下内容:
名称 | 数量 |
---|---|
iOS 设备 | 1 |
Arduino | 1 |
BLE 4.0模块 | 1 |
FM连接线 | 若干 |
LightBlue App | 1 |
准备好后,下面开始连接 Arduino 和 BLE4.0 模块:
Arduino | BLE4.0 |
---|---|
5V | VCC |
GND | GND |
TX | RXD |
RX | TXD |
连接完成后,我们接着为 Arduino 编写程序。程序非常简单,程序的主要功能为接收蓝牙数据,如果截获数据为A
,那么久返回 BLE get char A.
。程序代码如下:
void setup()
{
Serial.begin(9600);
}
void loop()
{
while(Serial.available()){
char c = Serial.read();
if (c == 'A') {
Serial.println("BLE get char A.");
}
}
}
编译上传程序到 Arduino 上之后,我们打开 LightBlue
,测试是否能正常使用。
打开 LightBlue App,打开蓝牙,我们可以看到周围的蓝牙设备,我们这里的 BLE4.0 设备名称是 BT05
,接下来,我们点击 BT05
,可以看到左上方显示 Connected
字样,代表连接成功。接下来,我们下拉到最下面,点击 TX&RX
进入 TX&RX
子页,可以看到以下的内容:
注意页面的最右上方,这里现在是显示 Hex
,我们需要的是使用 UTF-8
编码方式进行通讯,因此,我们点击 Hex
,进入设置页面,选择 UTF-8 String
设置编码方式为 UTF-8 编码。
设置完成后,我们就可以通过 WRITTEN VALUES
来输入发送数据,然后可以在 READ/NOTIFIED VALUES
里面看到 Arduino 返回的数据。
我们可以看到,LightBlue 已经收到 Arduino 返回的 BLE get char A.
字符串,到这里为止,实验成功。
这篇文章简单介绍了BLE的特点,以及如何视同 USB-TTL 设置蓝牙模块的AT指令,最后通过一个Arduino蓝牙与iOS设备连接的小实验来了解手机和Arduino蓝牙是如何通信的。如果你需要了解蓝牙HC05模块的使用方法,可以参考另外一篇文章Arduino使用HC05蓝牙模块与手机连接。
文章浏览阅读1.3k次。资深HR告诉你:应聘如何百发百中?
文章浏览阅读8.7k次。这里有个功能,当点击时间或者取消选择时间,要触发事件来进行操作。但是当时间组件type为dates时就不能点击触发chang事件,点击确定按钮才会触发。这里在是对这个进行监听来触发事件<el-date-picker v-model="shangkedata" type="dates" clearable placeholder="选择日期" format="yyyy - MM - dd" value-format="yy_vue3中el-date-picker没有点击事件吗?
文章浏览阅读468次。#1. 介绍这篇文章简单地介绍了python的paramiko模块的用法,paramiko实现了SSH协议,能够方便地与远程计算机交互。简单的说,就是你在terminal下执行的如下语句,现在可以通过python的paramiko实现了。# 执行shell语句ssh -i ~/.ssh/id_rsa -p 1098 [email protected] -e 'ls -al'# 拷贝数据到远程计算..._paramiko.sshclient().invoke_scp()
文章浏览阅读358次。【黑莓定义】 所谓黑莓手机(Blackberry),是指由加拿大Reserach In Motion Ltd.,,简称RIM公司推出的一种无线手持邮件解决终端设备。 因其使用了标准的QWERTY英文键盘,看起来像是草莓表面的一粒粒种子,所以得名“黑莓”;同时,该设备在后期的产品中,也加入了手机的功能,所以国内普遍称之为“黑莓手机”。 但是一般俗称的黑莓机,指..._7290 yz倒置
文章浏览阅读1.2k次。读万卷书,写万行代码。我的意思不是说理论知识无用,更不是说“读书顶个鸟用”。对于读书无用论我认为是!TRUE.正如古人云,读万卷书行千里路。不过技术的东西靠实践,知易行难。 在我大一的时候,我老以为看了几本书我就能上天入地,咋地咋地……最后我发现一切都是浮云。回想大一的自己是多么的愚蠢,大一的时候我最喜欢的书是缓冲区溢出了。在河滨常常跑到本部去借书,我记得《黑客防线》有一本_写万行代码
文章浏览阅读975次。作者:YY的晕,北邮渣硕,对后台开发有浓厚兴趣,程序员面试特邀作者!美团-金融一面JVMJVM的结构新生代和老年代的垃圾回收算法虚拟机栈和本地方法栈的区别类信息会加载到JVM哪个区域JA..._java美团金融项目
文章浏览阅读876次。2019独角兽企业重金招聘Python工程师标准>>> ..._uft默认的运行结果的窗口
文章浏览阅读225次。A Gentle Introduction to Probabilistic Modeling and Density Estimation in Machine LearningAndA Detailed Explanation of Variational Auto-EncoderbyJiyang [email protected]/2..._vae模型详细
文章浏览阅读689次。微商微营销,现在很流行。加粉,加好友也是很多做微商朋友最关心的问题。选择一款适合自己的微信开通检测软件,不但可以提高自己的工作效率、还可以让你体验不一样的加粉效果。小编就来和大家分享一下正确选择微信开通检测软件的方法。 首先看软件的功能:服务范围是否广泛,实用;站内数据是否丰富。 然后看软件的价格:检测体统成本还是需要的,不要相信免费的,但是也不会很昂贵,比如雄霸微信账_测及人工检测,为您提供更好的使用体验 广告检测范围
文章浏览阅读68次。萝卜青菜,各有所爱。一般说来,用人部门对于简历的筛选是各有不同的。当然,也并不是没有相同之处。在与人力资源经理交谈中发现,内容的真实性是大家一致认定的标准之一;详实、不长篇累牍的简历比较让人认可;那些精心设计、贴着艺术照和写真照的简历,则鲜有用人单位投赞成票。 投放简历,是求职者找工作的第一步,而简历也就成了求职的敲门砖。是否有机会参加下一步的考核赢来工作的机会,全看这敲门...
文章浏览阅读283次。文章目录[1京东、摩拜——“裁员进行时”][2知乎、斗鱼——“突然大变脸”][3锤子、美图——“时间足够”“补偿足够”][4裁员应该是什么补偿标准?]回头看2018年进入第四季度后,宏观经济的不景气终于传导到了个人身上,“裁员”消息一波接着一波。烧钱最猛的各互联网大厂员工,率先沦为泡沫破灭时的“代价”,年底被裁,哀鸿遍野。据统计,从京东、知乎、锤子、到近期的美团、摩拜等..._年底了,互联网公司裁员汇总
文章浏览阅读89次。本文转载自:http://coolshell.cn/articles/7270.html ================================================ 全文译自墙外文章“NoSQL Data Modeling Techniques”,译得不好,还请见谅。这篇文章看完之后,你可能会对NoSQL的数据结构会有些感觉。我的感觉是,关系型数据库想把一致性,完整性,索..._nosql数据库如何建模