
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
本文基于STM32F103平台设计了一套电机控制程序,为平衡车开发奠定基础。系统通过TIM1输出PWM驱动电机,TIM3编码器模式实时采集转速,TIM2定时器提供50ms中断触发转速计算。程序实现了电机正反转自动测试功能,采用状态机设计确保数据采集准确性,支持串口调试和匿名上位机通信。该方案采用模块化封装,重点解析了三个定时器的协同工作原理:TIM2作为心跳定时器,TIM3负责测速,TIM1控制P

本文详细介绍了AT命令模块的实现方案,重点包括:1)封装AT命令处理模块,实现与底层硬件解耦;2)采用信号量机制实现命令发送与返回数据的同步控制;3)构建硬件抽象层(HAL)和内核抽象层(KAL)提升系统可移植性;4)实现带超时检测的互斥量机制;5)设计完整的数据接收解析流程,包括特殊字符处理(如"+IPD")和状态管理;6)提供全局变量和缓冲区管理方案。通过FreeRTOS任

本文详细剖析了STM32F103C8T6开发中的常见问题,重点针对外设使用和内存管理两大维度。在外设方面,深入分析了GPIO模式配置、UART波特率计算、SPI时序匹配、ADC采样精度等高频错误;在内存管理方面,系统讲解了栈溢出、堆分配、全局变量过多等致命问题。每个问题都提供了"现象描述-原因分析-解决方案"的完整思路,并给出具体配置示例和优化建议。文章特别强调了这款芯片20K

本文介绍了一个AT指令发送函数的实现方法。该函数通过串口向WiFi/蓝牙模块发送AT指令,并等待模块返回"OK"响应。函数包含参数检查、FIFO清空、指令发送、超时等待等步骤,通过strstr()函数检测响应内容,返回0表示成功,-1表示超时,-2表示参数错误,-3表示指令错误。文章详细解释了入参检查、Tick计时、字符串查找等关键概念,并分析了FreeRTOS延时机制与超时判

本文记录了使用ESP8266实现MQTT功能的开发过程。首先通过AT指令测试建立基础通信,包括WiFi模式配置(STA/AP模式)和路由器连接。重点介绍了MQTT连接流程:配置TLS参数(域名+8883端口)、服务器连接、主题订阅与发布。开发中采用分层设计思路,使用环形缓冲区处理串口数据收发,并提供了串口发送函数示例。文章还包含TCP连接、数据发送长度控制等关键实现细节,为后续更换ESP32等芯片

本文记录了使用ESP8266实现MQTT功能的开发过程。首先通过AT指令测试建立基础通信,包括WiFi模式配置(STA/AP模式)和路由器连接。重点介绍了MQTT连接流程:配置TLS参数(域名+8883端口)、服务器连接、主题订阅与发布。开发中采用分层设计思路,使用环形缓冲区处理串口数据收发,并提供了串口发送函数示例。文章还包含TCP连接、数据发送长度控制等关键实现细节,为后续更换ESP32等芯片

本文详细记录了将IoTSharp/mqttclient移植到嵌入式系统的过程。该MQTT客户端具有高性能、跨平台特性,支持多种操作系统。移植重点包括:1) 实现网络部分(AT命令驱动ESP8266);2) 处理内存、线程、定时器等核心模块;3) 解决编译过程中的各类错误(头文件缺失、类型未定义、GNU扩展语法兼容等)。通过逐步调试和修改,最终完成了基础功能的移植,为后续功能完善奠定了基础。文中特别

本文详细记录了将IoTSharp/mqttclient移植到嵌入式系统的过程。该MQTT客户端具有高性能、跨平台特性,支持多种操作系统。移植重点包括:1) 实现网络部分(AT命令驱动ESP8266);2) 处理内存、线程、定时器等核心模块;3) 解决编译过程中的各类错误(头文件缺失、类型未定义、GNU扩展语法兼容等)。通过逐步调试和修改,最终完成了基础功能的移植,为后续功能完善奠定了基础。文中特别

MQTT协议是专为物联网设计的轻量级发布/订阅协议,具有以下核心特点:1)采用发布/订阅模式,最小报文仅2字节;2)包含客户端和代理服务器两类角色;3)支持通配符主题订阅(单层+和多层#);4)提供遗愿机制和三种QoS等级(0-2);5)支持保留消息和会话管理。协议适用于智能家居等场景,通过心跳包保持连接,需确保客户端ID唯一性。MQTTX客户端使用需配置服务器地址、端口等五个参数,3.1.1版本

本文主要介绍了STM32F103C8T6的USART串口外设功能。USART支持全双工异步通信,包含3个USART接口(USART1-3),分别挂载在不同APB总线上。文章详细讲解了USART的数据帧格式(起始位、数据位、校验位和停止位)、波特率计算方法(注意APB1/APB2时钟差异)、三种工作模式(轮询、中断、DMA)以及硬件流控制功能。通过框图分析了USART的核心工作机制:发送/接收双缓冲








