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

本文详细记录了将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的核心工作机制:发送/接收双缓冲

摘要:STM32采用总线矩阵结构,将外设分为APB1和APB2两条总线。APB1为低速总线(通常为系统时钟一半频率),连接基础控制型外设如TIM2-7、I2C、UART4/5等,侧重节能;APB2为高速总线(与系统时钟同频),连接关键交互型外设如GPIO、ADC、TIM1/8等,侧重性能。这种分级设计实现了功耗与性能的平衡:低速外设不占用高速总线资源,高速外设获得充分带宽。实际编程中需注意不同总线

本文详细讲解了STM32中DMA数据转运的实现方法。首先介绍了DMA数据转运的基本原理,包括存储器地址查看、外设寄存器访问方法。重点讲解了DMA配置步骤:1)时钟使能;2)结构体参数配置(源地址、目标地址、数据宽度、自增设置等);3)传输计数器设置;4)触发模式选择。通过OLED显示验证了DMA转运效果,并演示了Flash到SRAM的数据转运。接着讲解了ADC与DMA配合应用,实现了多通道ADC数

本文详细介绍了STM32F103C8T6的DMA(直接存储器存取)功能。DMA可在不占用CPU情况下实现外设与存储器、存储器间的高速数据传输,提升系统效率。文章从DMA核心概念入手,阐述了DMA工作原理、STM32的DMA资源分布(2个控制器12个通道)、数据转运三要素(源地址、目标地址、传输数量)及关键寄存器配置。重点分析了DMA框图结构、数据传输宽度对齐规则,并举例说明了ADC扫描模式与DMA

STM32F103C8T6的ADC主要具备以下特性分辨率:12位,可将模拟电压转换为0到4095之间的数字值输入电压范围:0~3.3V,注意:输入电压切勿超过3.6V,否则可能损坏芯片。转换通道:最多支持18个输入通道10个外部通道:可通过GPIO引脚(PA0-PA7, PB0-PB1)连接外部信号2个内部通道:连接至内部温度传感器和参考电压源(VREFINT= 1.2V)。转换模式:支持单次、连

本文主要介绍了STM32外设ADC数模转换器的代码实现过程。首先通过电位器示例详细讲解了ADC的初始化流程,包括时钟配置、GPIO设置、规则组通道配置、校准方法以及转换结果读取。代码实现了单次转换非扫描模式下的ADC数据采集,并通过OLED显示转换值和电压值。随后扩展为多通道应用,展示了如何通过软件修改通道参数实现四个模块(光敏、热敏、对射式传感器等)的数据采集。文章还分析了连续转换模式的实现方法

STM32F103C8T6的定时器编码器接口功能非常实用,它通过硬件自动处理正交编码器的脉冲和方向识别,大大简化了位置和速度测量的程序负担。特性项目说明支持定时器通用定时器:TIM2, TIM3, TIM4;高级定时器:TIM1, TIM8使用通道固定使用通道1 (TI1) 和通道2 (TI2),通道3和4不可用于编码器模式编码器模式模式1 (仅在TI1边沿计数)、模式2 (仅在TI2边沿计数)、








