- 博客(5)
- 收藏
- 关注
原创 W25Q32 SPI Flash开发入门到精通:详细讲解+代码解析
本文介绍了GD25Q32 NOR Flash存储器的基本操作原理与实现方法。首先解析了该芯片的存储结构(4MB容量,分为64KB块、4KB扇区和256B页),详细说明其读取设备ID(0x90命令)、写入数据(需先擦除扇区)等关键操作流程。文章提供了完整的底层驱动代码,包括SPI初始化、写使能(0x06)、忙状态检测(0x05)、扇区擦除(0x20)、页编程(0x02)和数据读取(0x03)等功能实现,并强调操作时必须遵循4KB对齐、先擦后写等硬件约束。所有代码封装在spi_flash.c/h文件中,可直接应
2025-06-10 12:01:11
1076
原创 ModbusRTU通信协议全解析
本文详细介绍了Modbus RTU通信协议的关键内容,包括其RS-485/232传输介质、主从架构特点及二进制编码方式。重点解析了RTU帧格式(ADU)的4部分构成和CRC16校验机制,强调3.5字符时间作为帧边界判定的重要性。详细说明了03(读保持寄存器)、06(写单寄存器)、16(写多寄存器)三种常用功能码的报文格式和示例,并提供了不同波特率下帧时序的计算方法。该文对Modbus RTU协议的核心要点进行了系统梳理,具有很强的实用参考价值。
2025-05-30 17:07:25
1448
2
原创 基于 GD32 的 USART + DMA + 环形队列 接收方案
本文介绍了在嵌入式系统中实现串口通信的模块设计,重点结合了环形队列、USART、DMA和空闲中断技术,以提升系统性能和可靠性。文章首先详细讲解了环形队列的基本实现,包括初始化、数据压入和弹出操作。接着,阐述了如何通过USART、DMA和空闲中断来初始化串口通信,并配置DMA接收数据。中断服务函数负责在数据接收完成后将数据搬移到环形队列中。最后,主任务循环从队列中读取数据,并按包进行校验和处理,特别是针对LED控制命令的解析与执行。通过这种设计,系统能够高效处理大量数据,并确保实时性和可靠性。
2025-05-15 12:13:59
661
原创 报错:stlink is not in the dfu mode,please restart it
文章主要解决了STLINK连接时出现的“STLINK is not in the DFU mode”问题。解决步骤包括:首先拔掉STLINK,然后重新插入,接着直接点击“Device Connect”进行连接,最后点击“Yes”完成升级。文章强调这些内容为学习笔记,旨在分享和记录,并欢迎读者指正错误,共同进步。
2025-05-13 16:51:43
474
原创 解决Keil5 ST-LINK setting闪退问题
Keil软件在点击“Download”或“ST-Link Settings”时闪退,通常与ST-Link驱动问题有关,如驱动未正确安装、版本不兼容或损坏。解决方法是重新安装最新驱动,可从ST官网下载最新驱动文档,替换到Keil5的ST-Link路径下。例如,路径为E:\Application\Keil_v5\ARM\STLink。完成替换后,重新打开Keil即可解决问题。此方法适用于大多数因驱动问题导致的Keil闪退情况。
2025-05-13 16:40:28
630
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人