- 博客(44)
- 资源 (17)
- 收藏
- 关注

原创 Keil 5环境下实现STM32F4 移植 FreeRTOS的详细教程(适合小白,附工程源码)
一、移植前的准备1.基础工程2. FreeRTOS 源码二、移植FreeRTOS1. 添加 FreeRTOS 源码2. 将文件添加到工程3. 添加头文件路径4. 添加 FreeRTOSConfig.h 文件5. 修改基础工程的 SYSTEM 文件6.修改中断相关文件三、配置FreeRTOS四、测试 FreeRTOS五、附件
2025-03-14 16:59:45
1350

原创 ESP32 IDF 在vs code 下移植LVGL_v8.3.11(致力打造史上最详细lvgl移植教程,步骤堪称保姆级,小白上手即可实现100%成功移植!!!)
一、移植LVGL的前期准备二、LVGL源码移植三、LVGL 显示驱动接口移植四、LVGL 触摸驱动接口移植五、LVGL 时基单元配置(LV_TICK)六、LVGL 的核心配置文件(lv_conf.h)七、LVGL demo测试附录:ESP32S3N16R8_with_LVGLv8.3.11_20250211 工程文件
2025-02-11 12:14:06
3887

原创 STM32之 ESP8266 WIFI 模块驱动代码-可以通过互联网实现数据远程传输(程序稳定,清晰明了非常容易移植到51单片机上)
成品展示部分 :(ESP8266只是其中一个小部分而已)实物图:基于互联网的农业大棚环境监控系统设计电路图:农业大棚环境监控设计电路图(彩色)调试部分:https://blog.csdn.net/qq_34885669/article/details/99121122(在看代码之前务必先串口调试ESP8266,否则难以用单片机控制ESP8266通过互联网实现数据远程传...
2020-01-08 10:26:50
21165
15

原创 STM32之0.96寸 4针 OLED显示屏(IIC协议)驱动代码(程序稳定,清晰明了)
4针OLED IIC 协议显示效果温馨提示:本篇博客文章仅仅是OLED屏幕的驱动代码,其余代码(温度,时间显示代码)见本人主页其它文章......完整工程和资料包下载:https://download.csdn.net/download/qq_34885669/11640003第一部分:IIC协议代码头文件 (iic.h)#ifndef IIC_H#def...
2019-05-05 16:05:12
47863
72

原创 STM32之0.96寸 7针 OLED显示屏(SPI协议)驱动代码(程序稳定,清晰明了)
温馨提示:本篇博客文章仅仅是OLED屏幕的驱动代码,其余代码(温度,时间显示代码)见本人主页其它文章......第一部分:OLED屏幕驱动头文件(oled.h)第二部分:OLED屏幕驱动文件(oled.c)第三部分:字库取模头文件(word.h)第四部分:字库取模源文件(word.c)
2019-04-25 17:24:53
27464
25

