自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 资源 (12)
  • 收藏
  • 关注

原创 Android Bluetooth杂记

本文仅供个人记录一些日常笔记,仅供参考!

2023-05-26 15:39:19 1280

原创 ARM架构概览

ARM架构概览

2022-08-18 15:09:25 2400

转载 Linux kernel coding style​​​​​​​

Linux kernel coding style

2022-08-15 11:12:27 577

原创 Astyle Linux编码风格配置

Astyle Linux编码风格设置

2022-08-12 10:26:08 1741

转载 Linux vi中按上下左右键出现ABCD及Backspace键失灵

Linux vi中按上下左右键出现ABCD及Backspace键失灵

2022-07-13 19:52:03 4057

转载 git commit无changeid解决方法

git commit无changeid解决方法

2022-07-13 19:47:44 6643

转载 ABI/EABI简介

EABI(Application Binary Interface)或EABI(Extend ABI)通常是处理器体系结构的一部分,它与平台是紧密相连的。我们可以把ABI理解为一套规则,这套规则一般包括定义了以下内容:1) 应用程序如何发出系统调用来trap到内核态。2) 如何使用机器的寄存器。比如,RISC处理器的ABI就要规定用那个通用寄存器来作 stack pointer和frame pointer。3) 规定如何进行procedure call。......

2022-07-04 16:28:14 1255

原创 Git服务器搭建

git服务器搭建

2022-06-24 15:00:55 2350

转载 VSCode GCC C++ 编译环境配置

Using GCC with MinGWIn this tutorial, you configure Visual Studio Code to use the GCC C++ compiler (g++) and GDB debugger frommingw-w64to create programs that run on Windows.After configuring VS Code, you will compile and debug a simple Hello World p..

2022-03-15 09:56:52 2720

转载 Python的@装饰器是干什么用的?

我们在编程过程中,常常会遇到这种需求:比如,我想开发一款计算器,我已经写好了一堆函数,用于执行各种计算,那么我们需要在执行各种计算函数前,首先对输入的数据进行检查,确保他们必须得是数值才允许执行函数,而不能是字符串;又如,我想编写一个用于计算三角形周长、面积、某个角角度的模块,已经写好几个函数用于计算,那么,在执行计算前,首先要确保输入的三条边长能够构成三角形,再进行计算才有意义;再比如,我想开发某款网络应用,写了一些函数用于实现用户的某些操作,那么,得要先检查确认该用户已经登录了,才允许执行这

2022-01-05 10:29:11 147

转载 Windows 10 Ubuntu samba共享文件配置

1. 按照ubuntu中的步骤,修改smb.conf文件,加入下列配置,并保存。[Work] comment = share work dir path = /home/sky/Work valid users = sky read only = no create mask = 0777 directory mask = 0777 writable = yes 2. 使用用户 david 在 /home/sky下面创建可写的Work目录m...

2021-12-30 10:17:57 709

转载 gerrit - first commit

最近公司有新项目,已经让领导帮我把clone和push的权限都开通了,但是在push的时候还是提交失败,错误信息如下:$ git push origin masterCounting objects: 26, done.Delta compression using up to 4 threads.Compressing objects: 100% (26/26), done.Writing objects: 100% (26/26), 4.28 KiB | 257.00 KiB/s,

2021-11-25 09:49:04 1510 1

转载 sourceinsight代码路径变更项目工程不用重建的方法

在使用sourceinsight的时候会遇到这样的情况,项目非常的大比如linux kernel, 重建一个sourceinsight工程需要手动的去添加很多文件,很麻烦。比如在服务器的某个目录下创建了sourceinsight项目工程,但是有天服务器的地址变了,代码路径也发生变化。这时候再打开sourceinsight工程就会报找不到代码文件。但是我又不想重新创建sourceinsight工程怎么办呢?这样的情况还是有办法解决的。比如你原来的项目在 A目录下,现在变更到B目录。步骤1: 先打开so

2021-11-17 16:47:22 1242

转载 Linux常用命令

