自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (8)
  • 收藏
  • 关注

原创 VMA与LMA

​​​​​​VMA:Virtual Memory Address 运行地址,程序真正运行的地址空间LMA:Load Memory Address 加载地址,程序实际存储的地址空间运行地址就是程序运行的地址,PC指针指向的地址,比如程序中print出的函数地址、数组地址等,都是指VMA。要作为运行地址,首先PC指针要能在这个地址空间内跑动,所以这段地址空间必须是可随机寻址的,也就是说可以...

2018-08-15 09:57:04 1450 1

原创 ​​​​​​汇编批量传送指令

查看linux内核代码时,常常看到下面八个汇编指令,下面简单讲解一下它们的含义和用法。这8个是汇编常用的批量传送指令,用来加载或者存储几个连续的内存。ldmib、ldmia、ldmdb、ldmda、stmib、stmia、stmdb、stmda、观察指令时可将指令分两部分解释:ldm:Load Memory  加载内存,意思是将内存加载到CPU寄存器中;stm:St...

2018-08-13 14:52:34 637

转载 arm-none-linux-gnueabi-gcc下载

转载原地址:http://www.veryarm.com/arm-none-linux-gnueabi-gcc#comments目录1 Linux解压版2 Linux安装版3 Windows Mingw32解压版4 Windows安装版5 RPM安装版6 源码arm-none-linux-gnueabi-gcc是 Codesourcery 公司(目前已经被Mentor收购)基于GCC推出的...

2018-07-31 08:52:23 665

原创 正则表达式

正则表达式^          行开头$          行结尾[abc]      任何在[]之内的字符[^abc]     任何不在[]之内的字符,注意^放在[]之内[a-z]      表示字符a到z[A-Z]      表示字符A到Z[a-zA-Z]   表示字符a到z或者A到Z[a-zA-Z_]  表示字符a到z或者A到Z或者_.          点表示任意字符...

2018-07-19 17:49:45 1417

转载 [转载]ARM交叉编译工具链 gnueabi、none-eabi、arm-eabi、gnueabihf、gnueabi区别

为什么要用交叉编译器?交叉编译通俗地讲就是在一种平台上编译出能运行在体系结构不同的另一种平台上的程序,比如在PC平台(X86 CPU)上编译出能运行在以ARM为内核的CPU平台上的程序,编译得到的程序在X86 CPU平台上是不能运行的,必须放到ARM CPU平台上才能运行,虽然两个平台用的都是Linux系统。交叉编译工具链是一个由编译器、连接器和解释器组成的综合开发环境,交叉编译工具链主要由bin...

2018-07-08 19:30:12 537

转载 ARM AMBA 外围设备 的datasheet

文章转载来源:https://www.crifan.com/download_arm_amba_peripherals_the_datasheet/可以去网页地址在线浏览对应的datasheet:http://infocentre.arm.com/help/index.jsp?topic=/com.arm.doc.set.primecell/index.html也可以去其中的网址中,下载对应的pd...

2018-04-08 14:46:39 1276

转载 ARM中的---汇编指令

一. 带点的(一般都是ARM GNU伪汇编指令)1. ".text"、".data"、".bss"依次表示的是“以下是代码段”,“以下是初始化数据段”,“以下是未初始化数据段”。2.".global"定义一个全局符号,通常是为ld使用。比如经常看到的.global _start3.".ascii"、".byte"、".short"、&q

2017-12-27 09:43:44 485

转载 蓝牙协议栈实现模式分析

蓝牙协议栈实现模式分析蓝牙技术是一项新兴的技术。它的主要目的就是要在全世界范围内建立一个短距离的无线通信标准 。它使用 2.4-2.5 GHz 的 ISM( Industrion Scientifc Medical ) 频段来传送话音和数据。运用成熟、实用、先进的无线技术来代替电缆,它提供了低成本,低功耗的线接口,使所有的固定和移动设备诸如:计算机系统、家庭影院系统、无绳电话系统、通信

2017-12-25 08:43:53 320

转载 51汇编指令集详解

数据传递类指令    以累加器为目的操作数的指令       MOV A,Rn       MOV A,direct       MOV A,@Ri       MOV A,#data   第一条指令中,Rn代表的是R0-R7。第二条指令中,direct就是指的直接地址,而第三条指令中,就是我们刚才讲过的。第四条指令是将立即数data送到A中。

2017-12-21 09:45:56 12196 6

原创 ucosII移植笔记

μC/OS-II临界区管理机制OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()同样是通过关中断来保护临界区,OS_ENTER_CRITICAL/OS_EXIT_CRITICAL一共实现了三种实现方式,如下所示: #if OS_CRITICAL_METHOD == 1  #define OS_ENTER_CRITICAL() __asm__("cli"

2017-10-18 19:22:32 351

转载 do{...}while(0)的意义和用法

转载来源:http://www.spongeliu.com/415.htmldo{...}while(0)的意义和用法linux内核和其他一些开源的代码中,经常会遇到这样的代码:do{ ...}while(0)这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有