原创 STM32之SHT30温湿度传感器驱动代码(程序稳定,清晰明了)
第一部分:SHT30温湿度模块代码头文件(SHT30.h)#ifndef SHT30_H#define SHT30_H#include "delay.h"#include "sys.h"#include "stdio.h"#include "usart.h"#include "string.h"#include "sys.h"extern u8 humiture_...
2019-04-12 15:08:19
41616
50
原创 Keil 5 环境下STM32F4 HAL库版本MDK工程创建详细步骤(适合小白,附工程源码)
一、前期准备二、工程文件移植1.建立初步的工程文件夹2. 建立和拷贝工程相关文件三、建立STM32F4 的Keil工程1.建立keil工程框架2.清理keil工程框架自动生成的个别文件夹3.添加必要文件到keil工程框架4.Keil工程魔术棒设置四、编译验证工程五、附录(完整工程)
2025-03-12 19:59:42
2729
原创 ESP32 在IDF v5.3.1版本下实现 扫描WiFi
它支持配置基站模式(即STA 模式或 WiFi 客户端模式),此时 ESP32-S3 连接到接入点(AP)。还支持 AP 模式(即 SoftAP 模式或接入点模式),此时基站连接到 ESP32-S3。同时,支持 AP-STA 共存模式,此时ESP32-S3 既是接入点,同时又作为 STA。①: Station 模式(即 STA 模式或 WiFi 客户端模式),此时 ESP32 S3 连接到接入点 (AP)。②: AP 模式(即 Soft-AP 模式或接入点模式),此时基站连接到 ESP32S3 设备。
2025-03-07 11:55:05
850
原创 ESP32 IDF v5.3.1版本下实现TCP 服务端(Server)驱动代码(稳定可靠!支持多线程、多客户端同时连接)
一、ESP32 实现TCP Server前期准备二、TCP Server驱动代码编写(STA模式为例)1.创建初始化STA模式的线程2.初始化并创建TCP Server服务端(支持多客户端连接)3.创建TCP Server发送数据处理任务线程(根据自己需求创建)4.TCP Client 客户端数据管理(链表)5.模拟TCP Client 连接ESP32 TCP Server测试 测试代码示例:测试流程6.附录:完整的实
2025-02-27 17:00:43
840
原创 ESP32 在 IDF v5.3.1版本下实现TCP 客户端(Client)驱动代码(稳定)
完成上述准备后,ESP32 就能正常使用 TCP 协议进行数据传输了。确保每个步骤正确完成,是实现稳定网络通信的关键。本文重点是实现TCP 客户端驱动代码,所以对于上面的WiFi和网络接口的初始化请参考我的其他2片博客:ap模式:ESP32 在IDF_V5.3.1版本下实现AP无线热点模式!(带WIFI事件处理)-CSDN博客sta模式:ESP32 在 IDF_V5.3.1 版本下实现 STA 模式!(带WIFI事件处理)-CSDN博客。
2025-02-25 13:01:45
995
原创 ESP32 在 IDF_V5.3.1 版本下实现 STA 模式!(带WIFI事件处理)
ESP32 的 STA 模式(Station 模式)指的是设备作为 WiFi 客户端连接到已有的无线网络(如家庭或办公室的路由器)。在这种模式下,ESP32 会扫描周围的 WiFi 网络,连接到指定的网络,并通过 DHCP 或静态配置获得一个 IP 地址,从而加入局域网或互联网。在使用 WiFi 功能之前,必须初始化 NVS,因为 WiFi 驱动会从 NVS 中读取配置信息。这种模式在物联网设备中非常常见,有助于实现数据上传、远程控制以及与云平台的通信。
2025-02-20 11:30:03
1117
原创 ESP32 在IDF_V5.3.1版本下实现AP无线热点模式!(带WIFI事件处理)
ESP32 的 AP(Access Point)模式是指 ESP32 作为无线接入点运行,它自己创建一个 Wi-Fi 网络,允许其他设备(如手机、电脑、平板等)直接连接到它上面,而不依赖于现有的路由器或 Wi-Fi 网络。1. AP 模式的基本概念自建网络:在 AP 模式下,ESP32 会广播一个 SSID,成为一个小型无线热点。其他设备可以扫描到这个 SSID 并连接进去。无需依赖路由器。
2025-02-19 19:40:22
1334
原创 ESP32 AP 模式下,如何获取获取指定MAC客户端的IP地址:使用esp_netif_dhcps_get_clients_by_mac()(IDF V5.3.1)
查看函数接口的解释我们可以知道,该函数用于通过 DHCP 服务器获取已分配 IP 地址的客户端的 MAC 地址和 IP 地址信息,我们需要注意的事接口注释里面的括号部分:(MAC are inputs, IP outputs)。客户端连接到AP是先发生的,DHCP服务器给客户端分配IP是后发生的,两者是2个独立又有先后前提的事件,并且在客户端连接到AP上时,只能立马得到MAC,而DHCP服务器给MAC分配ip是需要点时间的,但是这个时间又是不确定的。
2025-01-21 12:54:34
493
原创 当ESP32 在AP模式下,有客户端连接到AP时,如何第一时间获取对应客户端的ip地址和mac地址(注意:ESP IDF版本 V5.3.1)
在 ESP32 AP 模式 下,Wi-Fi 和 IP 事件的运作流程通过 ESP32 的 Wi-Fi 驱动 和 事件系统 管理。每当发生连接、分配 IP 地址或断开连接时,ESP32 都会通过事件机制通知用户,允许用户在事件处理函数中进行相应的操作,如打印日志、更新状态或进行其他应用逻辑。通过这些事件,用户可以非常方便地管理连接到 ESP32 AP 的客户端,并处理网络相关事件。
2025-01-20 23:48:13
672
1
原创 spi device polling start: Cannot send polling transaction
我们查看乐鑫的官方的IDF文档发现:当多个任务访问同一个SPI设备时,此功能不是线程安全的。简单点来说:该问题通常是因为SPI传输没有正确完成,或者没有处理完上一个传输就开始了下一个传输。这是一个常见的问题,特别是在使用SPI设备时。每个线程将SPI事务放入一个事务队列中,由主线程或专门的SPI任务来处理。你可以使用以下方法来等待SPI事务完成(特别是在使用。获取锁,确保每个线程只能在没有其他线程正在使用SPI的情况下访问SPI总线。2.使用SPI设备的队列(队列事务)
2025-01-19 12:43:16
286
原创 ESP32 STA AP模式下,设备连接 ESP的AP 后无法上网,无法访问域名上网(或者Failed to enable NAPT)
ESP32 STA AP模式下,设备连接 ESP的AP 后无法上网,无法访问域名上网(或者Failed to enable NAPT)1.可能是ESP STA模式未成功连接到路由器,确保 STA 成功连接到外部网络。2.检查 STA 和 AP 的网络配置是否正确,避免子网冲突。3.ESP32的NAPT功能未正确启用,确保 menuconfig 中已启用 IP_NAPT。4.DNS服务器未正确配置。
2025-01-13 12:42:51
685
原创 解决ESP32 wifi scan:1. 获取WIFI扫描列表个数为0 的问题 2.扫描WIFI列表时导致程序崩溃问题。
IDFv5.3.1版本中,必须先调用esp_wifi_scan_get_ap_num获取扫描的AP数量,再调用esp_wifi_scan_get_ap_records获取扫描的AP列表,否则就会出现获取的AP数量为0 的情况!上面意思就是但调用esp_wifi_scan_get_ap_records获取AP列表后,将会释放所有关于AP列表的内存,所以但我们先获取AP列表后获取AP数量就会导致获取的AP数量为0!解决办法:获取AP列表后,调用esp_wifi_clear_ap_list()来释放内存。
2025-01-06 21:42:49
398
原创 解决 :VS code右键没有go to definition选项(转到定义选项)
如果C_CPP:intelli Sense Engine的配置是disabled;>首选项->设置,搜索intelli Sense Engine (需要按照第一步先安装C/C++才有这个选项)第一步:先检查没有先安装C/C++插件,没有安装就先安装下。第二步: 打开VS CODE设置界面:文件。
2025-01-05 23:18:51
1667
原创 ESP32 IDF VScode出现头文件“无法打开 源 文件 ”,并有红色下划线警告
在工程里面的.vscode文件夹下,检查是否存在c_cpp_properties.json文件,如果没有可以手动创建添加。通过正确配置,使开发者在 VSCode 中获得更准确的错误提示、跳转定义、符号重命名等功能。),使 IntelliSense 能识别条件编译的代码。),可以为不同的操作系统或项目需求设置不同的编译选项。),使 VSCode 能正确识别项目中的符号和类型。指定编译器和项目依赖的头文件搜索路径 (),使 VSCode 能正确解析代码语法。),从而启用编译器特定的定义和语法解析。
2025-01-05 19:12:57
1706
1
原创 C++代码调用C函数代码:extern “C“的使用(解决C++代码调用C代码出现C函数未定义(undefined)错误)
由于C++中需要支持函数重载,所以C和C++中对同一个函数经过编译后生成的函数名是不同的,这就会导致一个问题,如果在C++中调用一个使用c语言编写模块中的某个函数,C++是按照C++的名称修饰方式来查找并链接这个函数,就会发生链接错误。在使用ESP32 WHO人脸检测开源项目时,我想把摄像头人脸检测结果显示到LCD屏幕上,在调用LCD显示相关函数时,出现了函数未定义(undefined reference to)的错误,但是我实际上是包含了头文件并声明了LCD相关的函数。
2025-01-05 18:32:32
382
原创 ESP32 S3 OV2640 camera显示到LCD上出现:cam_dma_config(300): frame buffer malloc faile;cam_dma_config failed
问题现象:帧缓冲区 malloc 失败!cam_dma_config 失败!相机配置失败,错误 0xffffffff由于摄像头每帧的数据都非常大,然而ESP32自带的DRAM都不够用,所以CAMERA 在初始化时一般都会配置 CAMERA_FB_IN_PSRAM 把摄像头每帧的数据存到PSRAM上面。
2025-01-03 22:30:23
1032
原创 ESP32 gptimer通用定时器初始化报错:assert failed: timer_ll_set_clock_prescale
乐鑫官方文档写的定时器 分辨率 =1 / resolution_hz秒。其中的resolution_hz不是定时器的预分频值(divider),只是分辨率!是为了开发者更方便设置定时器,但是resolution_hz的值并不能随意设置。由于ESP32的通用定时器的时钟源APB为80MHZ,且分频器是16位的。所以2 =< divider
2024-11-05 17:30:21
1127
原创 VS CODE 里面编译ESP32工程代码出现cc1.exe: error: too many filenames given; type ‘cc1.exe --help‘ for usage 错误
cc1.exe: error: too many filenames given; type 'cc1.exe --help' for usage 错误解决:打开 CMakeLists.txt ,找到component_compile_options 把里面的 -o3 修改为 -O3。
2024-10-30 14:44:36
461
原创 STM32 RTC 驱动代码(解决了使用HAL库函数导致的复位或者掉电后导致RTC年月日日期清零的问题)
在 HAL_RTC_GetDate()源码中,可以清楚看到日期是由DateToUpdate结构体获得的,然而通过逐步查询 DateToUpdate结构体来源发现DateToUpdate结构体和RTC计数器的值是没有关联的,所以单片机掉电或者复位后日期(年月日)就会清0。在 HAL_RTC_GetTime()源码中,可以清楚看到时间是由RTC_ReadTimeCounter()获得的,也就是说时间是和RTC计数器的值关联的,所以单片机掉电或者复位后时间(时分秒)不会清0 ,依然可以正常走时。
2024-10-30 14:27:37
1112
原创 Keil 5 在编译代码时出现CPU占用过高、伴随出现keil卡顿未响应的问题解决办法
修改keil的多线程编译设置,减少编译的线程数或者不使用多线程编译(编译时长会有所增加)。打开keil的 Edit-->Configuration-->Other-->Parallel Build Configuration。可以直接勾选 Disable Parallel Build 即不使用多线程编译,或者减少右边的编译线程数,比如CPU是8核的,那就把jobs设置为7甚至更小。关闭工程后, 删除工程文件中的“工程名.uvguix.xxx”和“工程名.uvoptx” 2个文件,然后重新打开工程编译。
2024-07-11 14:41:57
4842
原创 Linux 下 OpenCV-3.4.1+VTK7.1.1+PCL1.8.1编译安装教程(Ubuntu16.04,Ubuntu18.04系统,ARM/X86架构都适用)
适用系统:Ubuntu 16.04 、 Ubuntu18.04 Cpu架构:X86、ArmOpenCV版本:OpenCV-3.4.1VTK版本:VTK-7.1.1PCL版本:PCL-1.8.1 源码包打包下载:OpenCV-3.4.1+VTK-7.1.1+PCL-1.8.1源码包目录第一步:更改Ubuntu软件源,这样下载和更新依赖会更快第二步:安装cmake第三步:编译安装OpenCV-3.4.1第四步:编译安装VTK-7.1.1(特别注意:PCL是依赖VTK的,所以,必须先编译安装VTK!!)第五步:
2022-06-23 16:35:03
4415
1
转载 Ubuntu18.04安装indicator-sysmonitor显示CPU、网速(方法同时适用于x86、ARM电脑)
方法同时适用于x86、ARM电脑
2022-01-11 17:34:02
1652
1
转载 Ubuntu 18.04 安装 微信、QQ 教程+常见问题处理办法(亲测有用)
Ubuntu 18.04 安装微信、QQ教程,亲测有用!!!一、安装deepin-wine环境sudo git clone https://gitee.com/wszqkzqk/deepin-wine-for-ubuntucd deepin-wine-for-ubuntusudo sh install.shKDE或其他按照普通安装方式安装后运行出现X错误的桌面环境执行 ./KDE-install.sh二:下载微信deepin-wine容器,安装微信下载deepin.com.
2022-01-06 09:58:24
6082
3
转载 Ubuntu 18.04 安装WPS详细过程(保姆级教程)
第一步:到官网下载最新的WPS deb包https://linux.wps.cn/第二步:安装WPSsudo dpkg -i wps-office_11.1.0.10702_amd64.deb如果 出现报错提示未安装软件包 libpng12-0 运行以下命令,修复依赖,并重新安装WPS(没有出现报错可以跳过以下步骤!)1.修复依赖关系:sudo apt install -f2.下载依赖文件:wget http://kr.archive.ubuntu.com/ubunt.
2022-01-06 09:02:00
9257
原创 STM32之 W25Q128闪存(SPI协议)驱动代码(程序稳定,清晰明了)
第一部分:W25Q128代码头文件 (W25Q128.h)#ifndef W25Q128_H#define W25Q128_H#include "stm32f10x.h"#include "stdio.h"#include "sys.h"#include "delay.h"#define W25Q128_CS PBout(12)#define W25Q128_SCLK P...
2020-01-25 22:01:47
9307
原创 电信光猫/烽火HG6543c1光猫超级密码获取改桥接模式( 中国电信浙江公司定制天翼网关3.0)
第一步:开telnet浏览器网址栏输入:192.168.1.1:8080/cgi-bin/telnetenable.cgi?telnetenable=1第二步:使用pytty软件登入光猫(Putty软件下载:https://download.csdn.net/download/qq_34885669/12098009)telnet用户名 :roottelnet密码:...
2020-01-11 17:48:07
67424
24
原创 ESP8266 WIFI 模块串口调试过程-实现通过互联网实现数据远程传输(结尾含驱动代码链接)
一、ESP8266 WIFI模块调试(串口发送AT指令调试)。ESP8266 WIFI模块的调试算是最复杂的了,虽然通信是简单的串口通信,但是要设置ESP8266连接服务器并稳定无误的将数据上传,还是非常不容易的。在前期模块调试阶段我是使用USB转串口工具结合电脑串口调试助手来对ESP8266进行模拟ARM单片机设置ESP8266,通过查看电脑串口调试助手收到的ESP8266返回数据,来...
2019-08-10 22:43:33
15601
1
原创 STM32之 AT24C16(EEPROM)驱动代码(程序稳定,清晰明了)
AT24C16电路图第一部分:IIC协议代码头文件(iic.h)#ifndef IIC_H#define IIC_H#include "stm32f10x.h"#include "sys.h"#include "delay.h"#define write 0#define read 1//IIC总线地址接口定义#define IIC_SCL PBout(7)...
2019-05-10 16:52:25
12232
5
原创 STM32之DS18B20温度传感器驱动代码(程序稳定,清晰明了)
DS18B20温度显示效果温馨提示:本篇博客文章仅仅是Ds18b20驱动代码,其余代码见本人主页其它文章......完整工程和资料包下载:https://download.csdn.net/download/qq_34885669/11640003第一部分:DS18B20温度模块驱动代码头文件(DS18B20.h)#ifndef DS18B20_H#...
2019-04-25 17:51:23
37776
23
原创 STM32之BH1750光照强度模块(GY-302)C语言代码(代码稳定详细,简洁明了)
BH1750光强模块图片BH1750光强模块数据显示第一部分:BH1750光强模块代码头文件(BH1750.h)#ifndef BH1750_H#define BH1750_H#include "stm32f10x.h"#include "sys.h"#include "delay.h"//IIC总线地址接口定义#define IIC_SCL PBout...
2019-04-12 17:36:53
26546
44
正点原子STM32F4 的 HAL 库SYSTEM文件夹系统级核心驱动代码( sys、 delay 和usart驱动代码)
2025-03-13
STM32F429_HALv1.28.0_with_FreeRTOSv10.4.6_20250314.zip
2025-03-17
正点原子STM32F4 的 HAL 库SYSTEM文件夹系统级核心驱动代码( sys、 delay 和usart驱动代码)
2025-03-17
GUI Guider v1.9.0 Installer for Windows
2025-02-14
ESP32S3N16R8-with-LVGLv8.3.11-ST7789V+CST816T-20250213.zip
2025-02-13
W25Q64_128书签中文版.pdf
2020-01-25
Trafficc_Light_Server-0930
2022-09-30
sogoupinyin_2.3.1.0112_amd64.deb
2022-09-08
OpenCV3.4.1+vtk7.1.1+PCL-1.8.1自动安装编译(ubuntu系统,方法适用于ARM、X86架构)
2022-06-23
农业大棚环境监测(温湿度+二氧化碳浓度+光照强度+时间+OLED显示+ESP8266连网+EEPROM)
2022-02-17
微信推送luci-app-serverchan_1.0-40_all.tar(带依赖文件)
2020-03-26
WPS for Linux(ubuntu)字体缺失解决办法
2022-01-05
阿里DDNS ipk包 luci-app-aliddns_0.3.0-1_all.ipk
2020-03-26
FreeRTOS_STM32F407_USB (U盘读写已经调通).rar
2021-04-24
ComMonitor.rar
2021-04-24
C2Prog_v1.5p-b252.rar
2021-04-24
远程登入软件PuTTY.zip
2020-01-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人