MacOS和Linux都是基于Unix系统,二者在命令上基本都是通用的,今给大家介绍一下自己平时常用的16条Linux命令。命令1:pwdpwd显示当前的工作路径,查看位置所在。Peter提醒你:时刻都要搞清楚自己的位置!命令2:lsls命令十分常用,ls指的是list,查看文件或者目录的命令。添加参数后常用为: ls :查看目录中全部的文件 ls -l :显示文件和目录中的全部信息 ls -a :列出全部文件,包含隐藏文件,其中a表示为all l

2021-10-29 10:16:37 172

原创 SPP连接流程

SPP服务注册Server Channel即RFCOMM Server Channel, 表示上层profile的rfcomm channel。Central设备会使用SDP查询SPP的Server Channel, 在后面使用RFCOMM建立连接的时候就需要使用该Server Channel发起连接。ACL连接建立SPP仅使用在ACL链路,不支持Connectionless Channel. 所有RFCOMM流程和SPP流程仅发生在ACL链路建立之后。SDP查询ACL连接建立后,Ce..

2021-09-30 18:11:23 1723 1

转载 POSIX、Cygwin、MSYS、MSYS2、MinGW、MinGW-w64的区别

对于习惯了Linux上GCC编译器的朋友来说,总想在Windows上复制他们的经验,于是出现了各种方法将GCC编译器移植到Windows上的方法,那么哪种方法更好一些呢?这些方法之间又有什么联系呢?POSIXPOSIX:可移植操作系统接口(Portable Operating System Interface of UNIX,缩写为 POSIX),POSIX 标准定义了操作系统应该为应用程序提供的接口标准,是 IEEE 为要在各种 UNIX 操作系统上运行的软件而定义的一系列 API 标准的总称,其

2021-09-26 15:45:42 6134 1

原创 BTSnoop 文件格式

概述BTSnoop 文件格式适用于存储蓝牙 HCI 数据流。 它与 RFC 1761 中记录的 snoop 格式非常相似。文件格式snoop 数据包捕获文件是一个八位字节数组,结构如下:文件头(File Header)是一个固定长度的字段,包含有关数据包文件的一般信息及其包含的数据包记录(Packet Record)的格式。 文件头之后是一个或多个可变长度的数据包记录(Packet Record)字段。 每个数据包记录(Packet Record)字段保存一个捕获数据包的数据。文件头

2021-09-18 13:51:23 1010

转载 蓝牙HID无线触摸屏

写在前面主机:Android 5.0+ 内核3.4从机:SensorTile原理解析HID事件到Android屏幕上经历了如下过程:HID => linux kernel input子系统 => Android input子系统HID是标准的输入协议,对于不同的操作系统而言,也有自己的input子系统。Android层要求以Android为例,如果要想让Android系统认为一个输入设备是一个触摸屏,需要该内核设备上报:// 对于单点触控而言ABS_X A

2021-09-09 10:26:29 3361 2

转载 AD的单端输入和差分输入区别

单端输入,输入信号均以共同的地线为基准。如图所示,单端输入只有一个输入引脚ADCIN,使用公共地GND作为电路的返回端,ADC的采样值=ADCIN电压-GND的电压(0V)。这种输入方式优点就是简单,缺点是如果vin受到干扰,由于GND电位始终是0V,所以最终ADC的采样值也会随着干扰而变化。而差分输入比单端输入多了一根线,最终的ADC采样值=(ADCIN电压)-(ADCIN-电压),由于通常这两根差分线会布在一起,所以他们受到的干扰是差不多的,输入共模干扰,在输入ADC时会被减掉,从而降低了干..

2021-07-12 14:02:30 5496

转载 Linein和Micin的区别

我们的电脑声卡上,一般都会有Line in和Mic in两个接口,翻译成中文就是“线性输入”和“麦克风输入”,这两个都是输入端口,但是还是有区别的:1、Line in端口:该端口主要用于连接电吉他、电子琴、合成器等外界设备的音频信号输出的录音,由于这些设备本身输出功率就比较大,因此需要连接到Line in端口录音,当然使用它们录音从某种程度上也可以被称为外部设备的“内录”。一般您使用的声卡越好,Line in里的噪音就会越低,录制效果也会比较好。2、Mic in端口:这要是连接麦克风录音使用的。但是