2017-01-10 17:18:46 259

转载 【转载】Makefile经典教程(掌握这些足够)

以下文章转载自http://blog.csdn.net/zhuxiaoping54532/article/details/52628422makefile很重要      什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像

2016-11-17 10:18:56 612

原创 ucosII 应用设计笔记

1. 任务基本知识  1.1任务的划分  1.2任务的可调度性分析  2. 任务设计2.1任务的结构   1).单次执行的任务   2).周期性执行的任务   3).事件触发执行的任务2.2任务优先级的安排 1)ucos ii最多有64个优先级,(最高0~最低63) 2)在中可设置最低优先级      例:  #define  OS_LOWEST

2016-11-08 13:50:06 2575 1

原创 NEC协议红外解码

载波Carrier       占空比1/3       频率38kHz(由445kHz产生37.91kHz)Lead code + Custom code + Custom code + Data code + Data code + Stop BitLead code引导码    :  载波9ms + 没有载波4.5msRepeat code连发码 :  载波9ms + 没

2016-10-13 16:30:05 3119

原创 消息队列

#include "msg.h"#include "stdlib.h"//////////////////////// 消息队列 //////////////////////////消息队列发送的是消息指针/* @FUNCTION 创建消息队列 @INPUT pQ 消息队列控制块 start 消息队列首地址 size

2016-07-13 16:54:44 355

转载 hex格式

Intel HEX文件是由一行行符合Intel HEX文件格式的文本所构成的ASCII文本文件。在Intel HEX文件中,每一行包含一个HEX记录。这些记录由对应机器语言码和/或常量数据的十六进制编码数字组成。Intel HEX文件通常用于传输将被存于ROM或者EPROM中的程序和数据。大多数EPROM编程器或模拟器使用Intel HEX文件。 记录格式 Intel HE

2016-07-05 16:59:43 473

转载 进一步掌握STVD/COSMIC

转载自:http://www.waveshare.net/article/STM8-3-1-10.htm如何分配变量到指定的地址举例:unsigned char temp_A@0x00; //定义无符号变量temp_A,强制其地址为0x00unsigned char temp_B@0x100; //定义无符号变量temp_B,强制其地址为0x100@tiny unsig

2016-07-04 14:51:32 1250

原创 STM8的IAP在线升级

IAP(In Application Program)在线应用编程

2016-01-22 10:55:39 11673

转载 STVD环境下的#pragma section 用法

1、编写格式#pragma section[name]//在下面定义未初始化的变量#pragma section{name}//在下面定义初始化的变量#pragma section(name)//代码例如:#pragma section[Data_Section]int data1;int data2#pragma section[]//返回正常section2、地址设置STVD——P

2016-01-18 11:52:24 1442

嵌入式Linux应用程序开发标准教程.pdf(完整标签)

本书主要分为3个部分,包括Linux基础、搭建嵌入式Linux环境和嵌入式Linux的应用开发。Linux基础部分从Linux基础、基本操作命令讲起,为Linux初学者能快速入门提供了保证。接着系统地讲解了嵌入式Linux的环境搭建,以及嵌入式Linux的I/O与文件系统的开发、进程控制开发、进程间通信开发、网络应用开发、基于中断的开发、设备驱动程序的开发以及嵌入式图形界面的开发等,并且还安排了丰富的实验内容与课后实践,使读者能够边学边用,更快更好地掌握所学知识。   本书可作为高等院校电子类、电气类、控制类等专业高年级本科生、研究生学习嵌入式Linux的教材,也可供希望转入嵌入式领域的科研和工程技术人员参考使用,还可作为嵌入式培训班的教材和参考书。 第1章 Linux快速入门   1.1 嵌入式Linux基础    1.1.1 Linux发展概述    1.1.2 Linux作为嵌入式操作系统的优势   1.1.3 Linux发行版本    1.1.4 如何学习Linux   1.2 Linux安装   1.2.1 基础概念    1.2.2 硬件需求    1.2.3 安装准备   1.3 Linux文件及文件系统    1.3.1 文件类型及文件属性    1.3.2 文件系统类型介绍    1.3.3 Linux目录结构   1.4 实验内容——安装Linux操作系统   1.5 本章小结   1.6 思考与练习  第2章 Linux基础命令   2.1 Linux常用命令    2.1.1 用户系统相关命令    2.1.2 文件相关命令    2.1.3 压缩打包相关命令    2.1.4 文件比较合并相关命令    2.1.5 网络相关命令   2.2 Linux启动过程详解    2.2.1 概述    2.2.2 内核引导阶段    2.2.3 init阶段   2.3 Linux系统服务    2.3.1 独立运行的服务    2.3.2 xinetd设定的服务    2.3.3 系统服务的其他相关命令   2.4 实验内容    2.4.1 在Linux下解压常见软件    2.4.2 定制Linux系统服务   2.5 本章小结   2.6 思考与练习  第3章 Linux下C编程基础   3.1 Linux下C语言编程概述    3.1.1 C语言简单回顾    3.1.2 Linux下C语言编程环境概述   3.2 常用编辑器    3.2.1 进入vi    3.2.2 初探emacs   3.3 gcc编译器    3.3.1 gcc编译流程解析    3.3.2 gcc编译选项分析   3.4 gdb调试器    3.4.1 gdb使用流程    3.4.2 gdb基本命令   3.5 make工程管理器    3.5.1 makefile基本结构    3.5.2 makefile变量    3.5.3 makefile规则    3.5.4 make管理器的使用   3.6 使用autotools    3.6.1 autotools使用流程    3.6.2 使用autotools所生成的makefile   3.7 实验内容    3.7.1 vi使用练习    3.7.2 用gdb调试程序的bug    3.7.3 编写包含多文件的makefile    3.7.4 使用autotools生成包含多文件的makefile   3.8 本章小结   3.9 思考与练习  第4章 嵌入式系统基础  第5章 嵌入式Linux开发环境的搭建  第6章 文件I/O编程  第7章 进程控制开发 第8章 进程间通信 第9章 多线程编程  第10章 嵌入式Linux网络编程  第11章 嵌入式Linux设备驱动开发 第12章 Qt图形编程基础

