自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 超详细基于stm32hal库的esp8266WiFi模块驱动程序(可直接移植)

esp8266支持mqtt通信协议,在一些只能在局域网环境下通信来说是十分便捷的(比如智能家居环境),下面这个工程就是stm32单片机结合esp8266作为客户端与其他客户端设备互相通信。

2025-08-12 21:26:35 438

原创 快速入门flask应用(从入门到实战)

本文介绍了网络通信的基本流程和Flask框架的入门教程。在讲解网络通信时,详细说明了从URL解析到页面渲染的7个步骤,包括DNS解析、HTTP请求/响应等关键环节。Flask部分则从安装配置开始,逐步讲解路由定义、视图函数编写、请求处理、模板渲染等核心功能,并提供了大量代码示例。文章特别强调了Flask作为轻量级Web框架,在网络通信中主要承担服务器端请求处理和响应生成的角色。最后预告了后续将开发基于Flask的摄像头物品识别网站项目。全文内容循序渐进,既包含理论知识又注重实践指导,适合Web开发

2025-08-08 14:46:44 947

原创 (超详细)yolo11机器视觉模型环境配置(附带摄像头识别测试)

使用我们这个yolo模型需要一个比较严格的环境但是对于其他的需要python环境的项目又需要不同的python环境而anaconda这个工具就可以管理和配置多个不同的环境,anaconda还包含了很多第三方库像NumPy(处理数字)、Pandas(处理表格数据)、Matplotlib(画图)、Scikit-learn(机器学习)这些专门的工具。我们需要的时候把他们导入到我们需要的环境就可以了。

2025-07-28 10:18:44 982

原创 基于51单片机的智能小车:按键调速、障碍跟踪、红外循迹与数码管显示(一个合格的单片机课设)

主控制器:STC89C52RC(经典51内核单片机)驱动模块:L298N电机驱动板感知模块:红外循迹传感器×3,超声波测距模块交互模块:4位共阴数码管,独立按键×3电源模块:18650锂电池组(7.4V)通过这个51单片机智能小车项目,我们实践了:定时器中断配置PWM波形生成多传感器数据融合实时控制系统设计人机交互实现虽然51单片机资源有限,但通过精心设计仍然可以实现复杂的嵌入式系统。该项目不仅锻炼了硬件设计能力,也提升了软件优化技巧,是嵌入式开发入门的绝佳实践。

2025-06-15 17:16:57 475

原创 Dijkstra算法

2 操作总时间复杂度为 O(m),1 操作总时间复杂度为 O(n2) ,全过程的时间复杂度为 O(n2+m)。在右图中,取出了 s 点加入了 S 集合,然后对 s 点的临接点进行松弛,将 s 作为中转点,发现通过 s 到达 C 点能够使得 C 的距离标签更小,故更新,B 节点同理。一开始所有的点都属于 T 集合,我们将源点 s 的距离标签 dis(s)=0,其他的点距离标签设为 dis(v′)=+∞。实际上,将点分为了两个集合 S,T,S 为已确定最短路长度的点集,T 为未确定最短路长度的点集。

2025-05-28 20:54:06 334

原创 快速入门基于stm32 CubeMX生成的freeRTOS操作系统开发

分别为mystatictask ,StartDefaultTask , myfunTask1 我们只生成任务StartDefaultTask , myfunTask1而在优先级最低的myfunTask1中生成任务mystatictask按照抢占式调度逻辑将先执行任务StartDefaultTask,然后执行任务myfunTask1但是在任务myfunTask1中生成了高优先级的任务mystatictask所以任务myfunTask1将被抢占变成最后执行。否则任务就读取消息并且处理。

2025-05-28 20:20:38 1940

原创 FreeRTOSConfig.h的作用