2021-07-12 10:15:42 9253

原创 BR/EDR 测试模式

1. 简介2. BR/EDR测试场景3. 测试控制接口(TCI)

2021-06-15 11:13:04 2994 3

转载 Bluetooth Packet Structure

Bluetooth Packet StructureThe Bluetooth®Special Interest Group (SIG)[1]and[2]defines different packet structures for Bluetooth low energy (BLE) and Bluetooth basic rate/enhanced data rate (BR/EDR) devices.BLE Packet StructureBit Ordering in BLE ...

2021-05-17 17:31:23 852

转载 深入理解FIFO(包含有FIFO深度的解释)

FIFO: 先入先出队列(First Input First Output,FIFO)这是一种传统的按序执行方法,先进入的指令先完成并引退,跟着才执行第二条指令。 1.什么是FIFO? FIFO是英文First In First Out 的缩写,是一种先进先出的数据缓存器,他与普通存储器的区别是没有外部读写地址线,这样使用起来非常简单,但缺点就是只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加1完成,不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址...

2021-05-17 11:00:01 12843

转载 Bluetooth Class of Device/Service (CoD) And Access codes

转自:https://www.bluetooth.com/specifications/assigned-numbers/baseband/Assigned Numbers for BasebandAssigned numbers for Baseband identifies the Inquiry Access codes and Class of Device/Service (CoD) fields.The General- and Device-specific Inquiry Acc

2021-05-14 16:01:48 831

转载 PTA是什么?BT-WIFI共存

蓝牙和WIFI共存设计  蓝牙和802.11b/g/n都可能工作在2.4GISM,可能互相干扰。干扰的典型应用之一是VOIP,用手机的WLAN打VOIP电话,用蓝牙耳机来通话。互相干扰的后果是用户能感觉到通话质量的下降。  设计上有些方法能够减少相互干扰,尽量维持蓝牙和wifi的throughput,使得用户的使用体验不受影响。方法主要是AFH和分时。  是否存在相互干扰和相互干扰是否严重受以下条件影响:  1.共用天线还是单独用自己天线  2.干扰是噪音还是阻塞  3.蓝牙通信频率是否落在wi

2021-05-12 18:15:17 6327

转载 频偏计算方式

1.频偏表示与中心频率的偏差值,一般是以ppm作为单位来描述的,ppm是百万分之一的意思也就是10^-6,2.如何计算频偏假如我们有一个晶振,它的频率标值是12MHZ,但是我们测试到的是11.99998MHZ。那么Foffset=12-11.99998=0.00002MHZ。ppm=(0.00002/12)*10^6=1.67。3.一般在选中晶振的时候选中精度相对好点的。类似STM32这样的芯片其实ppm<30的时候基本可以接受。原文链接:https://blog.c...

2021-04-28 14:00:51 7818

原创 -bash: ./build.sh: /bin/bash^M: 坏的解释器: 没有那个文件或目录

今天在编译新项目SDK的时候碰到这个问题,特此记录一下。首先我在windows系统里面下载的代码,我尝试在windows下面运行build.sh没什么问题,但由于工具链是linux的,我就把代码拷贝到linux下编译就出现了这个错误。问题原因在各操作系统下,文本文件所使用的换行符是不一样的。UNIX/Linux 使用的是 0x0A(LF),但 DOS/Windows 一直使用 0x0D0A(CRLF)作为换行符。Git提供了一个“换行符自动转换”功能。在下载和提交代码的时候,它会自动将换行符进行转换,

2021-04-27 14:22:24 723

转载 Git 多台电脑共用SSH Key

有时为了方便我们不想重新生成一个ssh key再放到github上,或者有时候我们想家里的电脑和公司的电脑都能下载同一个仓库的代码,那么我们就要在不同设备上共有一个ssh key。转自: https://my.oschina.net/sfshine/blog/1820115好了,下面一步一步来实现SSH Public/Private Key的在多台电脑中的共用:1.首先我们给旧的MBP起名叫OLD, 新的叫NEW,方面后面区分2.拷贝OLD上的id_rsa和id_rsa.pub到云端/U盘/邮箱/…