2018-08-08

链接器和加载器(中文扫描版)

链接器和加载器(Linkers and Loaders) 目录: 第1章 链接和加载 1.1 链接器和加载器做什么? 1.2 地址绑定:从历史的角度 1.3 链接与加载 1.4 编译器驱动 1.5 链接:一个真实的例子 练习 第2章 体系结构的问题 2.1 应用程序二进制接口 2.2 内存地址 2.3 地址构成 2.4 指令格式 2.5 过程调用和寻址能力 2.6 数据和指令引用 2.7 分页和虚拟内存 2.8 Intel 386分段 2.9 嵌入式体系结构 练习 第3章 目标文件 3.1 目标文件中都有什么? 3.2 空目标文件格式:MS-DOS的COM文件 3.3 代码区段:UNIX的a.out文件 3.4 重定位:MS-DOS的EXE文件 3.5 符号和重定位 3.6 可重定位的a.out格式 3.7 UNIX的ELF格式 3.8 IBM 360目标格式 3.9 微软可移植可执行体格式 3.10 Intel/Microsoft的OMF文件格式 3.11 不同目标格式的比较 练习 项目 第4章 存储空间分配 4.1 段和地址 4.2 简单的存储布局 4.3 多种段类型 4.4 段与页面的对齐 4.5 公共块和其他特殊段 4.6 链接器控制脚本 4.7 实际中的存储分配 练习 项目 第5章 符号管理 5.1 绑定和名字解析 5.2 符号表格式 5.3 名称修改 5.4 弱外部符号和其他类型符号 5.5 维护调试信息 练习 项目 第6章 库 6.1 库的目的 6.2 库的格式 6.3 建立库文件 6.4 搜索库文件 6.5 性能问题 6.6 弱外部符号 练习 项目 第7章 重定位 7.1 硬件和软件重定位 7.2 链接时重定位和加载时重定位 7.3 符号和段重定位 7.4 基本的重定位技术 7.5 可重链接和重定位的输出格式 7.6 其他重定位格式 7.7 特殊情况的重定位 练习 项目 第8章 加载和覆盖 8.1 基本加载 8.2 带重定位的基本加载 8.3 位置无关代码 8.4 自举加载 8.5 树状结构的覆盖 练习 项目 第9章 共享库 9.1 绑定时间 9.2 实际的共享库 9.3 地址空间管理 9.4 共享库的结构 9.5 创建共享库 9.6 使用共享库链接 9.7 使用共享库运行 9.8 malloc hack和其他共享库问题 练习 项目 第10章 动态链接和加载 10.1 Elf动态链接 10.2 Elf文件内容 10.3 加载一个动态链接程序 10.4 使用PLT的惰性过程链接 10.5 动态链接的其他特性 10.6 运行时的动态链接 10.7 微软动态链接库 10.8 OSF/1伪静态共享库 10.9 让共享库快一些 10.10 几种动态链接方法的比较 练习 项目 第11章 高级技术 11.1 C++的技术 11.2 增量链接和重新链接 11.3 链接时的垃圾收集 11.4 链接时优化 11.5 链接时代码生成 11.6 Java链接模型 练习 项目 参考文献

2018-07-18

友善串口助手破解版

非常好用的串口助手,支持打印时间戳,显示空间大,速度快。

2017-12-29

mtktool 升级/打log工具

一种MTK的串口工具,用于升级烧录MTK IC或打log debug。

2017-12-29

AVRCP Profile官方规格

