0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样制作一个受Android和Bluetooth LE控制的RGB灯

454398 来源:网络整理 作者:佚名 2019-11-04 09:16 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:

我们正在使用BT模块来透明地发送/接收数据,不需要对出厂默认设置进行太多更改。我发现设置唯一的名称并确认您的模块正常工作很有帮助。为此,您需要FTDI电缆或Arduino板。

重要提示: HM-10的运行电压为3.3V,许多Arduino的电压为5V。如果将BLE模块连接到5V的电源而没有逻辑电平转换器和稳压器,则可能会损坏它。

如果您购买了带有分线板的HM-10模块,那就太好了。如果您需要构建分线板,请转到本教程。如果您想自己解决问题,可以在此数据表中找到引脚排列。

使用串行/FTDI电缆

Connect

HM-10 TX-FTDI RX

HM-10 RX-FTDI TX

HM-10 GND-FTDI GND HM-10 VCC-FTDI VCC

然后通过控制台连接到FTDI电缆或您最喜欢的串行终端。某些效果很好:

Linux/Mac-CuteCom

Linux/Windows/Mac-CoolTerm RealTerm

设置:9600,N,8,1;

如果正在使用Arduino

打开Arduino软件,然后将 Examples-》 SoftwareSerial-》 SoftwareSerialExample 上传到您的设备

Connect

HM-10 TX-Arduino Pin 10 softRX

HM-10 RX-Arduino Pin 11 softTX HM-10 GND-Arduino GND HM-10 VCC-Arduino 3.3V

以9600波特打开串行监视器。

命令

BLE模块使用AT命令读取和写入系统信息,不需要在它们后面加换行符。如果您在输入命令时未得到响应,则可能未正确连接某些模块,因此您需要对模块进行故障排除。

连接时,键入:

AT -它应该响应OK

您可以找到固件版本:

AT + VERS?-固件版本

并设置设备名称:

AT + NAME?-获取当前名称

AT + NAME您的名字-设置名称(最多12个字符)

数据表中的全套AT命令

如果出现所有内容要正常工作,是时候继续安装Android和Arduino应用了!

步骤2:安装Arduino Sketch

如果您使用的是WS2811/WS2812 Strip

复制并安装Arduino草图。您可以在此处找到代码。

如果您使用的是不带IC的RGB LED

您可以改用此示例代码。

步骤3:将蓝牙模块和LED连接至Arduino

将HM-10连接至Arduino

将蓝牙RX和TX引脚连接至您的微控制器。就我而言,我不会使用Arduino的USB,因此我会使用数字引脚0和1上的内置串行端口。如果您需要微控制器的USB功能,请尝试使用软件串行。

HM-10 RX-Arduino TX(D1)

HM-10 TX-Arduino RX(D0)

连接RGB LED灯条

对于WS2812灯,您仅需要3个引脚:数据到数字引脚6、5V和GND。如果您使用的是其他灯条,则可能有4个引脚,并且需要包含用于驱动这些灯的相关代码。

如果您使用的是RGB灯条或不带某种IC的LED,则可以遵循此Arduino示例。 》 将电源连接到Arduino

我正在使用USB电源包,但是您可以使用壁式电源适配器或USB连接到计算机。

第4步:安装Android应用程序

安装应用

该应用程序仍处于“概念验证”阶段,因此尚未为Play商店准备就绪。如果要下载它,则需要对其进行侧面加载。我希望可以使用App Inventor或PhoneGap创建具有BLE支持的快速应用程序,但是此功能太新了,尚不支持,所以我尝试了Android SDK!

首先启用Unknown Sources的应用程序检查:

设置-》安全-》 未知来源

将APK直接下载到手机中,或通过USB复制,然后使用文件浏览器运行该文件。

此应用程序的功能以及如何对其进行修改

