- 博客(377)
- 收藏
- 关注
原创 MQTT协议快速入门·超详细MQTT协议解析
MQTT是一种基于发布/订阅模式的轻量级物联网通信协议,构建于TCP/IP之上。其核心组件包括客户端(发布/订阅设备)和Broker(消息路由中心),通过主题层级(如sensor/temperature)实现消息路由,支持+/#通配符进行灵活订阅。
2025-08-28 23:52:52
894
2
原创 在Windows环境下通过EMQX搭建属于自己的MQTT服务器(详细搭建步骤并通过MQTTX验证)
本文介绍了MQTT协议及其核心组件(客户端、服务端、主题、QoS),重点演示了EMQX服务器的部署步骤和MQTTX客户端的连接测试方法,一步步图文介绍帮助你在Windows环境下通过EMQX搭建属于自己的MQTT服务器。
2025-08-28 06:00:00
663
原创 ESP32入门开发·SmartConfig实现配网功能
文章详细介绍了esp32-s3通过SmartConfig使用手机APP软件EspTouch实现配网功能,内含源码可直接移植使用。
2025-08-26 06:00:00
6681
原创 ESP32入门开发·使用STA模式连接WIFI(过程详解,源码可直接移植)
esp32-s3完成简单的配网功能,通过STA模式连接wifi,获取IP,含详细讲解过程,可直接移植使用。
2025-08-26 05:00:00
1173
原创 ESP32入门开发·三万字详解LEDC产生PWM信号实现呼吸灯效果(内含源码可直接移植)
详细示例逐步解析及演示,内含源码可直接移植,主要通过ESP32-S3的LEDC的API函数实现软件PWM控制LED灯亮度,以及通过硬件PWM实现呼吸灯的效果,最好对FreeRTOS的事件组有一定程度的了解。
2025-08-17 07:00:00
1025
原创 ESP32入门开发·通用硬件定时器 (GPTimer)
本文介绍了ESP32-S3通用定时器的架构与配置方法。ESP32-S3包含两个定时器组,每个组有两个通用定时器,具有16位预分频器和54位可自动重载计数器。定时器支持多种功能,包括时钟分频、计数方向设置、警报触发等。文章详细讲解了定时器的三大部分:16位预分频器与时钟选择器、54位时基计数器以及警报器的工作原理。最后通过LED闪烁的实例,演示了如何配置定时器周期性触发警报:初始化GPIO、创建1MHz定时器、设置1秒警报周期,并在回调函数中实现LED电平翻转。完整代码展示了从定时器初始化到事件处理的完整流程
2025-08-14 23:00:00
980
原创 ESP32入门开发·外部中断·点击按键实现电平翻转
本文介绍了ESP32-S3的按键消抖和中断处理技术。主要内容包括:1) 按键消抖方法,分为硬件消抖(RC电路)和软件消抖(延时法、计数法、状态机法);2) 中断机制详解,包括中断优先级、嵌套和触发方式;3) ESP32-S3的中断分配特点,支持7级优先级和中断共享;4) 实际代码实现,通过GPIO配置实现按键控制LED,结合硬件消抖和软件延时消抖优化响应。文章提供了完整的初始化配置、中断服务函数和消抖处理代码,帮助开发者理解ESP32-S3的中断系统和按键处理最佳实践。
2025-08-14 06:00:00
956
原创 ESP32入门开发·VScode空白项目搭建·点亮一颗LED灯
本文介绍了ESP32开发环境的搭建与基础项目创建流程。主要内容包括:1) Windows平台下ESP-IDF开发环境配置;2) 使用VSCode创建ESP32-S3空白项目的方法;3) GPIO驱动开发详解,涵盖引脚配置、电平控制等关键API;4) 结合FreeRTOS实现LED闪烁和串口打印的完整示例。文章对比了ESP32与STM32在GPIO配置上的差异,并提供了调试技巧。适合ESP32初学者快速掌握开发基础,附有官方文档和博客参考链接。
2025-08-12 07:00:00
976
原创 ESP32入门开发·Windows平台下开发环境的搭建
本文详细介绍了ESP32开发环境的搭建与使用流程,入门级环境搭建流程,供了完整的开发环境配置指南,并附有相关软件下载链接和注意事项,适合ESP32开发者参考使用。
2025-08-12 06:00:00
1261
原创 基于Modbus-RTU通信协议读取RS485温湿度传感器主机功能(源码可直接移植)
Modbus主机代码,可直接移植使用,通过RS485实现温湿度传感器数据的采集
2025-08-11 07:00:00
888
原创 基于Modbus-RTU通信协议实现RS485设备之间的通信(源码可直接移植)
两万字详解,基于STM32通过MODBUS-RTU通信协议实现RS485通信,内含源码可直接移植使用,内含详细的验证过程
2025-08-11 06:00:00
1601
1
原创 CRC(循环冗余校验)·CRC校验原理及步骤解析入门教程(C语言)
本文介绍了CRC(循环冗余校验)的基本原理和计算方法。首先解释了异或运算、多项式和模2运算等基础概念,然后详细说明了CRC运算的三个步骤:展开多项式获得除数、数据末端补零、进行模2除法运算。文章还拓展介绍了初始值、结果异或值、输入反转和输出反转等参数的作用,并提供了三种不同层次的C语言实现代码:从简单的单字节CRC-8计算,到支持MSB优先处理的标准实现,最后给出了能够处理任意长度输入数据的完整程序。这些代码示例展示了如何将CRC的理论计算过程转化为实际的编程实现,适用于嵌入式系统等应用场景。
2025-07-22 06:00:00
2461
2
原创 KEIL5软件使用技巧·debug仿真功能解析
本文详细介绍了STM32开发中的仿真调试配置与使用方法,详细说明了调试界面功能,包括寄存器窗口、汇编窗口、断点设置以及各种执行控制按钮的使用方法,文章提供了完整的操作流程和参数设置说明,适合STM32开发者参考使用。
2025-07-22 05:00:00
1033
原创 C语言菜鸟入门·浅析strdup和strcpy的区别
本文对比了C语言中strdup和strcpy两个字符串复制函数。strdup是POSIX扩展函数,会动态分配内存复制字符串,需手动释放内存;而strcpy是标准库函数,需预先分配目标缓冲区,存在缓冲区溢出风险。主要区别包括:内存管理方式(动态分配vs预分配)、安全性(需检查返回值vs可能溢出)、标准性(POSIX扩展vs ANSI C标准)及适用场景(动态创建副本vs已知缓冲区大小)。文中还提供了两个函数的用法示例和自定义strdup的实现方法。
2025-07-19 19:48:41
483
原创 FreeRTOS实战(十四)·RS485实现DMA数据转运
内含源码可直接移植,验证可用,基于STM32F1系列单片机,实现RS485数据接收,进行DMA数据转运
2025-07-19 05:00:00
1023
原创 嵌入式面试八股文(十六)·一文搞懂嵌入式常用名词IC、ASIC、CPU、MPU、MCU、SoC、SoPC、GPU、DSP
本文系统介绍了9种常见芯片类型及其应用场景。集成电路(IC)是所有芯片的统称;专用集成电路(ASIC)针对特定算法定制;中央处理器(CPU)是计算机运算核心;微处理器(MPU)强调嵌入式高集成度;微控制器(MCU)集成处理器和存储单元;片上系统(SoC)兼具MCU集成度与MPU处理能力;可编程片上系统(SoPC)支持硬件配置修改;图形处理器(GPU)擅长并行计算;数字信号处理器(DSP)专精信号处理。每种芯片在可编程性、集成度和应用领域上各具特点,适用于不同场景。
2025-07-15 19:46:57
1239
原创 嵌入式面试八股文(十五)·嵌入式开发常用四大关键字:volatile、 static、extern、const快速了解
嵌入式开发常用四大关键字:volatile、 static、extern、const快速了解
2025-07-15 05:00:00
699
原创 FreeRTOS实战(十三)·串行通讯协议RS485移植FreeRTOS(源码可直接移植使用)
内含源码可直接移植,RS485详细介绍,STM32裸机代码编程,FreeRTOS移植详细过程
2025-07-14 06:00:00
1088
原创 FreeRTOS实战(十二)·STM32F103RCT6移植FreeRTOS
内含源码可直接移植,基于STM32F103RCT6移植FreeRTOS详细过程,使用OLED屏显示任务验证
2025-07-14 05:00:00
1184
原创 FreeRTOS实战(十)·STM32移植FreeRTOS模版
内含源码可直接移植,本文在以前移植模版的基础上完善FreeRTOS工程模板的优化过程,举例演示了基于任务优先级调度LED闪烁和按键控制任务挂起/恢复的功能实现。
2025-05-28 05:00:00
1452
1
原创 FreeRTOS实战(九)·移植STM32实现TIM基本定时器定时功能
内含源码可直接移植,对定时器进行一个详细的介绍,主要完成基本定时器定时功能
2025-05-28 04:00:00
2223
原创 FreeRTOS实战(八)·移植STM32实现双ADC采集DMA转运数据
基于STM32移植FreeRTOS实现双ADC采集进行DMA数据转运,内含源码可直接移植
2025-05-27 05:00:00
1305
原创 FreeRTOS实战(七)·移植STM32实现多通道ADC采集DMA转运数据
内含源码可直接移植,内容基于STM32F1系列移植FreeRTOS实现多通道ADC采集数据,并通过DMA转运数据。
2025-05-27 04:00:00
1459
原创 FreeRTOS实战(六)·移植STM32实现单通道ADC采集DMA转运数据
内含源码可直接移植,主要实现功能,单通道ADC采集数据,通过DMA进行数据转运,并通过挂起和恢复函数,将数据处理任务挂起和恢复。
2025-05-26 05:00:00
1140
原创 FreeRTOS实战(五)·移植STM32实现单通道ADC采集消息队列转运数据
内含源码可直接移植,主要实现功能,实现单通道在中断中实现ADC采集任务,并通过消息队列中断发送函数xQueueSendFromISR()进行数据传输,并通过挂起和恢复函数,将数据处理任务挂起和恢复。
2025-05-26 04:00:00
1249
原创 FreeRTOS实战(四)·USART串口实现DMA数据转运(江协/江科大代码移植)
内含源码可直接移植,内容基于STM32F1系列移植FreeRTOS实现DMA转运串口接收数据,详细过程介绍,其中包含调用二值信号量释放函数xSemaphoreGiveFromISR(),接收函数xSemaphoreTake()
2025-05-17 20:21:27
1287
1
原创 FreeRTOS实战(三)·外部中断实现消息队列的发送与接收
在 FreeRTOS 中创建了两个任务获取消息队列,并且定义了两个按键 KEY1 与 KEY2 的触发方式为中断触发,其触发的中断服务函数则跟裸机一样,在中断触发的时候通过消息队列将消息传递给任务,任务接收到消息就将信息通过串口调试助手显示出来。
2025-05-17 04:00:00
1626
4
原创 FreeRTOS实战(二)·按键实现任务的挂起和恢复(STM32移植模版)
主要完成功能:按键实现任务的挂起和恢复,内含STM32F1系列移植模版,可直接使用,含源码可自行移植
2025-05-16 05:00:00
1867
1
原创 FreeRTOS菜鸟入门(十七)·内存管理·heap_x.c的区别详解
内含源码可直接移植,详细介绍heap_x.c的优缺点,以及pvPortMalloc( ); 内存申请函数、vPortFree(); 内存释放函数、vPortInitialiseBlocks( void ); 初始化内存堆函数、xPortGetFreeHeapSize( ); 获取当前未分配的内存堆大小、xPortGetMinimumEverFreeHeapSize(); 获取未分配的内存堆历史最小值的调用详解
2025-05-14 04:00:00
804
原创 FreeRTOS菜鸟入门(十六)·任务通知·八万字通过详细举例解析任务通知
内含详细源码解析,可直接移植,常用API函数:xTaskNotifyGive()与ulTaskNotifyTake()主要适用于替换二值和计数信号量,xTaskNotify()、xTaskNotifyAndQuery()与xTaskNotifyWait()比较通用。
2025-05-14 03:00:00
1675
原创 FreeRTOS菜鸟入门(十五)·软件定时器
本文详细介绍了软件定时器相关API函数,并进行了实例演示,附上源码,可直接移植使用。常用API:xTimerCreate()、xTimerStart()、xTimerStop()、xTimerDelete()等。
2025-05-11 04:00:00
799
原创 FreeRTOS菜鸟入门(十四)·事件
文章详细介绍了事件先关API,并进行实例演示,可直接移植。常用API:xEventGroupCreate()、vEventGroupDelete()、xEventGroupSetBits()、xEventGroupWaitBits()等
2025-05-09 21:43:45
894
原创 FreeRTOS菜鸟入门(十三)·信号量·互斥量与递归互斥量·优先级翻转与继承实验
文章详细介绍了互斥量与递归互斥量的常用API函数,并且附上源码以及实例演示,源码可直接移植,常用API:xSemaphoreCreateMutex()、 xSemaphoreCreateRecursiveMutex()、xSemaphoreTake()等,并且通过代码模拟了优先级的翻转和优先级的继承,比较直观的看到二者的现象。
2025-05-09 04:00:00
1068
原创 嵌入式面试八股文(十四)·内存管理机制、优先级继承机制以及优先级翻转
方案内存分配策略碎片处理适用场景heap_1.c静态分配,不可释放无仅需一次性分配的任务heap_2.c最佳匹配算法,允许释放中等简单动态分配heap_3.c封装标准库依赖库需要兼容现有代码heap_4.c合并空闲块,减少碎片较好长期运行的复杂系统heap_5.c支持多块非连续内存区域最好扩展内存或外部RAM我们知道任务的优先级在创建的时候就已经是设置好的,高优先级的任务可以打断低优先级的任务,抢占 CPU 的使用权。
2025-05-06 20:21:44
809
原创 FreeRTOS菜鸟入门(十二)·信号量·二值信号量与计数信号量
文章详细介绍了二值信号量和计数信号量常用的API函数,并附上源码解析以及实例演示,附上源码可直接移植使用。常用API函数:xSemaphoreCreateBinary()、xSemaphoreCreateCounting()、vSemaphoreDelete()、xSemaphoreGive()、xSemaphoreTake()等。
2025-05-06 16:56:27
1162
基于STM32F1系列FreeRTOS移植模版
2025-05-14
基于STM32移植FreeRTOS使用外部中断EXTI
2025-05-17
基于STM32F1系列移植FreeRTOS实现串口进行DMA数据接收.zip
2025-05-17
FreeRTOS使用外部中断EXTI实现消息队列的发送与接收
2025-05-15
FreeRTOS-KEY调用挂起和恢复.zip
2025-05-14
FreeRTOS-CPU利用率.zip
2025-05-14
FreeRTOS中断管理.zip
2025-05-14
FreeRTOS内存管理.zip
2025-05-13
FreeRTOS任务通知-替代消息队列-读取上次通知值.zip
2025-05-13
FreeRTOS任务通知-替代消息队列-eSetValueWithoutOverwrite.zip
2025-05-13
FreeRTOS任务通知-替代消息队列-eSetValueWithOverwrite-模拟覆盖.zip
2025-05-13
FreeRTOS任务通知-替代消息队列-eSetValueWithOverwrite.zip
2025-05-13
FreeRTOS任务通知-替代计数信号量-eIncrement.zip
2025-05-13
FreeRTOS任务通知-替代事件-eSetBits.zip
2025-05-13
FreeRTOS任务通知-替代二值信号量-eNoAction.zip
2025-05-13
FreeRTOS任务通知-替代计数信号量-接收函数.zip
2025-05-13
FreeRTOS任务通知-替代计数信号量-发送函数.zip
2025-05-13
FreeRTOS任务通知-替代二值信号量-接收函数.zip
2025-05-13
FreeRTOS任务通知-替代二值信号量-发送函数.zip
2025-05-13
基于STM32实现modbus-RTU主机通信.zip
2025-08-04
基于STM32实现Modbus主从机代码实现
2025-08-04
Modbus调试软件.zip
2025-07-28
基于STM32实现Modbus-RTU通信
2025-07-29
基于STM32实现RS485通讯.zip
2025-07-26
基于STM32F1系列移植FreeRTOS实现RS485进行DMA数据接收
2025-07-18
STM32在FreeRTOS基础上移植RS485
2025-07-11
STM32F103RCT6移植FreeRTOS模版.zip
2025-07-09
基于江协/江科大的串口代码移植更改RS485
2025-07-10
FreeRTOS-STM32移植模版.zip
2025-05-26
基于STM32移植FreeRTOS实现TIM基本定时器.zip
2025-05-22
基于STM32移植FreeRTOS实现双ADC进行DMA数据转运
2025-05-21
基于STM32移植FreeRTOS实现多通道ADC进行DMA数据转运
2025-05-21
基于STM32移植FreeRTOS实现单通道ADC进行DMA数据转运
2025-05-21
基于STM32移植FreeRTOS实现ADC功能.zip
2025-05-20
基于STM32移植FreeRTOS-KEY调用挂起和恢复.zip
2025-05-17
main函数可以再任意位置
2024-11-21
一个周期信号经过等间隔采样后是否是周期和什么有关?
2024-11-21
C语言--a的使用,uint32_t的坑
2024-11-20
降压电路设计问题(TPS54560)
2023-12-26
STM32F103C8T6烧录问题
2023-12-12
STM32F103C8T6的ADC采集问题
2023-12-05
P10LED单元板如何实现滚屏显示
2023-10-17
STM32F103C8T6驱动七段数码管
2023-10-25
数码管显示问题乱码显示
2023-10-26
PB3,PB4引脚进行重定义
2023-10-28
STM32模块代码合并
2023-10-28
示波器如何测量占空比
2023-10-24
keil5头文件添加
2023-10-21
STM32F1kile5中如何更改
2023-10-17
AD在b站上学习的为啥,这里和视频上的不一样点击完出来这个是为什么
2023-09-26
函数于结构体的分文件编写
2023-09-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人