自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (2)
  • 收藏
  • 关注

原创 指定全局变量占用一段内存空间的方法

前言:如果需要占用一段地址作为buffer使用,如果只用uint8_t *ring_buffer = (uint8_t *)0x20000000;形式,则会导致后续空间使用时侵占别的文件申明的空间,产生未知的问题。通过map文件可以发现该文件所有变量已经定义在指定ram区间中,而不是指定的地址中。2.在sct文件中申明一段空间给指定的文件使用。1.指定空间,这段空间在sct文件中未被使用。

2024-01-02 11:34:22 433

原创 C51代码优化问题

发现写的一段代码被优化了,担心程序遭到了影响。于是开始研究代码优化问题

2023-08-11 13:34:11 201

原创 富芮坤、Nordic、telink工程程序架构简要分析

本文对比了富芮坤,NORDIC,TELINK的BLE代码架构

2023-03-31 17:34:19 959

原创 在MCU 固定FLASH地址写入BIN文件并调用其中API的方法

前言:接到了一个新的需求,需要我把BLE协议栈做成单独的BIN存放在芯片固定的FLASH地址中。而不是用传统的点lib文件。这样的好处也是显而易见的。于是我在网上找了一些资料,并成功实现。

2023-03-03 16:05:23 705

原创 FTM(FlexTimerModule)TIMER总结

项目D TIMER 总结

2023-02-10 13:59:37 490

原创 2022年工作总结

2022年工作总结

2023-01-13 17:46:23 56

原创 vol1,part A,5 SECURITY OVERVIEW

5.1 SECURITY ARCHITECTURE

2022-11-22 13:50:14 671

原创 core_v5.3结构

bluetooth core v5.3概要

2022-10-28 17:12:22 158

原创 设置广播数据

Ble 4.2版本最多可设置31个字节的广播数据。广播数据可以按需求由几段广播数据,每段数据由整体数据长度、数据标志、数据三个部分组成。数据的格式按照length| type|data组成。后面的广播数据也是如此构成。广播数据标志可以查找枚举类型gap_ad_type获取。针对每个adv type后面的data部分都有相应的标准格式,可以参考蓝牙协议规范,如果要自定义一些数据就要加在adv type为0xFF的数据里。

2022-09-30 19:16:31 353

原创 core_v5.3 Resolving list翻译

《core_v5.3》 Resolving list翻译

2022-09-23 10:50:16 177

原创 使用GAPM_LIST_SET_CMD-GAPM_SET_WL设置白名单的经历

CIVA BLE 设置白名单

2022-09-17 20:18:45 223

原创 void 指针的使用

C语言中有一种灵活的类型,它就是void类型。

2022-09-09 14:01:48 314 2

原创 BLE一些消息的缩写的解析

BLE有许多约定俗成的缩写以及其对应的操作要求,这篇文章分享一下这些名称的解析。

2022-09-02 16:41:42 313

原创 HID profile的简单建立

目标:在BLE设备上建立HIDprofile,实现按键拍照功能。

2022-08-26 17:30:55 469

原创 空数组数据使用问题

结构体中的空数组

2022-08-19 14:11:17 168

原创 C陷阱与缺陷-1理解函数申明

在该章节中,作者用一个方法调用了地址为0的函数:(*(void(*)())0)();

2022-08-09 17:38:26 219

原创 消息指针中获取参数指针的理解

背景:因为本内核基于消息驱动,因此消息的建立与携带参数的修改是非常重要的。

2022-08-08 16:52:20 99

原创 一种API写法

这样的好处是,修改程序时,调用方法固定,只需要改底层。

2022-08-01 09:04:11 72

原创 SPI master rx time out中断

spi master rx time out中断

2022-07-01 14:57:13 774

原创 Nordic nrf52832 flash 下载M4错误

Nordic nrf52832 flash 下载M4错误

2022-06-27 11:42:43 274

原创 QSPI(QUAD SPI)基本信息

支持单条、两条、四条数据线连接QSPI FLASH。与SPI相比多了两个数据口,支持一个时钟周期内传输4个Bit的数据。支持交替字节阶段。

2022-06-16 18:38:34 11385

原创 sourceinsight4.0全局搜索无用

0Matches in 0 files(0 searched)

2022-06-15 15:16:47 1183

原创 keil与sourceinsight4.0混合编辑时的对齐问题

使用sourceinsight4.0与keil混合编辑时,会遇到两边代码对不起的问题,无论修改哪边都不会对齐,这里提供一种修改方法。*

2022-06-14 09:37:29 840

原创 HID设备描述符的解析(rep_map_data app_hid_report_map)