2021-04-27 11:37:04 12149 1

原创 Git查看和修改用户名

一、查看用户名$ git config user.name$ git config user.email二、修改用户名$ git config --global user.name "xxxx" $ git config --global user.email "xxxx"

2021-04-27 11:19:37 1034

原创 ISO 639:1988 : Code for the representation of names of languages

ISO 639:1988 : Code for the representation of names of languagesLanguageISO-639 Language CodeAlbaniansqAmharicamArabicarAfaraaArmenianhyAymaraayAssameseasAzerbaijaniazBashkirbaBasqueeuBengali (Bangla)bn

2021-04-16 11:08:09 179

原创 像素和内存的关系

一、公式像素所占内存 = 分辨率x像素深度二、 举例:1) 一幅彩色图像的分辨率是1024x768,每个像素用R,G,B三个分量表示,若每个分量用8位,那么一个像素共用24位表示,就说像素的深度为24。所以该图片所占用的内存为:1024x768x3 byte。2)一个OLCD的显示屏像素为128x64, 像素深度是1bit, 完整的一屏需要的数据为128x64x1 bit。...

2021-03-18 09:15:05 9023

转载 HCI 接口

HCI InterfaceThe communication between a Host (a computer or an MCU) and a Host Controller (the actual Bluetooth chipset) follows the Host Controller Interface (HCI), see {@fig:HostChipsetConnection}. HCI defines how commands, events, asynchronous and sy

2021-02-18 14:24:05 966

转载 Android C++的sp<>指针简介

智能指针是c++ 中的一个概念,因为c++ 本身不具备垃圾回收机制,而且指针也不具备构造函数和析构函数,所以为了实现内存( 动态存储区) 的安全回收,必须对指针进行一层封装,而这个封装就是智能指针,c++的智能指针有很多实现方式,有auto_ptr , unique_ptr , shared_ptr 三种,还有其他的。android 中的sp 句柄类实际上就是google 实现的一种强引用的智能指针, 是一个模板类。Android 中封装了sp<> 强指针,wp<>弱指针的操作。

2021-01-13 17:19:16 2743

原创 Android Bluetooth蓝牙名称和地址修改测试

根据前面的两篇文章,我们就来尝试一下对android蓝牙名称和地址进行修改。一、 蓝牙地址:添加属性ro.bt.bdaddr_path及对应的配置文件,修改蓝牙地址为public类型。1.修改 android/device/actions/s700_cb7/system.prop ,添加ro.bt.bdaddr_path属性。#hdmi config ro.hdmi.onoffmode=auto# add by zdxro.bt.bdaddr_path=/etc/bluetooth/bt_ad

2021-01-07 11:54:57 2245

原创 Android Bluetooth蓝牙设备地址修改

Android Bluetooth蓝牙设备地址修改读取蓝牙设备地址在蓝牙初始化的时候获取:bt_status_t btif_init_bluetooth(){ /* As part of the init, fetch the local BD ADDR */ memset(&btif_local_bd_addr, 0, sizeof(bt_bdaddr_t)); btif_fetch_local_bdaddr(&btif_local_bd_addr);}

2021-01-05 17:09:24 4648 1

原创 Android Bluetooth蓝牙名称修改

