摘要:
基础 CH57x/CH58x芯片下载 CH57x/CH58x原理图与PCB绘制 BLE蓝牙 BLE从机(01)广播间隔和连接间隔 BLE从机(02)句柄指示\确认(Indication\Confirmation) BLE从机(03)定向广播\Direct Adv BLE从机(04)白名单\BLE_W 阅读全文
摘要:
前言: ADC多通道切换讲解和代码参考。 一、ADC 中断切换通道: 查看代码 #include "CH59x_common.h" #define adctest 1 volatile uint8_t adclen; volatile uint8_t DMA_end = 0; uint16_t ad 阅读全文
摘要:
前言: 代码参考为首字节模式和数据流模式,均使用DMA,建议使用数据流DMA。 一、数据流/首字节收发代码参考 数据流流程: 主机定时器1ms间隔发送; 从机接收数据; 从机填入发送数据到DMA并通知主机接收; 主机DMA接收数据; 首字节流程: 主机定时器1ms间隔发送; 从机首字节接收并DMA接 阅读全文
摘要:
一、blePending 调用发送函数simpleProfile_Notify出现0x16时,指示为blePending,代表底层的缓存已被填满,需要底层的数据发送成功再进行发送。优化措施: 优化连接间隔,适当加大; 适当增加单个连接间隔的包数量,BLE_TX_NUM_EVENT,默认为1,可以配置 阅读全文
摘要:
代码参考: #include "CH57x_common.h" void DebugInit(void) { GPIOA_SetBits(GPIO_Pin_9); GPIOA_ModeCfg(GPIO_Pin_9, GPIO_ModeOut_PP_5mA); UART1_DefInit(); } i 阅读全文
摘要:
一、讲解 中断优先级分为抢占优先级和响应优先级。配置参数越小,则说明其优先级别越高。 抢占:是指可以打断其他中断函数的属性。出现该属性时会出现中断嵌套; 响应:是指抢占优先级相同情况下,则优先执行响应优先级高的中断; 二、举例 序号 中断名称 抢占优先级 1 TMR1 1 2 TMR2 2 3 UA 阅读全文
摘要:
前言: BLE产品工作在2.4G频段。产品具有蓝牙功能并且在产品外观上标明蓝牙标志,则必须通过认证。 各个国家的认证标准不同,但是大同小异。例如FCC/MIC/CE/BQB等。具体需要过某个认证可以查看出口国家。 认证可以分为传导和空气耦合。传导是测试芯片发射信号的波形;耦合是测试芯片发射信号并经过 阅读全文
摘要:
测试结果: CH9141芯片,BLE-TPT-B-ANT模块,基于3.6版本 序号 广播间隔 平均功耗(uA) 1 100ms 385 2 200ms 210 3 500ms 95 4 1s 55.6 5 2s 32.2 连接间隔,无实际数据传输 序号 连接间隔 平均功耗(uA) 1 7.5ms 2 阅读全文
摘要:
BASIC模式讲解 下方代码实现基于basic模式下一端发送数据,另一端接收数据并返回数据的双向传输。 RF_PHY.c工程替换即可使用,注意未定义的tmos任务自行定义 #include "CONFIG.h" #include "RF_PHY.h" #define RF_AUTO_MODE_EXA 阅读全文
摘要:
实现功能:BLE主从一体功能(centperi)添加USB复合设备(compound)。 思路:参考BLE_USB例程,该例程已经将BLE和模拟USB设备功能整合,并通过TMOS任务处理。将复合设备的报表替换BLE_USB的报表。 USB上传: 代码参考: sys/CH592BLE+Compound 阅读全文
摘要:
前言: 针对RISC-V芯片进入HardFault_Handler函数的问题排查提供讲解。 一、通用工程PC指针监控 在公共文件的sys.c工程中找到HardFault_Handler函数并修改如下: __INTERRUPT __HIGH_CODE __attribute__((weak)) voi 阅读全文