自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (9)
  • 收藏
  • 关注

原创 ESP32中下载固件时的波特率设置和调试监控时波特率的设置

2019-03-28 19:57:57 6239

原创 ESP32 flash容量配置

切记,如果配置错误,和分区表对应不上,则系统启动报错,一定不要把小容量配置成大容量。

2019-03-28 19:53:05 5781

转载 BLE-NRF51822教程8-动态广播

本讲接收如何实现动态广播。教程基于9.0 sdk中的Uart例子。实现动态广播的方法是广播->停止广播->修改参数->重启广播所以我们通过一个定时器来周期性的关闭广播然后再修改广播数据之后再开启广播。Sdk 9.0中的广播搞了好几个模式,做的有点麻烦,所以我对他做了比较大的改动。首先 在main.c中 中的advertising_...

2019-03-27 16:23:01 323

转载 BLE-NRF51822教程2-工程初始化流程

代码讲解基于资料包里配套的 sdk5.1版本中的串口demo。高版本的sdk基本都是差不多的。代码在路径xxxxx\keil\ARM\Device\Nordic\nrf51822\Board\pca10001\s110\experimental中一:main函数整体注释:int main(void){//初始化LED指示灯,用来指示广播和连接状态leds_init();...

2019-03-25 10:55:53 315

转载 SVC和PendSV

1.SVCSVC(Supervisor Call)指令用于产生一个SVC异常。它是用户模式代码中的主进程,用于创造对特权操作系统代码的调用。SVC是用于呼叫操作系统所提供API的正道。用户程序只需知道传递给操作系统的参数,而不必知道各API函数的地址。SVC指令带一个8位的立即数,可以视为是它的参数,被封装在指令自身,如:SVC 3:呼叫3号系统服务则3被封装在这个SVC...

2019-03-25 10:52:19 1755

转载 BLE程序框架探索

在这篇文章里我主要探究SoftDevice程序是怎么嵌入到BLE程序中的,研究一下BLE程序框架:在函数softdevice_handler_init中有这样的一句调用语句: err_code = sd_softdevice_enable(clock_source, softdevice_assertion_handler);我们就从这句话入手: 全局搜索sd_...

2019-03-25 10:32:21 423

转载 HEX文件格式详解

如图,其中第一行020000040002f8中,可以看做是0x02 0x00 0x00 0x04 0x02 0x02 0xf8,其前四个字节和最后一个字节有特殊含义。中间为数据第一个0×...

2019-03-25 10:12:45 586 1

转载 nRF51822之BootLoader

一)nRF51822程序加载顺序1)SoftDevice加载;2)SoftDevice初始化蓝牙协议栈;3)SoftDevice检查0x10001014处是否保存有有效的BootLoader地址,如果不是跳转到0x14000处的APP执行,流程结束.4)SoftDevice跳转到BootLoader5)BootLoader进行他的业务处理工作;6)BootLoader跳转到0x14...

2019-03-25 09:52:42 3579

转载 蓝牙4.0 vs 蓝牙4.1 vs 蓝牙4.2 vs 蓝牙5.0