初学HID可能会对文件中的设备描述符不解可以理解这是一种用十六进制数据写的脚本语言,通过该脚本语言传递给上位设备。该语言描述了一个HID设备(可以是鼠标,键盘,游戏手柄,或者是蓝牙自拍杆)的一些基本情况,如按键数量,数据的最大最小值,携带的功能等等。以下是一个设备描述符的例子:const u8 rep_map_data [CUSTOMHID_SIZ_REPORT_DESC] ={ 0x05, 0x01, 0x09, 0x02, 0xa1, 0x01, 0x09, 0x01

2022-05-26 13:56:00 3185

原创 统一的函数宏定义

在查看RivieraWaves的底层代码,看到了一个没见过的函数结构。KE_MSG_HANDLER_NO_STATIC(lld_scan_req_ind, struct lld_scan_req_ind){ uint8_t act_id = param->act_id; //function return (KE_MSG_CONSUMED);}搜索发现才明白KE_MSG_HANDLER_NO_STATIC是一种函数的宏定义。#define KE_MSG_HANDLER_

2022-05-11 09:45:34 148

原创 文章下载地址

https://www.bluetooth.com/specifications/specs/mesh-profile-1-0-1/

2022-02-14 10:03:34 116

原创 telink sig mesh light inital

mesh_common.cmesh_vd_init()

2022-02-11 16:23:55 425

原创 telink sig mesh存储流程-light

在主循环中有个的system_time_run中的light_par_save_proc中,检测全局变量tick_light_save。void light_par_save_proc(){ // save proc if(tick_light_save && clock_time_exceed(tick_light_save, 3*1000*1000)){ tick_light_save = 0; if(!is_actived_factory_test_mode()){

2022-02-10 15:42:56 369 1

原创 类与对象的关系

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入类是对对象的抽象对象是对类的实例欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示

2022-02-09 21:58:46 339

原创 结构体长度的一点小知识

遇到了个小问题typedef int s32;typedef unsigned int u32;typedef unsigned short int u16;typedef signed short int s16;typedef unsigned char u8;typedef signed char s8;#define ST_TRANS_MAX 3在vs中,他们的长度分别为4 4 2 2 1 1。结构体如下typedef struct { s32 step_1p32768;

2022-01-24 11:19:43 424

原创 代码方法1

1、循环访问结构体内的数据#define foreach_arr(i, arr) for(unsigned int i = 0; i < ARRAY_SIZE(arr); ++i)#define ARRAY_SIZE(a) (sizeof(a) / sizeof(*a))//应用foreach_arr(i, arr){}

2022-01-20 17:51:46 362

转载 eclipse import 工程修改工程名

通过ECLIPSE IMPORT导入项目,並重新命名PROJECT打开Eclipse,新建Project, Name:Test在Project Explorer,点击右键import–》import–》File System, 选中要汇入的项目,勾选Project,如下图,把项目汇入到Project:Test打开Test Folder,找到.project文件,把ProjectDescription中的name改成为现在Project的Name Test

2021-12-20 10:56:13 398

原创 利用定时器中断的通用按键例程

优点:通用性高,精准,要求低按键检测结构体typedef struct{ u8 (*IsKeyDownFunc)(void); /* 按键按下的判断函数,1表示按下 */ u8 Count; /* 滤波器计数器 */ u16 LongCount; /* 长按计数器 */ u16 LongTime; /* 按键按下持续时间, 0表示不检测长按 */ u8 F

2021-10-26 15:12:26 901

原创 telink泰凌微 8266 8250 8258IO中断唤醒睡眠

需要注意的点:1、telink进入睡眠模式使用如下APIint cpu_sleep_wakeup (int deepsleep, int wakeup_src, u32 wakeup_tick);2、telink唤醒中断后会重新初始化,此时需要注意初始化时的初始化函数使用的哪一个,取决于main.c睡眠前,将需要触发唤醒的管脚上下拉设置好,再设置唤醒电平即可。注意无边沿触发。如下: gpio_setup_up_down_resistor(AN_KEY, PM_PIN_UP_DOWN_FLOA

2021-10-26 14:10:14 1823 5

原创 Nordic服务流程与服务获得的数据的使用流程

一、服务流程1、定义一个服务实例注册成BLE事件监视者,触发事件后可以通过注册时带的处理函数处理事件这个函数处理GATT的事件类型BLE_GATTS_EVTS实例化指的是定义一个带有需要功能,变量的全局变量。这个结构体需要:指向应用层的函数指针存储该服务的UUID type的u8存储从协议栈获得的服务句柄的u16存储从协议栈中获得的特征的句柄ble_gatts_char_handles_t事件数据结构体实例化2、将服务的自定义结构体其中的指针指向最终应用数据的应用函数。3、将自定义U

2021-07-09 11:20:25 337

原创 Nordic新增服务流程

Nordic新增服务流程1、设置服务UUID,以及指向这个ID的句柄将自定义UUID基数添加到SoftDevice,并且获得一个指向这个uuid的指针//*p_uuid_type指向这个uuiduint32_t, sd_ble_uuid_vs_add(ble_uuid128_t const *p_vs_uuid, uint8_t *p_uuid_type));2、添加服务sd_ble_gatts_service_adduint32_t, sd_ble_gatts_service_add(uin

2021-07-07 16:09:01 543

原创 华大MCU与泰凌微8266I2C调试记录

20200108八键开关需要接收APP指令让灯有不同的亮灭反应,所以还是要把I2C接收搞出来。既然有中断脚,就可以用中断触发。当华大的mcu需要发数据给telink,将中断IO重新设置成output,拉高,然后通过I2C发送数据,结束后拉低,将中断IO置为输入。当telink8266需要发数据给华大mcu,将中断IO重新设置成output,拉高,然后通过I2C发送数据,结束后拉低,将中断I...

2020-01-08 12:05:28 1747

蓝牙核心规范Core_v4.2.pdf Core_v5.3.pdf

官网上下载的,免费分享给大家

2021-07-19

从蓝牙SIG官网下载的蓝牙核心文件Core_v4.2.pdf

从官网下载的,免费分享给大家

2021-07-19

空空如也

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

TA关注的人

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