lwbtn 是什么? lwbtn(Lightweight button manager)其实就是一套用 C(C11)写的按钮库,专门帮你把各种按键的去抖、单击、双击、长按全搞定。它不依赖任何操作系统,只要你能提供一个毫秒级的计时函数,就能跑。最关键的是——零动态内存分配,所以在资源紧张的 MCU 上也毫无压力。
用于单片机中的小巧多功能按键支持,软件采用了分层的思想,并且做到了与平台无关,用户只需要提供按键的基本信息和读写io电平的函数即可,非常方便移植,同时支持多个矩阵键盘及多个单io控制键盘,目前已实现按下触发、弹起触发、长按自动触发、长按弹起触发、多击触发、连续触发等功能,并且能够随意组合(支持状态的同一时间轴和非同一时间轴)
介绍了如何针对STM32串口通信在接收数据时出现丢包的问题进行优化。最初采用DMA单字节接收,后来通过启用空闲中断和半满中断,实现更稳定的不定长数据帧接收。最终方案结合了DMA、空闲中断和半满中断,确保了在突发数据量大的情况 下也能有效避免丢包。
Contributions last year: 20
Max continuous contributions: 2
Recent contributions: 1
Commits, issues, and pull requests will appear on your contribution graph. Only when the email address used for the commits in local configuration is associated with your GitOSC account, the commits' contribution will be counted.