蓝牙核心规格 蓝牙设备的构成组件。 蓝牙核心规格定义各种技术构成组件,开发人员可以用它们来创建构成繁荣的蓝牙生态系统的互操作性设备。蓝牙规格由蓝牙技术联盟 (SIG) 负责监督,并由Bluetooth SIG 工作组 定期更新和补充,以满足不断发展的技术和市场要求。 蓝牙的两种类型 部署最为普遍的两种规格为蓝牙基础率/增强数据率 (BR/EDR)(采用版本为 2.0/2.1)和低耗能 (LE) 蓝牙(采用版本为 4.0/4.1/4.2)。每项部署都有不同的用例,同时采用不同的芯片以满足基本硬件要求。双模芯片也适用于包含两种用例的应用。 存在哪些差异? 蓝牙 BR/EDR—可建立相对较短距离的持续无线连接,因此非常适用于流式音频等应用 蓝牙 LE—可建立短时间的长距离无线电连接,非常适用于无需持续连接但依赖电池具有较长寿命的的物联网 (IoT) 应用 双模—双模芯片可支持需要连接 BR/EDR 设备(例如音频耳机)以及 LE 设备(例如穿戴设备或零售信标)的单一设备(例如智能手机或平板电脑) 核心系统结构 尽管每项部署都有具体要求(详见蓝牙规格),但蓝牙核心系统结构有许多统一要素。该系统包含射频收发器、基带和协议栈,支持设备连接和交换各类数据。 蓝牙设备交换根据蓝牙规格协议信号。核心系统协议包括射频 (RF) 协议、链路控制 (LC) 协议、链路管理器 (LM) 协议以及逻辑链路控制和适配协议 (L2CAP),蓝牙规格详细定义了这些协议。 最低的三个系统层—射频、链路控制和链路管理器协议—通常被归属于称为蓝牙控制器的子系统。这是一种采用可选标准接口—主机控制器接口 (HCI)—的通用部署,支持与蓝牙系统的其他设备(即蓝牙主机)进行双向通信。 主控制器可能是以下配置之一,具体取决于用例: BR/EDR 控制器,包括射频、基带、链路管理器和可选 HCI LE 控制器,包括 LE PHY、链路层和可选 HCI BR/EDR 组合控制器和 LE 控制器,组合控制器共享一个蓝牙设备地址 蓝牙规格通过定义等效层之间交换的协议信息来实现系统之间的互操作性。它还通过定义蓝牙控制器和蓝牙主机之间的公用接口来实现独立蓝牙子系统之间的互操作性。 蓝牙栈 物理 (PHY) 层 通过蓝牙通信信道控制 2.4Ghz 射频的传输/接收。BR/EDR 提供的信道较多但带宽较窄,而 LE 使用的信道较少但带宽较宽。 链路层 定义数据包结构/信道、发现/连接程序以及发送/接收数据。 直接测试模式 允许测试人员向 PHY 层发出指令以传输或接收给定数据包序列,通过 HCI 或 2 线 UART 接口提交命令。 主机控制器接口 (HCI) 蓝牙控制器子系统(底部三层)和蓝牙主机之间的可选标准接口。 逻辑链路控制和适配协议 (L2CAP) 层 基于数据包的协议,可将数据包传输至 HCI 或直接传输到无主机系统中的链路管理器。支持更高级别的协议多路复用、数据包分割和重组,以及将服务质量信息传输到更高层。 属性协议 (ATT) 在建立连接之后定义数据交换客户端/服务器协议。使用通用属性配置文件 (GATT) 将属性分类为有意义的服务。ATT 主要用于 LE 部署,偶尔也会用于 BR/EDR 部署。 安全管理器 定义管理蓝牙设备之间配对完整性、身份验证以及加密的协议和操作,提供安全功能工具箱,其他组件可利用该工具箱支持不同应用所需的各种安全级别。 通用属性配置文件 (GATT) 使用属性协议,GATT 对封装设备组件性能的服务进行分组,并描述基于 GATT 功能的用例、角色和一般性能。其服务框架定义服务规程和格式及其特性,其中包括发现、读取、写入、通知以及指示特性以及配置特性广播。GATT 仅用于蓝牙 LE 部署。 详细了解 GATT 信息。 通用访问配置文件(GAP) 可与蓝牙 LE 部署中的 GATT 配合使用,以定义与发现蓝牙设备和共享信息相关的规程和角色,以及连接蓝牙设备的链路管理内容

2017-12-29

A2DP Profile 规格