该应用程序非常基础,在您连接到BT模块后,它会寻找串行服务,然后从中获取值3个滑块,并将它们作为字符串发送到Arduino,在此它们被转换为LED值。它基于Android示例代码。

Bluetooth LE使用一种称为通用属性配置文件(GATT)模型的模型,该模型定义了服务和特征,这些特征通过称为的 UUID 即可。 HM-10有一项服务,可让您传递数据,我发现 UUID 是 0000ffe0-0000-1000-8000-00805f9b34fb 。您用于发送和接收数据的特征的UUID为 0000ffe1-0000-1000-8000-00805f9b34fb

欢迎您修改和改进源。首先安装Android SDK捆绑包非常有用

在此处实时使用的主要文件

BluetoothLeService.java-蓝牙LE功能

DeviceControlActivity.java-连接到设备时会发生什么情况

DeviceScanActivity .java-扫描BLE设备的例程

SampleGattAttributes.java-定义公认的服务和特征 nRF主控制面板对于嗅探服务和特征以及了解有关BLE设备的信息非常有用

步骤5:将所有内容放在一起

1。插入您的Arduino。

2。打开Blue Light Android应用程序。如果一切正常,您应该会在范围内看到BLE模块。选择它!

3。如果连接成功,则第二个屏幕应显示“状态:已连接”,并且如果找到串行服务“是,串行:-)”

4。调整滑块,您的灯光应更改颜色

5。 hack,庆祝,修改,玩和享受!

未来的改进

*功能更强大的Android应用(支持图案,颜色选择器等)

未来的BLE项目

*用ATTiny代替Arduino

*利用HM-10上的GPIO引脚* iBeacon(最新HM-10固件支持)

*尝试刷新HM-10使用Red Bear Lab的开源Biscuit固件

第6步:使事物变得美丽

您需要什么

*纸板管

*胶带

*电源或USB延长线

*纸灯笼

放置Arduino和蓝牙在纸板管内的模块中,用另一块纸板覆盖底部,以免它们掉落。将您的LED灯带缠绕在灯管的外部,并绑好胶带。

将电源或USB延长线连接到Arduino。

您可以通过天花板上的挂钩将灯笼悬挂起来,或者使用一些单丝(钓鱼线) )。

