首页 > 其他分享 >CH573 CH582 CH592 CH579常用库函数记录

CH573 CH582 CH592 CH579常用库函数记录

时间:2023-11-20 13:45:03浏览次数:30  
标签:GAPRole CH579 CH592 蓝牙 uint8 bStatus uint16 extern 库函数

一:系统篇:

软件复位

SYS_ResetExecute(); 

延时函数

mDelaymS(1);     //延时1ms
mDelayuS(1);     //延时1us

设置晶体匹配电容

 

void HSECFG_Capacitance(HSECapTypeDef c);     //外部高频32MHZ
void LSECFG_Capacitance(LSECapTypeDef c); //外部低频32.768KHZ

 

开启DCDC降低功耗

void PWR_DCDCCfg(FunctionalState s);

二:蓝牙篇

获取芯片唯一MAC 

uint8_t MacAddr[6];
GetMACAddress(MacAddr);

查询蓝牙连接状态

extern uint8_t linkDB_State( uint16_t connectionHandle, uint8_t state );

蓝牙交互MTU

extern bStatus_t GATT_ExchangeMTU( uint16_t connHandle, attExchangeMTUReq_t *pReq, uint8_t taskId );

蓝牙主动断开连接(主机和从机都适用)

extern bStatus_t GAPRole_TerminateLink( uint16_t connHandle );

蓝牙从机开关广播

uint8_t advertising_enable = TRUE;
GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &advertising_enable);     //开启广播
uint8_t advertising_enable = FALSE;
GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &advertising_enable);     //关闭广播

蓝牙从机更新广播内容

extern bStatus_t GAP_UpdateAdvertisingData( uint8_t taskID, uint8_t adType, uint8_t dataLen, uint8_t *pAdvertData );

蓝牙从机更新连接参数

extern bStatus_t GAPRole_PeripheralConnParamUpdateReq( uint16_t connHandle, uint16_t connIntervalMin,
    uint16_t connIntervalMax, uint16_t latency, uint16_t connTimeout, uint8_t taskId );

蓝牙主机开启扫描

extern bStatus_t GAPRole_CentralStartDiscovery( uint8_t mode, uint8_t activeScan, uint8_t whiteList );

蓝牙主机取消扫描

extern bStatus_t GAPRole_CentralCancelDiscovery( void );

蓝牙主机发起连接

extern bStatus_t GAPRole_CentralEstablishLink( uint8_t highDutyCycle, uint8_t whiteList, uint8_t addrTypePeer, uint8_t *peerAddr );

..............

标签:GAPRole,CH579,CH592,蓝牙,uint8,bStatus,uint16,extern,库函数
From: https://www.cnblogs.com/risc5-ble/p/17789671.html

相关文章

  • 入门c语言--基于c库函数strstr的实现
    #include<stdio.h>#include<assert.h>char*my_strstr(constchar*p1,constchar*p2){ assert(p1&&p2);//检查p1和p2是否为空指针//创建s1,s2来在p1,p2中进行移动,创建指针tmp来保存开始移动时的s1的位置 char*s1=NULL; char*s2=NULL; char*tmp=(char*)p1;//对p1......
  • 常用数学库函数
    对于c++对数函数的记录:log函数包括两种函数一种以e为低的log()函数另一种为以10为底的log10()函数;#include<iostream>#include<cmath>usingnamespacestd;intmain(){ doublea=9,b=10; cout<<log(a)<<endl; cout<<log(exp(a))<<endl; cout<<log10(b)&......
  • glob库函数使用方法
    glob模块是用来获取文件路径的一个常用模块。它可以根据用户指定的路径来搜索文件,然后返回符合规则的文件路径列表。一、glob库函数的基本用法glob库需调用glob.glob()函数并传入特定的路径规则。路径规则可以包含通配符,例如使用*来匹配任意个字符,使用?来匹配单个字符。以下是一......
  • 模拟实现常见的strlen、strcpy、strcmp库函数,深入理解它们的原理
    ⛩️博主主页:@威化小餅干......
  • (CH592-CH305)2K鼠标上报率
    前言:使用CH592与CH305可实现2K鼠标上报率功能,具体功能和实现做以下讲解。描述:需要使用2块CH592的开发板和1块CH305开发板。2块CH592分别作为2.4GMouse(TX)和Dongle(RX)端的无线设备;CH305作为Dongle端连接上位机。连接示意图参考:代码烧录与接线:①烧录:由沁恒官方提供的3份......
  • 库函数之字符函数与字符串函数(上)
    前言......
  • CH573 CH579 CH582 蓝牙断开连接原因分析
    下面列举几个常见的蓝牙断开连接原因:1.reason8:连接超时,根本原因:底层在设置的超时时间内,没有成功通信过,下面这几种情况可能发生:1.程序中有比较耗时的处理,导致主循环一直没有查询,2.32k晶振误差很大导致。2.reason13:对方远程主动断开连接。3.reason16:本地主动断开连接。4.reason......
  • 库函数 | C++17 std::filesystem文件系统 用法指北
    本文将针对常用的场景,对std::filesystem的使用逐一进行验证:判断文件夹是否存在创建单层目录逐级创建多层目录创建多级目录当前文件路径创建文件"from.dat"获取相对于base的绝对路径文件拷贝移动文件或重命名创建文件“example.dat”获取文件大小获取文件最后修改......
  • CH573 CH582 CH579蓝牙从机(Peripheral)/主机(Central)例程讲解一(蓝牙主从机收发数据
    原文链接:https://www.cnblogs.com/risc5-ble/p/15994545.html前言:蓝牙从机,顾名思义,就是一个蓝牙从设备,可以不断发送广播等待与主机建立连接进行通信,建立连接后,可以通知主机,也可以收到主机发的信息,一般使用BLE调试助手(安卓应用市场可下载),ios可使用Lightblue来进行调试通信等......
  • CH573 CH579 CH582程序烧录讲解
    原文链接:https://www.cnblogs.com/risc5-ble/p/16865626.html 第一步,我们需要学会如何下载程序:WCH的蓝牙芯片CH57x/CH58x大部分是支持串口烧录、USB烧录和LINK烧录的,除了一些特殊的封装,如571K没有USB口,只支持串口免按键烧录,579F没有仿真口,不支持LINK烧录。仿真下载:ARM内核......