蓝牙核心规格 蓝牙设备的构成组件。 蓝牙核心规格定义各种技术构成组件,开发人员可以用它们来创建构成繁荣的蓝牙生态系统的互操作性设备。蓝牙规格由蓝牙技术联盟 (SIG) 负责监督,并由Bluetooth SIG 工作组 定期更新和补充,以满足不断发展的技术和市场要求。 蓝牙的两种类型 部署最为普遍的两种规格为蓝牙基础率/增强数据率 (BR/EDR)(采用版本为 2.0/2.1)和低耗能 (LE) 蓝牙(采用版本为 4.0/4.1/4.2)。每项部署都有不同的用例,同时采用不同的芯片以满足基本硬件要求。双模芯片也适用于包含两种用例的应用。 存在哪些差异? 蓝牙 BR/EDR—可建立相对较短距离的持续无线连接,因此非常适用于流式音频等应用 蓝牙 LE—可建立短时间的长距离无线电连接,非常适用于无需持续连接但依赖电池具有较长寿命的的物联网 (IoT) 应用 双模—双模芯片可支持需要连接 BR/EDR 设备(例如音频耳机)以及 LE 设备(例如穿戴设备或零售信标)的单一设备(例如智能手机或平板电脑) 核心系统结构 尽管每项部署都有具体要求(详见蓝牙规格),但蓝牙核心系统结构有许多统一要素。该系统包含射频收发器、基带和协议栈,支持设备连接和交换各类数据。 蓝牙设备交换根据蓝牙规格协议信号。核心系统协议包括射频 (RF) 协议、链路控制 (LC) 协议、链路管理器 (LM) 协议以及逻辑链路控制和适配协议 (L2CAP),蓝牙规格详细定义了这些协议。 最低的三个系统层—射频、链路控制和链路管理器协议—通常被归属于称为蓝牙控制器的子系统。这是一种采用可选标准接口—主机控制器接口 (HCI)—的通用部署,支持与蓝牙系统的其他设备(即蓝牙主机)进行双向通信。 主控制器可能是以下配置之一,具体取决于用例: BR/EDR 控制器,包括射频、基带、链路管理器和可选 HCI LE 控制器,包括 LE PHY、链路层和可选 HCI BR/EDR 组合控制器和 LE 控制器,组合控制器共享一个蓝牙设备地址 蓝牙规格通过定义等效层之间交换的协议信息来实现系统之间的互操作性。它还通过定义蓝牙控制器和蓝牙主机之间的公用接口来实现独立蓝牙子系统之间的互操作性。 蓝牙栈 物理 (PHY) 层 通过蓝牙通信信道控制 2.4Ghz 射频的传输/接收。BR/EDR 提供的信道较多但带宽较窄,而 LE 使用的信道较少但带宽较宽。 链路层 定义数据包结构/信道、发现/连接程序以及发送/接收数据。 直接测试模式 允许测试人员向 PHY 层发出指令以传输或接收给定数据包序列,通过 HCI 或 2 线 UART 接口提交命令。 主机控制器接口 (HCI) 蓝牙控制器子系统(底部三层)和蓝牙主机之间的可选标准接口。 逻辑链路控制和适配协议 (L2CAP) 层 基于数据包的协议,可将数据包传输至 HCI 或直接传输到无主机系统中的链路管理器。支持更高级别的协议多路复用、数据包分割和重组,以及将服务质量信息传输到更高层。 属性协议 (ATT) 在建立连接之后定义数据交换客户端/服务器协议。使用通用属性配置文件 (GATT) 将属性分类为有意义的服务。ATT 主要用于 LE 部署,偶尔也会用于 BR/EDR 部署。 安全管理器 定义管理蓝牙设备之间配对完整性、身份验证以及加密的协议和操作,提供安全功能工具箱,其他组件可利用该工具箱支持不同应用所需的各种安全级别。 通用属性配置文件 (GATT) 使用属性协议,GATT 对封装设备组件性能的服务进行分组,并描述基于 GATT 功能的用例、角色和一般性能。其服务框架定义服务规程和格式及其特性,其中包括发现、读取、写入、通知以及指示特性以及配置特性广播。GATT 仅用于蓝牙 LE 部署。 详细了解 GATT 信息。 通用访问配置文件(GAP) 可与蓝牙 LE 部署中的 GATT 配合使用,以定义与发现蓝牙设备和共享信息相关的规程和角色,以及连接蓝牙设备的链路管理内容

2017-12-29

《蓝牙核心技术及应用》

