环形缓冲区FIFO
摘要:最近学习一个LwRB开源环形缓冲区FIFO设计,即先入先出缓冲区。LwRB 是一个开源、通用环形缓冲区库。 1、只有单个任务写和单个任务读时,线程是安全的 2、只有单个中断写和单个中断读时,中断是安全的 3、支持内存间的 DMA 操作,实现缓冲区和应用程序内存之间零拷贝 4、对于读数据,提供 pee
阅读全文
posted @
2023-11-30 09:44
凡仕
阅读(287)
推荐(0) 编辑
【WCH蓝牙系列芯片】-基于CH32V208开发板—OTA带库升级
摘要:在CH32V208的OTA升级中有两种方式,方式一是带库升级,方式二是不带库升级。 在EVT资源包中BLE目录下有一个PDF针对于WCH CH32V208 蓝牙空中升级(BLE OTA)做出说明。 方式一的带库升级,即新固件下载属于应用程序功能的一部分,在新固件下载过程中,应用可以正常使用,下载完成
阅读全文
posted @
2023-11-15 16:34
凡仕
阅读(516)
推荐(0) 编辑
【WCH蓝牙系列芯片】-基于CH32V208开发板—串口USART_FLAG_TXE & USART_FLAG_TC
摘要:USART 模块支持多种中断源,这里说明一下USART_FLAG_TXE和USART_FLAG_TC对应的关系。 USART_FLAG_TXE 发送数据寄存器空表示数据缓冲区是否为空,为空时置1,表示可以写数据到数据缓冲区,有可能数据没有发送完。 USART_FLAG_TC 数据发送完成(TC)表示
阅读全文
posted @
2023-11-14 16:59
凡仕
阅读(94)
推荐(0) 编辑
【WCH蓝牙系列芯片】-基于CH582开发板—SPI发送数据,每个字节间延时大的问题
摘要:在使用SPI接口发送数据时,当SPI主机使用过程中,连续发送多个数据时,会发现每个数据之间会产生一个时钟的间隙。两帧数据之间时间间隔都是几乎不变的,这样有时导致SPI接口收发数据产生时序错误,导致SPI通信失败。因此,针对这个问题,这里采用沁恒微电子的CH582芯片,利用CH582的EVT中SPI例
阅读全文
posted @
2023-11-09 16:33
凡仕
阅读(833)
推荐(0) 编辑
【WCH蓝牙系列芯片】-基于CH32V208开发板—PWM暂停输出,保持电平问题
摘要:在进行定时器的PWM输出时,有时候需要暂停对PWM的输出,此时对应的IO口输出电平是不确定的状态,这样会影响信号的调制问题。针对这个问题,采用CH32V208的EVT例程中的PWM_Output程序进行修改。 int main(void) { USART_Printf_Init(115200); D
阅读全文
posted @
2023-11-02 16:39
凡仕
阅读(181)
推荐(0) 编辑