- 博客(254)
- 收藏
- 关注
原创 面向对象封装 UART——UART_Device 设备层
本文介绍了一种基于C语言的UART设备封装方法,通过函数指针模拟面向对象特性,实现了硬件抽象层。文章详细阐述了UART_Device结构体设计,包含初始化、发送和接收三个核心方法,并展示了设备注册与查找机制。作者以UART2为例,说明了私有资源管理、DMA收发实现以及队列数据处理的完整流程。这种封装方式解耦了上层应用与底层硬件,支持多设备扩展,为后续集成libmodbus协议栈奠定了基础。整个方案采用RTOS+DMA+IDLE中断的高效通信模式,同时保持了代码的可维护性和可移植性。
2026-05-09 09:00:00
248
原创 在 RTOS 里使用 UART——信号量 + DMA 回调框架
RTOS环境下UART通信的高效实现方案 摘要: 本文介绍在RTOS系统中实现UART通信的高效模式。通过"中断回调+信号量+任务"三层架构,实现非阻塞式通信。硬件中断触发回调函数,使用xSemaphoreGiveFromISR释放信号量;任务层通过xSemaphoreTake等待信号量,避免CPU空转。文章详细解析了代码实现,包括信号量创建、DMA接收配置和任务调度流程,并提供了裸机代码移植到RTOS的改造清单。该方案使UART通信任务可与其他任务并行运行,提高系统资源利用率。 (14
2026-05-08 18:00:00
235
原创 效率最高的UART编程方法——DMA+IDLE
本文介绍了STM32H5中串口DMA+IDLE中断实现不定长接收的完整方案。传统DMA方式需预先知道数据长度,而IDLE中断能在数据帧结束时自动触发,通过DMA计数器反推实际接收长度。文章详细解析了IDLE中断原理、CubeMX配置要点和代码实现,包括缓冲区设置、回调函数处理和任务同步机制。该方案结合DMA的高效性和IDLE中断的灵活性,解决了串口通信中不定长数据接收的难题,相比查询、中断和定长DMA方式具有显著优势。
2026-05-08 09:00:00
268
原创 SPI LCD DMA 编程与调试记录
本文介绍了在STM32H5开发板上实现SPI LCD的DMA驱动方式,主要包含以下内容: 回顾SPI三种传输方式(查询/中断/DMA),重点分析DMA方式的非阻塞特性 详细说明CubeMX配置步骤,包括SPI2全局中断和DMA请求设置 核心代码改造:将SPI_WriteDatas函数从查询方式改为DMA方式 深入讲解DMA两级中断链机制(GPDMA传输完成中断和SPI EOT中断) 指出CubeMX在GPDMA代码生成中的常见误区 提供三种实用调试方法:死循环标记法、逐步断点法、隔离验证法 给出完整的移植步
2026-05-07 18:00:00
200
原创 UART编程实战:查询、中断、DMA 三种方式
本文介绍了在STM32H5开发板上实现UART通信的三种方式:查询、中断和DMA。通过CubeMX配置USART2发送和UART4接收通道,详细分析了每种方式的实现原理、代码差异和优缺点。查询方式简单但CPU占用高;中断方式通过回调函数实现异步处理;DMA方式效率最高但配置复杂。文章提供了完整的移植指南和性能对比,帮助开发者根据项目需求选择最佳方案。
2026-05-07 09:00:00
432
原创 串口硬件结构与三种编程方式
STM32H5 USART硬件结构与编程方式解析 本文深入剖析STM32H5 USART硬件架构及其三种编程方式。首先介绍了LCD驱动的移植方法,为后续串口调试提供可视化界面。重点解析了USART硬件框图,包括数据寄存器(TDR/TSR)、接收寄存器(RDR/RSR)、波特率发生器(BRR)和FIFO缓冲区的工作原理。详细讲解了波特率计算公式及误差控制要点,特别说明STM32H5特有的8字节深度硬件FIFO配置方法。最后对比了三种编程方式:查询模式(阻塞式)、中断模式(异步通知)和DMA模式(硬件自动搬运)
2026-05-06 18:00:00
337
原创 使用 LCD 打印调试信息
摘要 本文介绍了基于STM32H5的SPI接口LCD驱动实现,采用三层架构设计: 硬件层:通过HAL库实现SPI和GPIO控制 驱动层(spi_lcd):提供LCD初始化、窗口设置和数据写入等基础功能 应用层(draw):封装字符显示、图形绘制等高级API 文章详细说明了各层接口设计,包括LCD初始化、颜色格式、文本显示、图形绘制等功能实现。重点分析了字库系统,包含ASCII和汉字点阵数据的存储结构。最后给出了在main函数中的典型使用流程:先初始化硬件SPI和DMA,再依次调用LCD_Init()和Dra
2026-05-06 08:00:00
140
原创 UART 协议详解
本文详细介绍了UART通信协议的核心概念和应用。主要内容包括:UART的异步传输特性、帧结构(起始位、数据位、校验位和停止位)、波特率与比特率的区别、TTL/RS-232/RS-485三种电平标准的对比,以及在本项目中的具体应用场景。文章重点解析了UART的8N1帧格式、LSB先发的历史原因、波特率容错范围等关键技术点,并展示了项目中PC-中控-传感器的三级UART通信链路配置。理解这些基础知识是后续进行UART编程和Modbus协议移植的重要前提。
2026-05-05 18:00:00
659
原创 同步传输与异步传输
《同步与异步传输:嵌入式通信的基础解析》 本文深入浅出地讲解了通信系统中同步和异步传输的核心区别。同步传输依赖共享时钟线(如SPI、I2C),适合高速短距离通信;异步传输通过起始/停止位实现同步(如UART),更适合远距离多节点应用。文章对比了两者在时钟需求、线路数量、传输效率等方面的差异,特别分析了异步传输在RS-485等工业场景中的优势。通过生动的类比(舞蹈节拍器vs抛接球)和具体实例,帮助读者理解嵌入式通信的基本原理,为后续学习UART、Modbus等协议奠定理论基础。
2026-05-05 09:00:00
156
原创 STM32CubeIDE 创建第1个工程
摘要: 本文是STM32开发实践系列第三篇,介绍如何在STM32CubeIDE中创建第一个STM32H5工程。主要内容包括:1)STM32CubeIDE的三大核心功能;2)创建工程的详细步骤(芯片选择、时钟树配置、GPIO设置);3)项目目录结构解析;4)main.c的典型框架与USER CODE标记规则;5)实现GPIO点灯的完整示例代码。重点强调CubeIDE通过.ioc文件可视化配置硬件,并能智能保护用户代码不被覆盖的特性,为后续工业互联设备开发奠定基础。
2026-05-04 18:00:00
414
原创 STM32工业互联系统学习总览
文章摘要 本文是"AI编程"系列第二篇,详细介绍了"全场景工业互联设备管理系统"的学习路线图。项目基于STM32H5中控和STM32F030传感器平台,从GPIO点灯逐步构建完整的工业互联系统,包含Modbus通信、USB虚拟串口、FreeRTOS多任务、传感器数据采集和IAP远程升级等功能。 文章系统性地将学习过程划分为9个阶段:从开发环境搭建到UART编程,从USB协议到Modbus深度解析,最终实现多传感器系统集成和Bootloader开发。特别强调阶段3(UA
2026-05-04 09:00:00
423
原创 Windows 安装 Claude Code 并接入 模型
本文介绍了如何在Windows系统上安装配置Claude AI编程助手。主要内容包括:1) 通过PowerShell安装Claude;2) 使用CC Switch工具管理API密钥;3) 配置DeepSeek等国内可用的大模型API;4) 环境变量设置和运行验证。文章提供了详细的步骤说明和配图,帮助开发者绕过地区限制,实现Claude与第三方模型的无缝对接,为后续AI辅助开发工作做好准备。
2026-05-03 18:00:00
725
原创 嵌入式上位机开发入门(三十四):读写与升级
本文分析了工业控制系统中读点、写点和OTA升级的完整调用流程。前台通过JSON-RPC构造请求,后台处理请求并与Modbus总线交互。读点操作通过指针参数返回传感器值;写点操作更新内存数组并同步到硬件;OTA升级采用多线程方式推送固件,避免阻塞主业务。系统采用三层架构:前台GUI、后台业务处理层和底层Modbus通信层,通过JSON-RPC实现跨层调用,确保各模块职责清晰、交互规范。
2026-04-30 09:00:00
380
原创 嵌入式上位机开发入门(三十三):增删改点
摘要 本文分析了工业控制系统中的点管理操作流程,包括增加、删除和修改点的完整处理过程。核心流程为:前台通过JSON-RPC发起请求 → 后台处理并更新内存 → 持久化配置 → 重建寄存器映射 → 下发中控设备。重点剖析了增加点的实现细节,展示了从GUI操作到最终写入全局数组并同步至硬件设备的完整链路。所有操作都遵循相同架构,确保数据一致性和实时同步,其中关键步骤包括配置持久化、寄存器映射计算和Modbus协议通信。
2026-04-29 16:02:27
433
原创 嵌入式上位机开发入门(三十二):读写配置文件
本文分析了后台程序 control_center.exe 的配置文件读写机制。配置文件 control.cfg 采用每行一个 JSON 对象的格式存储点信息和 MQTT 配置。read_cfg 函数在程序启动时读取配置文件,通过判断 port_info 字段区分点信息和 MQTT 信息,并将数据加载到全局变量中。其中点信息通过 local_add_point 函数写入全局点数组,而 MQTT 信息则直接填充到 MQTT 结构体。该机制实现了程序状态的持久化存储和快速恢复。
2026-04-28 17:49:51
345
原创 嵌入式上位机开发入门(三十一):后台程序总览
本文介绍了一个嵌入式系统后台程序的设计与实现,该系统作为控制中枢负责管理传感器点映射和Modbus通信。系统采用三层架构:LVGL前台程序通过JsonRPC over TCP调用后台功能,后台通过Modbus与中控H5通信,再连接各传感器设备。 核心数据结构包括: PointInfo - 描述传感器点的连接方式和寄存器信息 PointMap - 建立中控寄存器与传感器寄存器的映射关系 HostPointMap - 聚合同一接口下的所有点映射 后台程序主要流程: 初始化阶段读取配置、创建映射表并写入中控 初始
2026-04-27 18:00:00
378
原创 嵌入式上位机开发入门(三十):JsonRPC TCP Client
本文基于 jsonrpc-cpp 实现了一个 JsonRPC TCP 客户端,通过四步流程完成远程调用:构造 JSON 请求→发送→接收响应→解析结果。文章详细介绍了 Windows Socket 初始化、地址结构填充、RPC 调用流程及资源释放等关键点,并提供了完整的客户端代码示例。测试验证了客户端与服务端的交互,成功实现了远程加法计算功能。最后总结了 WinSock 使用、JSON 解析和内存管理等核心知识点,为后续 LVGL 上位机开发奠定了基础。
2026-04-26 09:00:00
330
原创 嵌入式上位机开发入门(二十九):JsonRPC TCP Server
JSON-RPC TCP Server 实战指南 本文基于jsonrpc-cpp开源库,详细介绍了如何搭建JSON-RPC TCP服务端。主要内容包括: 项目简介:使用Jsoncpp+socket封装的TcpServer类 核心实现: 主函数监听8086端口 通过AddMethod注册RPC方法 WaitMessage驱动消息循环 方法实现示例: Print方法打印请求内容 add方法实现两数相加 测试方法:通过TCP客户端发送JSON报文测试 本文提供了完整的代码解析和测试示例,帮助开发者快速实现JSON
2026-04-25 16:30:09
467
原创 嵌入式上位机开发入门(二十八):JSON 与 JsonRPC 入门
本文介绍了JSON和JsonRPC的基础概念与应用。首先讲解了JSON作为一种轻量级数据交换格式的特点和数据类型,包括字符串、数字、布尔值、数组和对象等。然后详细对比了C++的Jsoncpp库和C语言的cJSON库的使用方法,并通过实战代码演示了如何解析嵌套JSON数据。最后引入JsonRPC技术,说明其在上位机系统中用于前台GUI与后台控制中心通信的作用。文章为嵌入式开发和上位机软件框架提供了实用的JSON处理技术基础。
2026-04-23 18:00:00
548
原创 嵌入式上位机开发入门(二十七):MQTT 调试与容错优化
摘要 本文记录了嵌入式MQTT客户端开发中的两个关键问题及解决方案。首先修复了at_gethostbyname函数中潜在的while循环死锁问题,通过改用for循环确保字符串遍历安全性。随后针对上机测试出现的消息偶发丢失现象,在cycle函数中插入调试打印,定位到sendPacket发送错误是主要原因。通过增加容错计数器和优化错误处理流程,提高了MQTT通信的稳定性。文章详细展示了从问题发现到定位、再到改进的完整调试过程,为嵌入式网络通信开发提供了实用参考。
2026-04-23 09:00:00
318
原创 嵌入式上位机开发入门(二十六):将 MQTT 测试程序加入 APP 任务
摘要 本文基于Paho MQTT协议栈,详细介绍了如何在W800开发板上实现MQTT客户端功能。主要内容包括: 开发流程:从WiFi连接到MQTT协议交互的完整步骤,包括TCP连接建立、MQTT协议握手、主题订阅和消息发布循环。 核心实现: 网络层初始化与TCP连接建立 MQTT客户端配置(心跳、遗愿消息等) 主题订阅与消息回调注册 循环发布机制实现 代码结构: 使用分层设计隔离传输层和协议层 关键结构体说明(Network、MQTTClient等) 错误处理机制(带重试的连接逻辑) 应用特点: 支持QoS
2026-04-22 18:00:00
376
原创 嵌入式上位机开发入门(二十五):Paho MQTT 移植Socket 层适配
摘要 本文介绍了将Paho MQTT Embedded-C的Network层适配到W800平台的过程。主要内容包括: 替换Network层的读写函数,使用W800 AT指令封装的socket API替代FreeRTOS+TCP实现 实现DNS解析功能,支持点分十进制IP和域名两种格式的地址转换 重构NetworkConnect函数,改用标准socket接口完成TCP连接 替换网络读写函数,并解决接收函数阻塞问题 通过新增setsockopt实现超时控制,优化w800_recvfrom函数 最终实现MQTT协
2026-04-21 09:00:00
312
原创 嵌入式上位机开发入门(二十四):Paho MQTT 嵌入式客户端源码分析
MQTT协议源码分析摘要 本文深入解析了Paho MQTT Embedded-C的实现架构与核心流程。主要内容包括: 分层架构设计:分为API层、数据包处理层和网络操作层,通过Network结构体实现平台适配。 完整通信流程:包含TCP连接建立、MQTT协议握手、主题订阅、消息发布和接收五个关键步骤。 关键实现细节: 网络层使用FreeRTOS+TCP组件实现超时机制 采用goto统一处理错误返回 MQTT报文按协议规范逐字段序列化 移植要点:重点替换Network结构体中的平台相关函数,上层逻辑可保持不变
2026-04-16 21:15:04
432
原创 嵌入式上位机开发入门(二十三):MQTT 协议初体验
本文介绍了MQTT协议的基本概念和应用场景,详细讲解了如何在PC端搭建MQTT环境。主要内容包括:MQTT协议的发布/订阅模型、三种角色(发布者、代理、订阅者)的关系;使用emqx作为MQTT Broker服务器和MQTTX客户端的安装配置步骤;通过实际演示展示了主题订阅、消息发布和转发的过程。文章特别强调了Broker的核心转发功能以及客户端断线重连的重要性,为后续将MQTT移植到嵌入式系统FreeRTOS奠定了基础。通过本地环境的搭建和测试,读者可以直观理解MQTT协议的工作机制。
2026-04-15 09:00:00
377
原创 嵌入式上位机开发入门(二十二):RTU/TCP 双协议互斥访问寄存器
摘要 本文介绍了如何在嵌入式系统中实现同时支持Modbus RTU和TCP双协议通信的设计方案。核心思路是通过共享寄存器映射表(modbus_mapping_t)和互斥锁机制,确保两个协议任务能安全访问同一套数据寄存器。文章详细阐述了系统架构设计,包括全局资源初始化、TCP Server任务流程(WiFi连接、TCP监听、请求处理)、RTU任务创建以及关键的数据保护机制。通过互斥锁保护寄存器访问,实现了RTU和TCP协议对同一物理数据的透明读写,并支持远程IAP升级功能。整个方案基于FreeRTOS任务调度
2026-04-14 18:00:00
347
原创 嵌入式上位机开发入门(二十一):H5 开发板程序改进
本文介绍了对H5开发板Modbus通信程序的六项改进: 将接收缓冲区从100字节扩大到260字节,以支持最大数据包处理; 修改紧急命令处理逻辑,传入完整数据包而非截头包; 使紧急命令处理兼容RTU/TCP双协议,通过header_length自动适配协议差异; 优化socket状态判断,仅当明确断开时才报错; 修正发送失败处理逻辑,作为Server不再主动重连; 用非阻塞的net_flush替代阻塞的recv来清空接收队列。 这些改进提升了程序的稳定性、兼容性和响应性,使其能更好地作为Modbus Serv
2026-04-14 09:00:00
332
原创 嵌入式上位机开发入门(二十):写文件功能的 RTU/TCP 双协议适配
本文介绍了如何在Modbus TCP中实现写文件记录功能,重点解决了RTU与TCP协议帧格式差异问题。通过动态计算头部偏移量,使同一套代码可适配两种协议。文章详细解析了Write File Record请求格式,并展示了改造后的函数实现,其中关键点是将硬编码偏移量改为从上下文获取。最后分析了响应长度计算函数的逻辑,说明如何自动适配不同协议的校验机制。
2026-04-13 18:00:00
369
原创 嵌入式上位机开发入门(十九):Socket 状态检测与断线重连
摘要 本文针对W800 Wi-Fi模块的Modbus通信流程进行了健壮性优化,重点解决两类典型问题:上位机主动断开连接和网络波动导致的丢包。 核心改进: 接收状态检测:在recvfrom中增加socket状态轮询,避免无限阻塞。通过w800_get_status函数(基于AT+SKSTT命令)实时检测连接状态,异常时主动关闭socket。 发送状态检测:在sendto操作后立即验证socket状态,防止对端断开导致误判。 代码技巧:使用C语言块作用域({})限制临时变量生命周期,提升代码可维护性。 该方案有
2026-04-12 18:00:00
397
原创 嵌入式上位机开发入门(十八):修复首次连接超时问题
摘要:本文分析了STM32H5与W800模块通过串口通信时出现的首次连接超时问题。问题根源在于串口通信速度慢导致竞态条件——当上位机发送Modbus数据时,accept函数尚未完成socket分配,造成首帧数据丢失。通过修改w800_recv_packet和accept逻辑,使后台线程能在数据到达时主动分配socket,修复了该问题。修复后首次连接成功率达100%,解决了串口延迟导致的时序冲突问题。
2026-04-11 17:15:54
349
原创 嵌入式上位机开发入门(十七):修复编译错误
移植libmodbus到FreeRTOS的编译错误修复总结 本文记录了将libmodbus移植到FreeRTOS环境时遇到的典型编译错误及其解决方案。主要问题包括:头文件路径缺失、宏未定义、函数未实现、后端类型引用错误和内存分配函数不匹配。重点修复了_connect函数的简化(移除select/getsockopt依赖)、PF_INET宏的等效替换、modbus_tcp_pi_backend引用的修正,以及malloc到pvPortMalloc的统一替换。通过从原文件搜索复制宏定义、简化非必要功能等方法,逐
2026-04-10 09:00:00
316
原创 嵌入式上位机开发入门(十六):AT_Socket 移植思路
本文介绍了将AT_Socket框架移植到嵌入式工程中的完整步骤。首先通过CubeMX配置串口(USART1+DMA+中断),然后移植UART面向对象封装代码,实现串口收发功能。接着添加AT_Socket相关文件(at_command.c、at_socket.c、w800.c)构建三层架构,并引入Modbus TCP协议栈文件。最后在APP层完成模块初始化与网络通信功能整合。整个过程采用模块化设计思路,将各功能层解耦,便于后续维护和扩展。
2026-04-09 16:57:15
328
原创 嵌入式上位机开发入门(十五):UDP场景分析
本文对比分析了Modbus RTU与TCP协议的核心差异。RTU基于串口通信,采用1字节从机地址寻址,需要CRC校验,适合短距离工业场景;TCP基于以太网,通过7字节MBAP报文头(含IP/端口)寻址,依赖TCP可靠传输,适合远程监控。两者功能码和数据格式一致,但RTU需频繁切换从机地址,TCP可保持长连接。实现上,RTU只需初始化串口,TCP需建立connect连接。根据传输介质、距离和成本需求选择合适的协议方案。
2026-04-09 09:00:00
355
原创 嵌入式上位机开发入门(十四):UDP场景分析
摘要 本文分析了UDP通信的实现流程与特点。相比TCP,UDP采用无连接传输方式,客户端无需绑定地址即可直接发送数据。文章详细讲解了UDP客户端的实现代码,包括创建套接字、设置远端地址和发送数据等关键步骤。重点解析了核心函数w800_sendto的工作原理,说明其处理TCP/UDP差异、动态创建socket以及通过AT命令发送数据的过程。UDP通信具有简洁高效的特点,适用于需要快速传输但对可靠性要求不高的场景。
2026-04-08 18:00:00
322
原创 嵌入式上位机开发入门(十三):TCP 场景分析
本文详细解析了TCP通信中服务端与客户端的实现差异。服务端通过socket()、bind()、listen()、accept()等步骤被动等待连接,而客户端则主动connect()发起连接请求。文章提供了完整的代码示例,包括服务端如何监听端口、接受连接请求并进行数据收发,以及客户端如何连接服务器实现通信。关键函数如socket()、bind()、connect()等均有详细说明,帮助读者理解TCP编程的核心流程与实现原理。
2026-04-08 09:00:00
374
原创 嵌入式上位机开发入门(十二):Socket 封装核心步骤
本文介绍了基于FreeRTOS的Socket封装实现方案,主要包括以下内容: 结构体定义: AT_Device结构体封装了WIFI模块的基本属性和操作接口 AT_Socket结构体管理socket连接状态和数据传输 初始化流程: 创建必要的互斥锁和信号量 初始化socket结构体数组 创建后台数据解析线程 复位AT模块 热点连接: 设置STA工作模式 配置AP名称和密码 启用DHCP 保存参数并加入无线网络 查询网络连接状态 关键特性: 采用FreeRTOS任务和信号量机制实现异步通信 支持多socket连
2026-04-07 09:00:00
328
原创 嵌入式上位机开发入门(十一): Socket 封装思路
本文介绍基于 FreeRTOS 的 Socket 封装思路,借鉴 RT-Thread 设计,聚焦结构体与后台线程。AT 发送需加锁、写串口、等待响应并解析;后台线程负责串口数据读取,区分 AT 回应与网络数据并分别处理。设计 AT_Device 与 AT_Socket 结构体,存储地址、硬件编号、数据队列及信号量。采用 APP 层、AT 命令层、硬件驱动层三层架构,以宏封装标准 Socket 接口,实现软硬件解耦,便于上层开发。
2026-04-06 18:00:00
405
原创 嵌入式上位机开发入门(十):RT-Thread 后台线程代码借鉴
本文分析了AT命令通信框架中后台线程的工作原理。发送AT命令时会加锁并阻塞等待响应,由后台线程完成串口数据读取和解析:若为AT响应则唤醒发送者,若为网络数据则存入socket缓冲区并唤醒接收者。重点解析了client_parser函数如何区分处理不同类型数据,以及URC处理函数如何解析网络数据包并完成存储和唤醒流程。整个机制通过信号量和互斥锁实现线程间同步,确保AT命令收发与网络数据处理的高效协同。
2026-04-06 09:00:00
209
原创 嵌入式上位机开发入门(九):RT-Thread 数据收发代码借鉴
本文是嵌入式上位机开发入门教程,承接上一篇内容,继续借鉴 RT-Thread 的at_socket_demo,详细分析 Socket 数据收发的实现的原理,为后续基于 FreeRTOS 编写同类代码做准备。文章先介绍发送数据的 at_send 和 at_sendto 函数,说明前者是后者的封装,TCP 无需指定远端信息而 UDP 需要,底层通过 ops 结构体调用对应 WiFi 模块的 AT 命令,且区分软件 socket 与硬件 socket 的用途。
2026-04-03 09:00:00
327
原创 嵌入式上位机开发入门(八):RT-Thread 的 Socket 代码借鉴
本文是嵌入式上位机开发入门教程,介绍借鉴 RT-Thread 的 at_socket_demo 实现 Socket 代码。文章通过宏定义将标准 Socket 接口封装为 AT 指令函数,实现上层通用调用。同时分析了 Server 端分配、绑定、监听、接受连接等流程,以及 Client 端创建套接字并连接服务器的实现。借助 ops 结构体适配不同 WiFi 模块,统一 AT 指令接口,为基于 FreeRTOS 编写同类网络代码提供参考思路。
2026-04-02 18:00:00
352
原创 嵌入式上位机开发入门(七):W800 模块 AT 命令
本文为嵌入式上位机开发系列教程,介绍安信可 W800 Wi-Fi 模块的 AT 指令应用。模块依托串口通信,可配合 STM32H5 实现数据转发,完成网络互联。文中整理测试、复位、网络配置、Socket 通信等常用 AT 指令,详细说明连接 AP、作为 TCP 客户端 / 服务器及 UDP 通信的操作步骤。同时指出串口助手发送换行符易导致数据异常的注意事项,帮助开发者快速上手模块网络功能,为后续学习主动上报功能打下基础。
2026-04-01 17:49:20
636
PCtoLCD2002字模生成器
2025-09-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