一、蓝牙名称获取AdapterService.java (packages\apps\bluetooth\src\com\android\bluetooth\btservice) static final int BT_PROPERTY_BDNAME = 0x01; static final int BT_PROPERTY_BDADDR = 0x02; public void onCreate() { getAdapterPropertyNative(Abstrac

2021-01-05 10:54:55 2404

翻译 LE Audio规范概述

一、LE Audio架构二、定义LE Audio的蓝牙规范SpecificationDescriptionBluetooth Core Specification蓝牙核心规范于2019年12月得到增强,以支持通过蓝牙LE传输音频,包括新的LE同步通道(Isochronous Channels)功能。LC3: Low Complexity Communications Codec2020年9月发布的新规范定义了高质量,低功耗的音频编解码器。Generic Audio

2020-12-31 11:56:40 5472

原创 Git操作记录

错误: Permissions 0666 for ‘/home/local/zdx/.ssh/id_rsa’ are too open.Permissions 0666 for ‘/home/local/zdx/.ssh/id_rsa’ are too open.It is required that your private key files are NOT accessible by others.This private key will be ignored.bad permissions

2020-12-28 10:46:27 218

转载 Android 蓝牙Hid开发

Demo下载:http://www.demodashi.com/demo/13891.html最近客户需求,android系统的一个设备,想连接一个扫描枪(类似蓝牙键盘,只支持hid协议),并且可以收到其数据,填写到输入框中。我这里借了一个蓝牙鼠标,用来与android设备连接。1 Hid简介HID设备(Hunman Interface Device Profile),即人机交互设备,常见的有鼠标,键盘,游戏手柄,等等。一般有线方式都是通过USB连线连接到机器设备,作为用户输入设备。在蓝牙技术中,HI

2020-12-25 14:38:20 5338 2

原创 Android GATT Discover过程抓包

Android GATT Discover 过程抓包Tool: Frontline BPA600Sniffer packets:Frame# Role Opcode Handle UUID Database Error code Frame size Delta TimeStamp

2020-12-18 16:16:43 402 2

Introducing-Bluetooth-LE-Audio-book

Introducing Bluetooth LE Audio book form Bluetooth SIG

2022-02-08

ETSI TS 07.10.pdf

蓝牙RFCOMM用到的协议。The RFCOMM protocol provides emulation of serial ports over the L2CAP protocol [2].The protocol is based on the ETSI standard GSM 07.10.

2021-04-16

UTF-8汉字码表.txt

utf-8中文汉字编码表

2021-02-04

BLE语音遥控器抓包

BLE语音遥控器抓包

2020-12-18

MAC地址厂商分配表MA-S(oui36)

IEEE MAC地址厂商分配表MA-S(oui36)

2020-12-02

MAC地址厂商分配表MA-M(mam)

MAC地址厂商分配表MA-M(mam)

2020-12-02

MAC地址厂商分配表MA-L(oui)

IEEE MAC地址厂商分配表 MA-L

2020-12-02

Device Class Definition for HID 1.11

The Device Class Definition for HID 1.11 is intended to supplement the USB Specification and provide HID manufacturers with the information necessary to build USB-compatible devices. It also specifies how the HID class driver should extract data from USB devices. The primary and underlying goals of the HID class definition are to: > be as compact as possible to save device data space > allow the software application to skip unknown information > be extensible and robust > support nesting and collections > be self-describing to allow generic software applications

2019-02-11

蓝牙Mesh技术白皮书

Mesh is a network topology used for establishing many-to-many (m:m) device communications. The mesh topology available on Bluetooth LE enables the creation of large-scale device networks and is ideally suited for control, monitoring, and automation systems where tens, hundreds, or thousands of devices need to reliably and securely communicate with one another.

2018-06-04

Bluetooth Low Energy The Developers Handbook

Bluetooth Low Energy (Bluetooth LE, colloquially BLE, formerly marketed as Bluetooth Smart[1]) is a wireless personal area network technology designed and marketed by the Bluetooth Special Interest Group (Bluetooth SIG) aimed at novel applications in the healthcare, fitness, beacons,[2] security, and home entertainment industries.[3] Compared to Classic Bluetooth, Bluetooth Low Energy is intended to provide considerably reduced power consumption and cost while maintaining a similar communication range.

2018-05-13

最新版HID Descriptor Tool

This tool allows you to create, edit and validate HID Report Descriptors. The tool also supports a variety of output formats (.txt, .inc, .h, etc.). DT uses ASCII based Usage Tables and supports vendor defined pages as well. Included are Usage Table files for the HID Usage Table document 1.0 Release Candidate 1, Monitor Class 1.0 Release Candidate 2, and Power Class Spec. Read the included README.TXT file for more information.

2018-04-23

Perl语言入门 中文 第六版(含书签)

Perl语言入门 中文 第六版(含完整书签)

2016-11-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除