清泛IT社区App Inventor 2 中文社区

搜索

扫码访问移动社区 移动社区,您的掌上技术专家

关注我,精彩不错过! 关注我,精彩不错过!

扫码安装最新版AI伴侣 最新版AI伴侣v2.74

Aia Store .aia 源码一站式解决方案 发布日志AI2连接测试ai2Starter模拟器

App Inventor 2 离线版AI2 拓展接入DeepSeek VIP会员 享专有教程,免费赠送基础版*技术支持服务! AI2入门必读中文文档中文教程IoT专题

查看: 69|回复: 2
打印 上一主题 下一主题

[已解决] ble蓝牙的标识符怎么确定的

AppInventor2 SVIP会员

  • TA的每日心情
    给力
    2024-08-12 15:12
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    3

    主题

    6

    帖子

    147

    积分

    初级会员

    Rank: 2

    积分
    147

    AI2中文网VIP

    跳转到指定楼层
    楼主
    发表于 前天 10:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
    这个里面ble蓝牙的服务UUID和特征UUID的标识符为什么是F000和F001

    图片1.png (55.43 KB, 下载次数: 0)

    图片1.png
  • TA的每日心情
    开心
    昨天 07:36
  • 签到天数: 421 天

    [LV.9]以坛为家II

    688

    主题

    1186

    帖子

    3万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    30667

    AI2中文网VIP弹球达人接水果达人撸猫达人

    沙发
    发表于 前天 13:26 | 只看该作者
    1、UUID 背后的理念是,由于空间非常大(2^128,比宇宙中原子的估计数量还要多),随机选择两个 UUID 来标识事物时几乎不可能产生碰撞。如果您知道要连接的服务/特性,那么将它们编码到应用程序中是有意义的。如果您正在开发一个更通用的 UI,以便人们探索 BLE 建议中可用的服务,那么您可能需要查看 DeviceCharacteristics 属性,该属性返回一个包含服务、特性和名称(如果扩展程序知道特性名称)的元组列表。


    但是:经过实际测试,该方法可能不准确,或者报错。具体可以自己尝试。

    2、最准确、靠谱的方式:问ble硬件厂商要,大部分人(包括我在内)都是这么获取到的服务id和特性id的。

    3、软件探测:
    nFC Connect低功耗蓝牙APP工具的使用:https://bbs.tsingfun.com/thread-1481-1-1.html

    LightBlue® 可以将您连接到所有使用低功耗蓝牙(也称为蓝牙智能或蓝牙 Light)的设备。使用 LightBlue®,您可以扫描、连接和浏览附近的任何 BLE 设备。它全面支持读取、写入和通知功能,以简化 BLE 固件开发工作。您还可以实时查看信号强度 (RSSI),了解您与 BLE 设备的距离,方便您查找丢失的 Fitbit 或其他 BLE 设备!日志功能允许您……

    免费
    请自行研究。

    参考资料:https://community.appinventor.mi ... hle-extension/17433

    App Inventor 2 中文网 - MIT同步更新的中文本土化平台!v2.74 支持Android 14 更新日志
  • TA的每日心情
    开心
    昨天 07:36
  • 签到天数: 421 天

    [LV.9]以坛为家II

    688

    主题

    1186

    帖子

    3万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    30667

    AI2中文网VIP弹球达人接水果达人撸猫达人

    板凳
    发表于 前天 13:35 | 只看该作者
    还有AI版本的回答,仅参考
    ------------------------------
    您好!关于蓝牙发送模块中的 ServiceUUID,这是一个非常关键的概念,尤其是在使用 BLE(低功耗蓝牙)时。下面我来为您详细解释一下:
    什么是 ServiceUUID?
    ServiceUUID 是蓝牙服务的唯一标识符(UUID,Universally Unique Identifier)。它用于定义蓝牙设备提供的某种特定功能或服务。例如:
    • 一个健康手环可能会有一个心率监测的服务。
    • 一个智能家居设备可能会有一个温度控制的服务。
    每个服务都有一个唯一的 UUID 来标识它。通过这个 UUID,您的 App 可以识别并连接到特定的服务。

    如何获取 ServiceUUID?
    • 设备厂商提供
      通常,蓝牙设备的厂商会在其开发文档中提供服务和特征的 UUID 列表。您可以查阅设备的官方文档来找到这些信息。
    • 通用标准服务
      蓝牙 SIG(Special Interest Group)定义了一些标准服务的 UUID。例如:
      • 心率监测服务:0x180D
      • 设备信息服务:0x180A
      • 电池电量服务:0x180F
    • 扫描设备获取
      如果您不知道设备的 ServiceUUID,可以通过蓝牙扫描工具(如 nRF Connect)来获取设备支持的所有服务及其对应的 UUID。


    在 App Inventor 中如何使用 ServiceUUID?
    在 App Inventor 的蓝牙组件中,ServiceUUID 通常用于指定要连接的蓝牙服务。例如:
    • 当您使用 BluetoothClient.Connect 方法时,需要指定目标设备的地址和服务的 UUID。
    • 在 BLE 模块中,ServiceUUID 用于筛选和匹配特定的服务。
    以下是一个简单的代码逻辑示例:
    [color=rgb(102 112 133/var(--tw-text-opacity))]Block
    [backcolor=rgb(255 255 255/var(--tw-bg-opacity))]




    1
    BluetoothClient1.DeviceFound 被触发 [address, name] {
    2
        如果 (name 包含 "目标设备名称") {
    3
            设置 BluetoothClient1.Address address
    4
            设置 BluetoothClient1.ServiceUUID "0000180f-0000-1000-8000-00805f9b34fb"  # 示例:电池服务
    5
            调用 BluetoothClient1.Connect
    6
        }
    7
    }



    注意事项
    • UUID 格式
      UUID 通常是一个 128 位的字符串,格式类似于:0000180f-0000-1000-8000-00805f9b34fb。确保输入正确的格式。
    • 兼容性问题
      不同设备可能使用不同的服务和特征。如果连接失败,请检查是否使用了正确的 ServiceUUID。
    • 学习更多
      如果您想深入了解蓝牙服务和特征的工作原理,可以参考我们的 IoT 文档,其中包含了详细的说明和示例。


    App Inventor 2 中文网 - MIT同步更新的中文本土化平台!v2.74 支持Android 14 更新日志
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    © 2025 tsingfun.com, Inc.  沪ICP备2020034476号-1  沪公网安备31011702000040号

    GMT+8, 2025-04-13 02:20 , Processed in 0.021816 second(s), 37 queries .