最近做的东西需要通过低功耗蓝牙BLE发送和接收一串的十六进制数据,现在终于把发送搞定了。 现在要用手机发送一串指令“01 01 02 12 45 65”,想要既可以直接发送,也可以手动输入任何十六进制进行发送,找了很多资料要么是蓝牙(不是BLE)的,要么是发送接收一个数(整型、字符等待),发送一串数据就比较难搞了。以前都是用Light Blue发的,每次指令都要手打很烦,有必要整一个整合
这文章主要是对工作的笔记。总结提高。 首先,手机和BLE设备的通信过程,可以有串行通信和并行通信。 串行通信:就是手机每次发送一条命令到BLE设备,直到BLE设备处理完毕,并回复手机处理结果后,手机才能发送下一条命令。 并行通信:手机可以同时发送多条命令给BLE设备,然后,BLE设备可以串行处理,也可以并行处理,每处理完一条命令就回复手机一次。 因为手机和BLE设备通信并不是非常的频繁,一次发送多
# Android BLE 接收广播 在Android开发中,BLE(蓝牙低功耗)技术被广泛应用于各种设备之间的通信,其中接收广播是一个非常重要的功能。本文将介绍如何在Android应用中接收BLE广播,并给出相应的代码示例。 ## BLE 广播概述 BLE广播是指设备通过广播信号向周围的设备发送自己的信息,其他设备可以通过扫描这些广播信号来获取相关信息。在Android中,我们可以通过注册
原创 3月前
75阅读
 对于数据的存储操作而言, Android 中一共提供了五种方式: SharedPerferences 方式、文件存储方式、 SQLite 数据库存储、 ContentProvider SharedPerferences 提供了一些基础的信息保存功能,所有的信息都是按照“ key=value ”的形式进行保存的,但是 android.content.SharedPerferencesS
说到蓝牙模块,就不得不说下主、从机:主机 : 用于向从机下发指令,能够搜索从机并主动建立连接的一方。从机 : 用于接收主机下发的命令,不能主动建立连接,只能等别人连接自己。主从一体 : 能够在主机和从机模式间切换,即可做主机也可作从机。HC-06与HC-05不同的是 :   HC-05一般都是主从机一体,既可以设置为主机也可以设置为从机。  而HC-06在市场上分为两种情况,一
# Android BLE搜索广播并接收数据Android开发中,蓝牙低功耗(BLE)技术被广泛应用于各种设备之间的通信。其中,搜索广播并接收数据BLE通信的一种重要方式。本文将介绍如何在Android应用中使用BLE API进行搜索广播并接收数据的操作,并提供相应的代码示例。 ## BLE搜索广播原理 在BLE通信中,设备通常会周期性地广播自己的信息,其他设备可以通过扫描周围的广播包
原创 1月前
80阅读
         最近公司开发需要用到蓝牙,花了大约一天的时间总结整理了一下。主要是为了以后自己方便看。有需要的朋友可以看下。欢迎一起讨论。后面会带上demo。里面是实现了蓝牙搜索,配对,连接,数据互传。首先需要AndroidManifest.xml文件中添加操作蓝牙的权限。<uses-permission android:name="and