开发者通过修改此文件中的宏定义,可以定制 FreeRTOS 的功能、资源分配和调度行为。它是 FreeRTOS 的“中枢神经”,直接影响内核的编译选项和运行时行为。启用(1)或禁用(0)。:高优先级任务可中断低优先级任务。:任务需主动释放 CPU(如调用启用(1)或禁用(0)。同优先级任务共享 CPU,按固定时间片轮流执行。定义系统支持的(通常设置为 5~32)。优先级 0 为最低,数值越大优先级越高。定义 FreeRTOS。动态内存用于任务栈、队列、信号量等对象的分配。

2025-05-25 22:18:00 377

原创 操作系统任务状态

任务状态是操作系统中管理任务执行的关键概念,主要包括运行状态、就绪状态、阻塞状态和挂起状态。运行状态表示任务正在CPU上执行,触发条件为任务被调度器选中,退出条件包括时间片用完、主动让出CPU或被更高优先级任务抢占。就绪状态表示任务已具备运行条件但尚未分配CPU时间,触发条件包括任务初始化完成或阻塞条件解除。阻塞状态表示任务因等待事件或资源而暂停执行,常见原因包括时间阻塞、资源阻塞和同步阻塞,退出条件为等待的事件发生。挂起状态表示任务被显式暂停,需手动恢复,触发方式包括调用挂起函数或任务自挂起,退出条件为调

2025-05-23 20:52:26 303

原创 LCA算法

LCA(least common Ancestors),即最近公祖先,LCA算法就是指在有根树中找到两个节点的最近公共祖先.

2025-05-21 21:19:54 409

原创 软件I2C通信

的串行通信协议,广泛用于连接低速外设(如传感器、EEPROM、OLED 屏幕等)。有两种方法实现I2C通信 软件方法与硬件方法这里我们用到的是软件方法,两种方法区别在于生成SCL SDA总线的时序方波不同软件通过编程生成 硬件通过io口自动生成。I2C(Inter-Integrated Circuit)是一种。

2025-05-17 20:11:50 188

原创 基于stm32系列单片机的红外循迹小车

这是使用stm32系列单片机使用hal库开发的一个红外循迹小车,用于理解stm32一些基础外设的使用如PGIO,定时器中断,pwm波生成等。使用的外设模块有“两块tb6612直流电机驱动模块”“两块tcrt5000红外循迹模块”

2025-05-17 19:25:19 1097

原创 使用HAL库开发基于STM32G431RB单片机的CT117E-M4(国信长天)开发板

GPIO其核心功能是通过可编程的引脚实现与外部电路的交互。以下从作用、配置方法、应用实例到注意事项,系统化解析GPIO的使用。PWM(脉冲宽度调制)是一种通过调节脉冲信号的占空比来控制输出能量(如电压、功率)的技术。1. PWM 的核心原理周期(T):一次完整的开-关时间(例如0.01秒 → 100Hz)。占空比(Duty Cycle):开关处于“开”状态的时间占比。占空比50%→ 开0.005秒,关0.005秒 → 灯泡亮度中等。占空比80%→ 开0.008秒,关0.002秒 → 灯泡更亮。本质。

2025-05-15 19:55:46 1011 1

原创 数论基础(超详细)

具体的流程,我们从 22 开始循环,如果当前数 𝑥x没有被标记。那么当前数一定是素数,否则是合数,然后我们依次枚举 x 的倍数 2𝑥,3𝑥,4𝑥...,并且将其标记。采用一种从小到大的过程,对于整数 x,我们将区间内的所有的 𝑥 的倍数都标记为合数(非素数)即可。筛法解决的问题主要是筛选出一类具体特殊性质的数。范围通常是 [1,𝑛]。素数:即其因数只有 1 和其本身的数。特殊的,1 不是素数。埃拉托斯特尼筛法,是一类十分简单,并且好理解的筛法。最经典的问题就是筛选。

2025-03-25 20:39:31 260

原创 蓝桥杯dfs真题

【代码】蓝桥杯dfs真题。

2025-03-22 20:58:28 181

原创 深度优先搜索(dfs)与广度优先搜索(bfs)

例如上图,我们需要从 3 个数字中选择 2 个,但是第一个选择了 3 ,那么后面已经没有能选择了数字了,则退出,更加一般化来说,就算后面的数字选上,也不能满足要求。这是一个极其抽象的概念:搜索状态是指在搜索过程中,问题的当前情况或配置,它包括了当前的所有信息,并且在后续的搜索过程中,算法会基于这些信息做出选择,进一步推进搜索。dfs是我们最常用的搜索算法,其利用函数的递归实现(手动维护函数栈太过复杂),其通项解法在与对状态的定义,并且形成一棵搜索树,然后我们对搜索树进行递归遍历,找到最优解。

2025-03-22 20:39:37 1064

原创 第十五届蓝桥杯省赛真题

按照惯例他们每个人都要与除自己以外的其他所有人进行一次握手 (且仅有一次)。但有 77 个人,这 77 人彼此之间没有进行握手 (但这 77 人与除这 77 人以外的所有人进行了握手)。对于一个大于 0 的浮点数 dd,可以用 RR 格式的整数来表示。一个整数如果按从低位到高位的顺序,奇数位 (个位、百位、万位 ⋯⋯ ) 上的数字是奇数,偶数位 (十位、千位、十万位 ⋯⋯ ) 上的数字是偶数,我们就称之为 “好数”。注意 AA 和 BB 握手的同时也意味着 BB 和 AA 握手了,所以算作是一次握手。

2025-03-13 20:50:13 678

原创 二分算法(超详细)

二分查找(Binary Search)是一种高效的搜索算法,用于在已排序的数组或列表中快速定位目标值。它的核心思想是每次排除一半的无效数据,大幅缩小搜索范围。

2025-03-13 19:32:55 837

原创 前缀和与差分

前缀和与差分算法在算法竞赛中是一个基础类算法,常用来解决一些区间询问类的问题,同时也存在一些扩展形式,例如异或和。

2025-03-11 21:04:40 280

原创 C++ STL vector容器用法详解

vector包含在头文件include<vector>中。

2025-03-04 21:32:09 224

原创 区间dp算法

区间dp:区间动态规划(Interval DP)是一种求解最优子结构问题的动态规划(DP)方法,主要用于处理需要在区间上做决策的优化问题。它通常应用于求解那些涉及到一个区间范围(如数组或字符串的某一部分)并要求找到最优划分或最优选择的问题。区间dp一般可以分为两种这里要注意的是问题的连续性。·一个大问题可以分成多个连续的小问题来处理·多个连续的小问题可合成一个大问题来处理可以看到这类题目我都可以按照这样的分析步骤来解。所以最重要地是能看出来题型确定题型做题就很快了。

2025-01-13 15:38:00 326

原创 基于XL6009S设计的DCDC升压电路

XL6009的功能介绍XL6009是一款专为升压 / 升降压设计的单片集成电路,可工作在DC5V到32V输入电压范围,它内置固定频率振荡器(400KHz)、基准稳压器(1.25V)和频率补偿电路。简化了电路设计。并可提供4A输出电流能力,具有低纹波,内置功率MOSFET,用于升压 / 升降压全集成方案,系统结构简单,系统成本低,设计方便灵活,可靠性高。XL6009采用内置输出过电流保护功能与EN脚逻辑电平关断功能。XL的引脚介绍VIN:输入电压引脚,接入供电电源的正极。

2024-11-12 20:57:14 2707

原创 DRC检测时经常遇到的问题

本人第一次遇到这样问题的时候反复去修改这根导线上连接的网络端口,结果反复出现我所输入的网络端口名称后面跟一个加号(本来是rnst结果变成rnst+)正确做法应该是点击蓝色字样跳转到对应的导线处修改网络名称而不是修改网络端口名称!

2024-09-10 19:45:41 1952 1

原创 bfs广度优先搜索

bfs(breadth-fist search)算法即广度优先算法,是一种图(或树)的搜索算法。他从图(树)的某一个节点开始遍历逐层的遍历图(或树)的节点,他的遍历规则是优先访问距离该节点最近的节点直到访问完毕。

2024-07-17 19:39:10 761

原创 c++ stl库中queue容器的用法介绍

queue是类似与数据结构中队列的一种存储结构其主要操作包括队列的初始化,销毁队列,出队入队一系列操作。需要注意的是要使用queue容器要包含头文件#include<queue>#include<queue> //包含queue容器的头文件。

2024-07-10 01:09:52 392

原创 远动会分数管理系统

根据运动会分数统计系统的问题分析与设计要求,我们将系统三个板块:信息统计板块,信息处理板块与信息查询板块。

2024-07-09 01:58:20 156

原创 链表的存储结构与基础算法

线性表的链式存储结构称为链表链表与顺序表的比较:在顺序表中,逻辑上相邻的元素对应的存储位置也相邻。但我们要进行“增删”操作时要移动大半个表,相当费时费力,但是利用链表我们只需要改动其指针域即可。在改动指针域时最重要的是保证链表的连续性。

2024-05-23 00:07:58 500 1

超详细基于stm32hal库的esp8266WiFi模块驱动程序(可直接移植)

超详细基于stm32hal库的esp8266WiFi模块驱动程序(可直接移植)

2025-08-12

(超详细)yolo11机器视觉模型环境配置(附带摄像头识别测试)

(超详细)yolo11机器视觉模型环境配置(附带摄像头识别测试)

2025-07-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除