将纸板管放在灯笼内,您可以在顶部戳孔,然后用细绳或电线将其悬挂。现在,您有了一个受Android和Bluetooth LE控制的RGB灯:-)
责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Android
    +关注

    关注

    12

    文章

    4035

    浏览量

    134480
  • BlueTooth
    +关注

    关注

    3

    文章

    238

    浏览量

    64031
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    使用 iw612 Android 14 或 15 NXP 版本中是否有任何可用的 LE 音频支持?

    使用 iw612 Android 14 或 15 NXP 版本中是否有任何可用的 LE 音频支持?
    发表于 04-03 07:26

    乐鑫发布 ESP32-H21:支持 Thread 与 Bluetooth® 5 (LE) 的超低功耗 SoC!启明云端乐鑫代理及方案商

    支持Thread、Zigbee、Matter与Bluetooth5(LE)设备的低功耗无线SoC;集成片上DC-DC转换器,显著降低工作电流,延长电池供电时间;支持
    的头像 发表于 03-10 18:34 550次阅读
    乐鑫发布 ESP32-H21:支持 Thread 与 <b class='flag-5'>Bluetooth</b>® 5 (<b class='flag-5'>LE</b>) 的超低功耗 SoC!启明云端乐鑫代理及方案商

    无法连接配对的Maya W1和iOS iPhone Bluetooth LE,如何解决?

    看到的区别是 Android 使用 LE 通道选择算法 hciconfig 不显示错误: hci0:类型:主总线:UART BD 地址:6C:1D:EB:93:80:40 ACL
    发表于 03-10 06:28

    RGB时序条的工作原理讲解

    图文配合讲解了RGB时序条的应用场景、什么是RGB时序条、信号格式与传输规则、珠芯片的工作流程、颜色与动态效果
    发表于 02-06 11:36 0次下载

    《机智云Gokit3开发篇》4 RGB的介绍与驱动移植(HAL库)

    的色彩控制能力。本文聚焦Gokit3开发板(MCU模式,主控STM32F103C8T6),以HAL库为开发基础,从P9813驱动芯片的工作原理入手,系统讲解RGB
    的头像 发表于 01-28 19:11 5316次阅读
    《机智云Gokit3开发篇》4 <b class='flag-5'>RGB</b><b class='flag-5'>灯</b>的介绍与驱动移植(HAL库)

    升级 Bluetooth® 5,双享软件五折与年免费订阅!

    岁末将至,全新篇章即将开启。Bluetooth®5与LE音频技术正引领无线音频迈入全新纪元。为满足这些技术进步的需求,音频测试工具必须与时俱进。Bluetooth5APx模块提供可重复的精准测量,为
    的头像 发表于 12-25 16:17 946次阅读
    升级 <b class='flag-5'>Bluetooth</b>® 5,双享软件五折与<b class='flag-5'>一</b>年免费订阅!

    NXP SR040 + QN9090 UWB/Bluetooth LE Combo模块深度解析

    : Murata 2DK型UWB,BLUETOOTH® LE组合模块.pdf 、模块概述 该模块的初步规格编号为SP - ZZ2DK - WEB - VERSION,设计名称为Type2DK,有两
    的头像 发表于 12-16 16:30 782次阅读

    Bluetooth® LE FindMe 示例在CY8C6347LQI-BLD52中不起作用是怎么回事?

    Bluetooth® LE FindMe 示例在CY8C6347LQI-BLD52中不起作用
    发表于 11-11 07:23

    如何制作RGB565标志?

    如何制作RGB565标志?
    发表于 09-04 06:35

    Bluetooth® SPP 至 PUART 数据丢失了怎么解决?

    我已经创建了简单的 ModbusToolBox 应用程序(通过修改“RFCOMM 串行端口”应用程序)来通过Bluetooth® SPP 接收数据并将其发送到 PUART,但我看到
    发表于 08-15 06:32

    Bluetooth LE安全机制以及在nRF Connect SDK中的应用

    . 低功耗蓝牙Bluetooth LE安全必须应对 的3 种常见攻击类型: 身份追踪,被动窃听(嗅探)和主动窃听(中间人MITM) 身份跟踪:利用蓝牙地址来跟踪设备。这可以通过使用随机变化的可解析
    的头像 发表于 07-04 10:11 2621次阅读
    <b class='flag-5'>Bluetooth</b> <b class='flag-5'>LE</b>安全机制以及在nRF Connect SDK中的应用

    Bluetooth LE L2CAP Signaling Channel支持的PDU命令只有三

    -specifications-interpretation/ 如下为完整的真实的数据包示例,注意:Bluetooth LE 空中包采用小端模式。 ​ 编辑 AAAB5D65501
    发表于 06-03 11:24

    Bluetooth LE Packet格式

    Address为32bit的随机值 , 由Initiator生成。数据包,其实是数据信道上的空中包的简称,数据包只在数据信道上传输,即除37/38/39之外的其余37信道(Bluetooth
    发表于 06-03 10:45

    Bluetooth LE Link Layer数据包全解析

    Bluetooth LE有几种空中包格式? 常见的PDU命令有哪些? PDU和MTU的区别是什么? DLE又是什么? Bluetooth LE怎么实现重传的?
    发表于 06-03 10:28

    蓝牙LE Audio技术简介和优势分析

    Energy)技术的优点,同时又具备卓越的音频性能。本文将从技术简介和优势分析两方面对蓝牙LE Audio技术进行详细的介绍。 、蓝牙LE Audio技术简介 蓝牙
    的头像 发表于 05-21 16:08 5173次阅读