蓝牙4.1 vs 蓝牙4,01.提升数据传输率相比蓝牙4.0,蓝牙4.1单包数据传输最大值从20字节上调到23字节,提升了15%的数据传输率。根据该规则,大家可以尝试修改单包数据payload的值,如果该芯片只支持BT4.0,那么修改传输23字节要么会编译报错,要么传输过程中会丢包。2.主从共存链路层Link layer拓扑结构做了更新,允许单设备主从同时共存(...

2019-03-21 10:43:57 2486

转载 基于FTP的Nordic nRF51822 OTA 教程一之修改boot区大小

本文主要对nRF51822的OTA过程进行详细说明,主要通过改写nRF51822_sdk11中的bootloader,实现空中升级的功能。OTA流程:Fireware由app区中的ftp协议下载存于外部flash,然后由bootloader区将Fireware从外部flash导入nRF51822,实现升级的功能。1、NORDIC 51 OTA简介 对于nRF51822来说,升级过程有点特...

2019-03-19 16:08:21 375

原创 ESP32 各种时钟参数值设置

头文件:esp-idf/components/soc/esp32/inclued/soc/soc.h//Periheral Clock {{#define APB_CLK_FREQ_ROM ( 26*1000000 )#define CPU_CLK_FREQ_ROM APB_CL...

2019-03-16 17:21:41 8540 1

转载 服务发现过程分析

本讲主要针对 主从连接后主机如何在从机上找到自己需要的服务的过程。需要和 主从通信过程分析教程一起看。服务查找过程就是主从连接后,主机需要在从机上查找所有的服务以及服务下面的特征值和描述符等信息。 不过Sdk中的主从通信例子因为是个 简单的主从点灯demo,所以服务查找过程中并不是搜寻从机上的所有服务,而是根据初始化时注册的要查找的服务来定向搜寻从机上的服务,已经其下面的特征值和描述符信...

2019-03-16 16:44:14 883

转载 nrf51822-主从通信分析2

解决第三个问题:如何使能从机上的特征值的 notify功能,使其能通过notify方式发送数据使能从机的notify功能是通过写0x0001到从机的那个具有notify功能的特征值的CCCD描述符中来实现的。 既然要写那就需要先有服务发现过程,服务发现就是找到从机里我们需要的服务以及服务下面的 特征值,描述符等。 关于服务发现过程的具体讲解 参见 服务发现过程解析 教程。因为...

2019-03-16 16:43:14 468 1

转载 nrf51822-主从通信分析1

建议看该教程前,先看一下 简单扫描器实现 教程讲解基于sdk目录下central中的两个例子。关于主机的程序框架其实和从机都是一样的,都是基于事件驱动的框架。 Main函数中完成初始化, 从机的话就启动广播,主机就启动扫描。 之后都是基于事件驱动的方式将ble相关事件返回给上层app,并且再通过ble_evt_dispatch函数将事件分发给各个处理函数。如下图所示:蓝牙的...

2019-03-16 16:42:12 726

转载 BLE-NRF51822-实现简单扫描器

在sdk目录XXX:\Keil_v5\ARM\Pack\NordicSemiconductor\nRF_Examples\9.0.0\ble_central 下有官方提供的主从连接的demo.官方的demo中实现的是主机通过名字来判断 周围的设备是否是自己要寻找的设备,如果是就发起来接。 并且连接建立后可以继续保持侦听,一共可以连接8个设备。 连接上后,从机可以通过按键button1 来...

2019-03-16 16:41:26 526

转载 BLE-NRF51822教程-RSSI获取

当手机和设备连接上后,设备端可以通过获取RSSI来 在一定程度上判断手机离设备的相对距离的远近。获取函数很简单直接调用sd_ble_gap_rssi_get 接口函数就行了,传入连接句柄和buff就能获取到 最近一次连接事件中的 接收信号强度。调用该函数之前需要先调用sd_ble_gap_rssi_start 函数,该函数有三个参数,第一个为连接句柄,第二个为 改变阈值, 第...

2019-03-16 16:40:23 1453

转载 BLE-NRF51822教程15-BLE地址

51822的 BLE的设备地址 可以通过如下函数函数来获得地址的设置可以调用如下函数设置。官方的demo工程中,都是没有主动调用过 sd_ble_gap_address_set函数来设置设备地址的。所以 demo工程中使用的都是默认地址。这个默认地址就是 芯片出厂是设置的,出厂时烧写在FICR寄存器中的。所以蓝牙芯片启动后,如果你没有主动调用 sd_ble_gap_ad...

2019-03-16 16:00:21 241

原创 BLE蓝牙核心数据库结构解析

每个0x2800的地盘就是下一个0x2800出现之前的那一部分。每个0x2803的地盘就是下一个0x2803出现之前的那一部分。0x29xx属于0x2803的地盘范围。

2019-03-15 20:26:11 581

转载 NRF51822之发射功率

设置蓝牙的TX Power使用的函数sd_ble_gap_tx_power_set(int8_t tx_power);参看例子为 S110/ble_app_proximity#define TX_POWER_LEVEL (4) /**<...

2019-03-15 20:17:02 313

转载 NRF51822之动态广播使用

本教程基于nRF51_SDK_10.0.0_dc26b5e\examples\ble_peripheral\ble_app_uart工程本教程主要是演示现在演示通过nus来修改ADV中maufacturer data,在disconnect后我们可以看到广播中maufacturer data更新为我们在nus中配置的在工程增加新代码#define APP_COMPA...

2019-03-15 20:15:52 1308

转载 低功耗蓝牙BLE对应Gatt的UUID

参考http://blog.csdn.net/zhangjs0322/article/details/39048939参考http://code.taobao.org/p/watch_demo/diff/2/trunk/yqc_watch/Components/ble/include/gatt.h1、在BLE中UUID由32个Hex字符组成(共16字节)。格式为88888888-444...

2019-03-15 19:58:28 3023

转载 Bluetooth GATT介绍

Version:1.0 StartHTML:000000209 EndHTML:000091570 StartFragment:000002620 EndFragment:000091490 StartSelection:000002620 EndSelection:000091478 SourceURL:https://www.cnblogs.com/hzl6255/p/4158363.html...

2019-03-14 19:10:42 1860

转载 Bluetooth GAP介绍

阅读目录1. 介绍 2. 角色 3. 配置 4. 模式 5. 安全 6. 空闲模式 7. 建立连接 8. 操作模式和过程回到顶部1. 介绍GAP,Generic Access Profile,该Profile保证不同的Bluetooth产品可以互相发现对方并建立连接GAP定义了蓝牙设备如何发现和建立与其他设备的安全/不安全连接它处理一些一般模式的业务(如询问、命名...

2019-03-14 19:09:34 3229

转载 Bluetooth ATT介绍

阅读目录1 介绍 2 详细内容 3 Attribute PDU 4 Attribute Protocol PDU回到顶部1 介绍ATT,Attribute Protocol,用于发现、读、写对端设备的协议(针对BLE设备)ATT允许设备作为服务端提供拥有关联值的属性集让作为客户端的设备来发现、读、写这些属性;同时服务端能主动通知客户端ATT定义了两种角色: 服务端(S...

2019-03-14 19:08:22 419

转载 ATT Protocol 属性协议

1、背景接触了,就必须留下点痕迹。1.1 参考资料Bluetooth ATT介绍 https://www.cnblogs.com/hzl6255/p/4141505.htmlble v4.22、啥是ATTATT Protocol,是用于发现、读、写peer对端设备的协议(针对BLE设备)。ATT允许设备作为服务端提供拥有关联值的属性集,让作为客户端的设备来发现、读、写...

2019-03-14 18:18:43 293

转载 BLE 数据包格式解析

2019-03-14 18:07:07 1495

转载 esp32 烧录固件

ESP FLASH TOOL 是 Espressif 官方开发的烧录工具,用户可根据实际的编译方式和Flash的容量,将SDK编译生成的多个bin文件一键烧录到 ESP8266/ESP32 的SPI Flash中。ESP FLASH TOOL 的官方下载地址为:http://espressif.com/sites/default/files/tools/flash_download_tool...

2019-03-13 18:12:48 15186

转载 低功耗蓝牙系统结构流程图

2019-03-12 17:14:35 1662

转载 iBeacon的数据包格式

Ibeacon 是apple开发的基于BLE(Bluetooth low energy)的精确定位技术。常常用来做室内定位。这里简单讲解下ibeacon的数据包格式这里以UUID为B9407F30-F5F8-466E-AFF9-25556B57FE6D,Major为01,minor为01(此uuid为Estimote B9407F30)为例:[plain]view plain...

2019-03-12 15:40:12 1772

转载 ESP32 官方文档(三)分区表

分区表分区表概述内置分区表创建自定义分区表名字字段类型字段子类型App 子类型数据子类型偏移量 & 大小标志生成二进制分区表MD5 校验和烧录分区表分区表概述单个 ESP32 的 flash 可以包含多个应用程序,以及许多不同类型的数据(校准数据,文件系统,参数存储等). 因此,分区表被下载到 flash 中的 0x8000 地址(默认偏移量).分区表长度为 0xC00 字节(最多...

2019-03-11 13:45:30 1711

转载 ESP8266/ESP32 NVS 基本操作

NVS 介绍NVS: Non-volatile storage , 即将数据存储到 flash 中, 掉电或重启后数据仍然存在, flash 类似于 PC 上磁盘.ESP8266 和 ESP32 上提供 nvs 接口给用户, 来保存和读取用户数据. 具体参考 nvs.hnvs 更详细的说明请参考: NVS 文档NVS 优势接口更加安全相比较于 spi_flash_read 和 ...

2019-03-11 13:43:05 759

转载 官方文档翻译-ESP32-SPI Flash

SPI Flash概述The spi_flash component contains APIs related to reading, writing, erasing, memory mapping data in the external SPI flash. It also has higher-level APIs which work with partitions defin...

2019-03-11 13:27:08 891

转载 官方文档翻译-ESP32-High Resolution Timer

高分辨率定时器概述Although FreeRTOS provides software timers, these timers have a few limitations:虽然FreeRTOS提供软件定时器,但这些定时器有一些限制:Maximum resolution is equal to RTOS tick period 最大分辨率等于RTOS滴答周期 Timer ca...

2019-03-11 13:17:20 244

转载 802.11(wifi)中SSID、BSSID、ESSID的区别

SSIDShort for Service Set Identifier, a 32-character unique identifier attached to the header of packets sent over a WLAN that acts as a password when a mobile device tries to connect to the BSS. The...

2019-03-11 10:14:22 821

转载 查看SSID的mac地址

2019-03-09 18:49:42 2196

转载 WIFI只sta和ap建立连接的过程

建立Association下面是Station和Ap建立开放Association的过程: (0)Ap周期性地广播Beacon帧 (1)Station广播Probe Request到达Ap (2)Ap向Station发送Probe Reponse (3)Station向Ap发送ACK (4)Station向Ap发送Authentication Re...

2019-03-09 18:44:15 3171

转载 802.11协议帧格式、Wi-Fi连接交互过程、无线破解入门研究

相关学习资料Linux黑客大曝光: 第8章 无线网络无线网络安全攻防实战进阶无线网络安全 黑客大曝光 第2版http://zh.wikipedia.org/wiki/IEEE_802.11http://www.hackingexposedwireless.com/doku.phphttp://blog.csdn.net/gueter/article/details/481272...

2019-03-09 18:40:14 544

转载 802.11 帧格式及类型

针对ESP32 SNIFFER功能原文:https://blog.csdn.net/suiyuan19840208/article/details/172007451:帧格式下面是802.11帧的组成结构,帧总寻此结构.从上面的结构可以知道,前俩个字节为:帧控制字段。控制字段的前2bit节为:协议类型,目前此值为:0。1)控制帧:用于竞争期间的握手通信和正向确认、结束非竞争期等...

2019-03-09 17:48:58 2890

原创 CAN设备多机联网之总线容抗注意事项

来源:致远电子CAN分析仪使用手册

2019-03-07 13:22:40 966

转载 ESP8266 WiFi探针 MAC

当一个设备给另外一个设备通过无线传输技术发送信息时,周围的其他同类设备都是能够收到这些信息的,WiFi探针技术就是基于这个原理。具体来说,只要一个WiFi设备在WiFi探针的侦听范围内,当这个WiFi设备(无论是终端、路由器或者其他WiFi设备)发送任何一帧(Frame)时,不管是发给谁,探针都能截获,并分析出此帧MAC层与物理层的一些信息,比如发送与接收设备的MAC地址、帧类型、信号强度等。对于...

2019-03-07 12:09:31 2210

VS2017-吉比特can分析仪二次开发

吉比特CAN分析仪二次开发软件小工具,基于VS2017-VC++平台,演示了CAN总线的数据收发,仅供参考。吉比特CAN分析仪二次开发软件小工具,基于VS2017-VC++平台,演示了CAN总线的数据收发,仅供参考。

2019-01-29

VS2017-VC++版本校验和计算小工具

基于VS2017 VC++平台的校验和计算小工具软件,目前支持异或,累加2中算法。

2019-01-14

VS2017-MFC-生成二维码小程序

VS2017-MFC-生成二维码小程序,可以设置二维码的内容,和颜色。VS2017-MFC-生成二维码小程序,可以设置二维码的内容,和颜色。VS2017-MFC-生成二维码小程序,可以设置二维码的内容,和颜色。

2018-12-07

VS2017工程MFC子线程中更新控件的内容

VS2017工程,MFC子线程中更新控件的内容,采用消息机制来实现,简单易懂,非常方便新手的入门。

2018-12-06

VS2017-MFC子线程中更新控件的内容框架代码

VS2017工程,MFC子线程中更新控件的内容,采用全局函数的方法来实现,简单易懂,非常方便新手的入门。

2018-12-06

简单的画时钟程序源码

参考网上的的代码,进行了简化和修改,只使用了一个对话框界面,尽量使用少的函数调用。对新手来说具有一定的参考价值。

2018-12-02

VS2017平台下最简洁的基于C语言开发的串口接收程序测试代码

VS2017平台下最简洁的基于C语言开发的串口接收程序测试代码。VS2017平台下最简洁的基于C语言开发的串口接收程序测试代码。VS2017平台下最简洁的基于C语言开发的串口接收程序测试代码。

2018-11-09

VS2017平台下最简洁的基于C语言开发的串口发送程序

VS2017平台下最简洁的基于C语言开发的串口发送程序测试代码,修改简单灵活,方便用于各种串口调试。VS2017平台下最简洁的基于C语言开发的串口发送程序测试代码,修改简单灵活,方便用于各种串口调试。

2018-11-09

aes加密解密测试代码

aes加密解密测试代码,ubuntu12 gcc下测试验证通过。 这个代码是ST17H26 SDK中的,来自网上开源代码,为了兼容多种平台,里面的宏定义分支很多。

2017-10-14

空空如也

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

TA关注的人

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