马建仓版 第1章蓝牙技术概述 1.1蓝牙技术的发展 1.2蓝牙技术的特点 1.3蓝牙技术的协议标准 1.4蓝牙与其他短距无线通信技术 1.5蓝牙技术的应用 1.6本书的内容组织 1.7使用本书的几点建议 第一部分蓝牙协议规范 第2章蓝牙射频协议 2.1蓝牙射频协议规范 2.2蓝牙物理信道与时隙 第3章蓝牙基带与链路控制器协议 3.1蓝牙基带概述 3.2蓝牙物理链路 3.3蓝牙基带分组 3.4蓝牙基带纠错机制 3.5蓝牙基带逻辑信道 3.6蓝牙基带收发规则 3.7蓝牙基带信道控制和网络控制 3.8蓝牙基带收发定时 3.9蓝牙基带跳频选择 3.10蓝牙基带功率管理 3.11蓝牙基带链路监控 第4章蓝牙链路管理器协议 4.1蓝牙链路管理器概述 4.2蓝牙链路管理器协议规范 第5章蓝牙主机控制器接口协议 5.1蓝牙主机控制器接口概述 5.2蓝牙主机控制器接口数据分组 5.3蓝牙主机控制器接口指令分组 5.4蓝牙主机控制器接口事件分组 5.5蓝牙主机控制器接口错误代码表 5.6蓝牙主机控制器接口传输层 5.7蓝牙主机控制器接口通信流程 第6章逻辑链路控制与适配协议 6.1蓝牙逻辑链路控制与适配协议概述 6.2蓝牙逻辑链路控制与适配协议信道 6.3蓝牙逻辑链路控制与适配协议分段与重组 6.4蓝牙逻辑链路控制与适配协议数据分组格式 6.5蓝牙逻辑链路控制与适配协议信令 6.6蓝牙逻辑链路控制与适配协议信道状态机 6.7服务原语 第7章蓝牙服务发现协议 7.1蓝牙服务发现协议概述 7.2蓝牙服务发现协议服务记录 7.3服务搜索和服务浏览 7.4蓝牙服务发现协议协议说明 第8章蓝牙串口仿真协议 8.1蓝牙串口仿真协议概述 8.2蓝牙串口仿真协议功能 8.3蓝牙串口仿真协议所采用的TS0710的子集 8.4蓝牙串口仿真协议对TS0710所作的修改 8.5流控 第9章蓝牙IrDA互操作性协议 9.1蓝牙lrDA互操作性协议概述 9.2OBEX的对象模型和会话操作 9.3蓝牙通过RFCOMM对OBEX的支持 9.4蓝牙通过TCP/IP对OBEX的支持 第10章蓝牙音频与电话控制协议 10.1蓝牙音频协议 10.2蓝牙电话控制协议 第11章蓝牙网络封装协议 11.1蓝牙网络封装协议概述 11.2蓝牙网络封装协议分组 11.3蓝牙网络封装协议扩展分组头 11.4对IEEE802lp分组头的支持 第12章蓝牙音频视频分发传输协议 12.1蓝牙音频视频分发传输协议概述 12.2传输服务及传输过程 12.3信令过程及信令消息 第13章蓝牙音频视频控制传输协议 131蓝牙音频视频控制传输协议概述 132蓝牙音频视频控制传输协议说明 第二部分蓝牙应用框架 第14章蓝牙通用访问应用框架 14.1蓝牙通用访问框架(GAP) 14.2蓝牙服务发现应用框架(SDAP) 14.3蓝牙串口应用框架(SPP) 14.4蓝牙扩展服务发现应用框架(ESDP) 14.5蓝牙硬拷贝电缆替代应用框架(HCRP) 第15章蓝开对象交换应用框架 15.1蓝牙通用访问框架概述 15.2通用对象交换框架(GOEP) 15.3对象"惟"框架(OPP) 15.4文件传输应用框架(FP) 15.5同步框架(SP) 15.6基本成像框架(BIP) 15.7基本打印框架(BPP) 第16章蓝牙电话应用框架 16.1蓝牙无绳电话应用框架(CTP) 16.2蓝牙对讲机应用框架(IntP) 16.3蓝牙头戴式设备应用框架(HSP) 16.4蓝牙免提应用框架(HFP) 第17章蓝牙连网应用框架 17.1蓝牙拨号上网应用框架(DUNP) 17.2蓝牙局域网访问应用框架(LAP) 17.3蓝牙传真应用框架(FaxP) 17.4蓝牙个人局域网应用框架(PANP) 17.5蓝牙组网问题研究 第18章蓝牙音频视频应用框架 18.1音频视频遥控应用框架(AVRCP) 18.2通用音频视频分发应用框架(GAVDP) 18.3高级音频分发框架(A2DP ) 第三部分蓝牙研究与开发 第19章蓝牙射频仿真与性能分析 19.1蓝牙射频仿真基础 19.2蓝牙射频仿真实验 第20章蓝牙天线研究与仿真 20.1天线设计

2017-12-29

《蓝牙协议及其源代码分析》