分层思想无论是OSI七层模型,还是在BLE协议,为了能快速理解,可以利用分而治之的思想把大问题分割成多个小问题。各层向上提供服务,向下提供兼容。从整体来看,低功耗蓝牙体系的整体结构主要分为三个部分:主机host,控制器,以及基于此向上提供的应用层。主机就是开发接触比较多的软件栈部分,用来管理设备间通讯以及如何利用无线电提供服务。控制器就是负责发送和接收无线电信号,以及如何把携带信息的数据包翻译成无
上一篇Android广播接收器(一)讲了使用动态注册和静态静注册广播接收器的方法来接收系统发出的广播。这篇要讲的是如何来发送自定义广播。1.发送标准广播首先新建一个类继承自BroadcastReceiver,用来接收广播public class MyBroadcastReceiver extends BroadcastReceiver { @Override public void onRecei
App Inventor 2 WxiBit 汉化增强版 蓝牙发送接收数据模板写了好多Arduino 硬件的文章 也有物联网的 也有PID 的 这回来分享一下软件 介绍一下我们使用的平台 App Inventor 2 WxiBit 汉化增强版 是华南理工大学 杨道全 老师开发并维护的 一个安卓App 开发平台 相比虽然功能更为强大,需要掌握JAVA且操作难度较高的Android Studio 连C语
           最近在做AppLink相关的,但是在所有配置搭建完毕之后,发现部分的手机无法实现AppLink的功能。比如华为,三星等等国外的手机;国内的oppo,vivo,小米等是可以的;           那么是为什么呢?那么就从源码开始观察一下呗;想一想,先从Pac
很多时候我们的软件需要对处理后的数据进行存储或再次访问。Android数据存储提供了如下几种方式: (1)文件 (2)SharedPreferences(参数) (3)SQLite数据库 (4)内容提供者(Content provider)1.使用文件进行存储和访问Java提供了一套完整的IO流体系,这些IO可以非常方便的访问各种文件内容,
# 如何在Android BLE建立连接后立即接收数据 ## 流程图 ```mermaid flowchart TD A(初始化BLE适配器) --> B(扫描BLE设备) B --> C(连接BLE设备) C --> D(启用通知) D --> E(接收数据) ``` ## 步骤与代码示例 ### 1. 初始化BLE适配器 在`onCreate`方法中初
原创 3月前
53阅读
ADB(Android Debug Bridge) 小白笔记学习资料adb简要介绍adb 是一个 C/S 架构的命令行工具,主要由 3 部分组成:运行在 PC 端的 Client : 可以通过它对 Android 应用进行安装、卸载及调试运行在 PC 端的 Service : 其管理客户端到 Android 设备上 adb 后台进程的连接运行在 Android 设备上的 adb 后台进程ADT/S
背景在学校内就用过蓝牙技术参加过比赛(并拿了奖);而蓝牙作为物联网中比较常见的协议,有必要进行深入的学习。此后的文章会以 ble(v4.0) 进行学习。介绍蓝牙技术最初由电信巨头爱立信公司于 1994 年创制,当时是作为 RS232 数据线的替代方案。蓝牙可连接多个设备,克服了数据同步的难题。随着蓝牙耳机、蓝牙鼠标、蓝牙音箱等蓝牙设备渐渐充斥着我们的生活,蓝牙早已不单纯是数据线的替代方案。如今蓝牙
转载 1月前
8阅读
# Android BLE 开发中如何接收设备的数据Android BLE 开发中,与外围设备通信通常涉及到两个角色:中央设备(Central Device)和外围设备(Peripheral Device)。中央设备通常是我们的 Android 手机或平板电脑,而外围设备可以是传感器、心率手环等。 接收外围设备的数据BLE 开发中的一个常见需求。下面将介绍一种解决方案,以帮助开发者实
原创 9月前
1715阅读
这边由于我不知道我们公司的设备代码怎么设计的,所以不太清楚通用性如何,不过一般而言应该差不多吧。首先我自定义了一个蓝牙连接管理的类,初始化的参数为Activity的context(这里我写的很随意,理论上这个类写在Service中更好):public class BTManager { private Context context = null; private BluetoothAdapt
连接建立 应付比广播更为复杂的数据传输,或者要在设备之间实现可靠的数据交付,这些都要依赖于连接。连接使用数据信道在两个设备之间可靠地发送信息。它采取了自适应跳频增强鲁棒性,同时使用了非常低的占空比,尽可能地降低功率消耗。设备创建连接的过程如下图所示。简言之,设备首先广播可连接广播事件,其他设备收到之后即可发起连接。在此过程中,广播者发送的事件类型要么是通用广播事件,要么是直接广播事件。发起者收到正
知识点:经典蓝牙(Classic Bluetooth)& 低功耗蓝牙(Bluetooth Low Energy)经典蓝牙可以用与数据量比较大的传输,如语音,音乐,较高数据量传输等。BLE 特点就如其名,功耗更低的同时,对数据包做出了限制。所以适用于实时性要求比较高,但是数据速率比较低的产品,如鼠标,键盘,传感设备的数据发送等。蓝牙 4.0 支持单模和双模两种部署方式,其中单模即是我们说的
转载 2023-07-09 15:19:18
147阅读
一、Ble蓝牙操作流程蓝牙操作流程图二、权限声明1.在Android 6.0(targetSdkVersion小于23)之前在权限的获取和操作只需在AndroidManifest文件中声明这两个权限就可以。注册蓝牙权限2.在Android 6.0(targetSdkVersion等于或大于23)之后,操作蓝牙需要申请GPS定位权限,而且在权限的获取和操作上有所改动,分为Normal Permiss
转载 2023-08-02 18:47:30
88阅读
  • 1
  • 2
  • 3
  • 4
  • 5