第一章 蓝牙概述和金瓯蓝牙开发平台介绍   1.1 蓝牙概述   1.1.1 蓝牙技术的诞生与发展   1.1.2 蓝牙技术介绍   1.1.3 蓝牙协议体系结构   1.1.4 蓝牙应用模型及协议栈   1.1.5 蓝牙技术的应用   1.2 金瓯蓝牙开发平台介绍   1.2.1 平台简介   1.2.2 功能说明   1.2.3 使用说明   1.2.4 HCI   1.2.5 SDP   1.2.6 RFCOMM   1.2.7 参数设置   1.2.8 开发   1.2.9 硬件说明 第二章 射频协议   2.1 概述   2.2 频段及信道分配   2.3 发射机特性   2.3.1 基本数据速率   2.3.2 增强数据速率   2.4 接收机特性   2.4.1基本速率   2.4.2增强数据速率 第三章 基带协议   3.1 概述   3.1.1 蓝牙时钟   3.1.2 蓝牙设备编址   3.1.3 接人码   3.2 物理信道   3.2.1 物理信道定义   3.2.2 基本匹克网物理信道   3.2.3 自适应匹克网物理信道   3.2.4 寻呼扫描物理信道   3.2.5 查询扫描物理信道   3.2.6 频率选择   3.3 物理链路   3.4 逻辑传输   3.4.1 概述   3.4.2 逻辑传输地址(LT_ADDR)   3.4.3 同步逻辑传输   3.4.4 异步逻辑传输   3.4.5 收发过程   3.4.6活动状态下的从设备广播传输   3.4.7休眠模式下从设备广播传输   3.5 逻辑链路   3.5.1 链路控制逻辑链路(LC)   3.5.2 ACL控制逻辑链路(ACI,C)   3.5.3 用户异步/同步逻辑链路(ACI,U)   3.5.4 用户同步数据逻辑链路(SCO-S)   3.5.5 用户扩展同步数据逻辑链路(eSCO—S)   3.5.6 逻辑链路优先级   3.6 分组   3.6.1 通用格式   3.6.2 位顺序   3.6.3 接入码   3.6.4 分组头   3.6.5 分组类型   3.6.6 净荷格式   3.6.7 分组概要   3.7 比特流流程   3.7.1 差错检验   3.7.2 数据白化   3.7.3 纠错   3.7.4 1/3 比例前向纠错码   3.7.5 2/3 比例前向纠错码   3.7.6 ARQ方案   3.8 链路控制操作   3.8.1 状态概述   3.8.2 待机状态   3.8.3 连接建立子状态   3.8.4 设备发现子状态   3.8.5 连接状态   3.8.6 活动模式   3.8.7 呼吸模式   3.8.8 保持模式   3.8.9 休眠状态   3.9 音频   3.9.1 对数PCM编译码器(LOG PCM CODEC)   3.9.2 连续变化斜率增量调制编译码器(CVSD CODEC)   3.9.3 错误处理   3.9.4 一般音频要求 第四章 链路管理协议   4.1 概述   4.2 一般规则   4.2.1 消息传输   4.2.2 同步   4.2.3 分组格式   4.2.4 事务   4.2.5 差错处理   4.2.6 过程规则   4.2.7 通用应答消息   4.2.8 LMP消息限制条件   4.3 设备特征   4.3.1 概述   4.3.2 特征定义   4.3.3 特征掩码定义   4.3.4 链路管理相互对策   4.4 过程规则   4.4.1 连接控制   4.4.2 安全   4.4.3 信息请求   4.4.4 主从角色转换   4.4.5 操作模式   4.4.6 逻辑链路   4.4.7 测试模式 第五章 主机控制器接口协议   5.1 主机控制接口协议概述   5.2 主机控制传输层概述   5.2.1 USB传输层   5.2.2.RS232传输层   5.2.3 HCI UART传输层   5.2.4 HCI SD传输层   5.3 HCI流控制   5.4 HCI数据格式   5.4.1 介绍   5.4.2 数据和参数格式   5.4.3 HCI信息交换   5.5 开发平台上的命令和事件及其详细分析   5.5.1 开发平台在执行HCI初始化本地蓝牙设备命令后所产生的一些命令和事件   5.5.2 开发平台在执行HCI搜索蓝牙设备命令后所产生的命令和事件   5.5.3 建立连接   5.5.4 传输ACI数据   5.5.5 传输ACI数据   5.5.6 断开连接   5.6 HCl分组中数据的详细解释说明   5.6.1 HCI链路控制命令   5.6.2 HCI链路策略命令   5.6.3 主机控制器和基带命令   5.6.4 信息参数   5.6.5 状态参数   5.6.6 测试命令   5.6.7 事件   5.7 实现HCI的部分源代码及其分析   5.7.1 HCI对上行数据流的处理过程   5.7.2 IICI对下行数据流的处理过程 第六章 逻辑链路控制和适配协议   6.1 L2CAP概述   6.1.1 L2CAP特征   6.1.2 L2CAP的设计   6.1.3 适用范围   6.2 主要操作   6.2.1 信道标识符   6.2.2 设备间操作   6.2.3 层间操作   6.2.4 操作方式   6.3 数据分组格式   6.3.1 面向连接信道   6.3.2 无连接数据信道   6.3.3 在重传毓控制模式下的面向连接信道   6.4 信令分组格式   6.4.1 命令拒绝(代码0x01)   6.4.2 连接请求(代码0x02)   6.4.3 连接应答(代码0x03)   6.4.4 配置请求(代码0x04)   6.4.5 配置应答(代码0x05)   6.4.6 断开请求(代码0x06)   6.4.7 连接断开应答(代码0x07)   6.4.8 回应请求(代码0x08)   6.4.9 回应应答(代码0x09)   6.4.10 信息请求(代码0x0A)   6.4.11 信息应答(代码0x0B)   6.4.12 扩展特征掩码   6.5 配置参数选项   6.5.1 最大传输单位   6.5.2 刷新超时选项   6.5.3 服务质量选项   6.5.4 重传和流控制选项   6.6 状态机   6.6.1 状态机的常规规则   6.6.2 定时器事件   6.7 常规操作过程   6.7.1 配置过程   6.7.2 分段和重组   6.7.3 服务数据单元的封装   6.7.4 错误的12CAP SDU的传输   6.7.5 刷新超时的操作   6.7.6 无连接数据信道   6.8 流控制和重传过程   6.8.1 信息恢复   6.8.2 流控制和重传PDU类型的功能   6.8.3 变量和序列号码   6.8.4 重传模式   6.8.5 流控制模式   6.9 L2CAP层数据分析   6.9.1 L2CAP—PDU   6.9.2 信令信道的L2CAP—PDU分析   6.9.3 12CAP层通过0x40通道发送Hello World   6.10 L2CAP层源代码分析   6.10.1 L2CAP层重要数据结构定义   6.10.2 L2CAP发送接收数据流程   6.10.3 一般的连接建立过程、配置过程和断开连接过程 第七章 串口仿真协议   7.1 介绍   7.1.1 概述   7.1.2 设备类型   7.1.3 字节序列   7.2 RFCOMM服务概述   7.2.1 RS.232控制信令   7.2.2 空MODEM仿真   7.2.3 多串口仿真   7.3 服务接口描述   7.4 采用TS07.10子集和对TS07.10的修正后的RFOMM   7.4.1 RFCOMM的帧结构   7.4.2 多路控制信道   7.4.3 汇聚层   7.5 流控制   7.5.1 L2CAP流控制概述   7.5.2 有线端口的流控制   7.5.3 RFCOMM流控制   7.5.4 端口仿真实体串行流控制   7.6 与其它实体的互操作   7.6.1 端口仿真和端口代理实体   7.6.2 服务注册和搜索   7.6.3 低层约束   7.7 RFCOMM层数据分析部分   7.7.1 建立连接   7.7.2 收发数据   7.7.3 断开连接   7.8 RFCOMM层源代码分析部分   7.8.1 传输过程和重要数据结构   7.8.2 建立连接、断开、数据传输分析 第八章 对象交换协议   8.1 0BEX协议概述   8.2 OBEX对象模型   8.2.1 OBEX可选分组头   8.2.2 头指示器(HI)详细描述   8.3 会话协议   8.3.1 会话协议概述   8.3.2 连接操作   8.3.3 连接断开操作   8.3.4 推(PUT)操作   8.3.5 拉(GET)操作   8.3.6 取消(Abort)操作   8.3.7 设置路径(Set Path)操作   8.4 蓝牙下的OBEX协议   8.4.1 OBEX over RFCOMM   8.4.2 OBEX over TCP/IP 第九章 服务发现协议   9.1 介绍   9.1.1 概述   9.1.2 SDP能够提供的服务能力   9.2 概述   9.2.1 客户服务器交互   9.2.2 服务记录   9.2.3 服务属性   9.2.4 属性ID   9.2.5 属性值   9.2.6 服务类   9.2.7 服务搜索   9.2.8 服务浏览   9.3 数据表示   9.3.1 数据元   9.3.2 数据元素类型描述符   9.3.3 数据元尺寸描述符   9.3.4 数据元举例   9.4 协议说明   9.4.1 字节传输顺序   9.4.2 协议数据单元格式   9.4.3 局部应答和延续状态   9.4.4 出错处理   9.4.5 服务搜索处理   9.4.6 服务属性事务   9.4.7 服务搜索属性事务   9.5 服务属性定义   9.5.1 通用属性定义   9.5.2 “服务搜索服务器”服务类属性定义   9.5.3 “浏览组描述符”服务类属性定义   9.6 SDIP层数据分析部分   9.6.1 服务搜索请求   9.6.2 服务搜索响应   9.6.3 服务属性请求   9.6.4 服务属性应答   9.6.5 服务搜索属性请求   9.6.6 服务请求属性应答   9.7 SDP层源代码分析部分   9.7.1 重要数据元和结构体   9.7.2 数据流程和几个重要的接口函数 第十章 电话控制协议   10.1 概述   10.1.1 介绍   10.1.2 设备问操作   10.1.3 层问操作   10.2 呼叫控制(CC)   10.2.1.呼叫状态   10.2.2 建立呼叫   10.2.3 呼叫清除   10.3 组管理(GM)   10.3.1 概述   10.3.2 无线用户组(WUG)   10.3.3 获取访问权限   10.3.4 配置分布   10.3.5 成员间快速访问   10.4 无连接TCS(CL)   10.5 补充服务(SS)   10.5.1 呼叫线路识别   10.5.2 DTMF启动和终止   10.5.3 注册重呼   10.6 报文格式   10.6.1 呼叫控制报文格式   10.6.2 组管理报文格式   10.6.3 TCS无连接报文格式   10.7 报文编码   10.7.1 概述   10.7.2 协议标识   10.7.3 报文类型   10.7.4 其它信息元   10.8 报文出错处理   10.8.1 协议标识出错   10.8.2 报文太短或未被识别   10.8.3 报文类别或报文顺序出错   10.8.4 信息元出错   10.9 协议参数 第十一章 蓝牙操作模式   11.1 概述   11.2 蓝牙串口操作模式   11.2.1 SPP概述   11.2.2 SPP链路   11.2.3 SPP与各层协同工作性能要求   11.3 蓝牙头戴式设备操作模式   11.3.1 HSP概述   11.3.2 HSP功能描述   11.3.3 低层处理

2017-12-29

空空如也

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

TA关注的人

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