- 博客(20)
- 收藏
- 关注
原创 STM32中灌电流和拉电流
定义:电流流入IO引脚(从外部电路流向芯片)场景:当IO口输出**低电平(0V)**时,外部电路的电流通过负载流入IO口示例LED阳极接VCC,阴极接IO口(IO低电平时LED亮)按钮一端接VCC,另一端接IO口(检测高电平输入)
2025-03-29 21:58:38
577
原创 四轴无人机测污染源的梯度上升算法
通过上述方法,STM32可实现高效的污染源自主追踪。实际效果取决于传感器精度和PID参数调优!以下是针对四轴无人机追踪污染气体浓度(使用MQ135传感器)的。梯度上升用于寻找函数最大值(即气体浓度最高点)。由于无人机无法直接获取周围浓度梯度,需通过。
2025-03-27 23:27:32
395
原创 STM32的延时函数
如果对延时精度要求不高,可以使用循环空转的方法。如果需要精确延时且不占用 CPU 资源,建议使用定时器或SysTick实现。SysTick 是最常用的延时实现方式,适合大多数 STM32 应用场景。
2025-03-07 23:34:19
526
原创 为什么C语言处理中断不用考虑保护现场和还原现场
在C语言中处理中断时,保护现场和还原现场的工作主要由硬件和编译器自动完成。程序员只需要关注中断服务程序的逻辑实现,而不需要手动管理寄存器的保存和恢复。这种机制大大简化了中断处理的编程复杂度,同时保证了系统的可靠性和效率。
2025-03-03 17:33:18
260
原创 haar级联分类器
(Haar Cascade Classifier)是一种基于机器学习的对象检测方法,主要用于检测图像或视频中的特定目标(如人脸、眼睛、车辆等)。它由 Paul Viola 和 Michael Jones 在 2001 年提出,因其高效性和实时性而被广泛应用于计算机视觉领域。
2025-03-01 14:34:48
629
原创 opencv(C++与python的区别)
尽管 OpenCV 的核心功能在 C++ 和 Python 中是相同的,但由于语言特性不同,两者在使用上存在一些区别。根据项目需求和开发者的熟悉程度,可以选择适合的语言。如果需要高性能,选择 C++;如果需要快速开发,选择 Python。OpenCV 是一个强大的计算机视觉库,支持多种编程语言,其中最常用的是。
2025-03-01 00:37:41
720
原创 opencv中的Mat类
是 OpenCV 中用于存储和操作图像、矩阵的核心类。它支持多维数组、自动内存管理、多种数据类型和通道数,是 OpenCV 编程的基础。无论是图像处理、矩阵运算还是机器学习,是 OpenCV 中最核心的类之一,用于存储和操作图像和矩阵数据。不仅仅用于存储数学上的矩阵,还可以表示图像、多维数组等。(矩阵),但 OpenCV 中的。OpenCV 中的数据类型通常以。都是不可或缺的工具。
2025-03-01 00:31:35
596
原创 图像膨胀、腐蚀
它们通常用于二值图像(黑白图像),但也可以扩展到灰度图像。这两种操作基于结构元素(核)对图像进行处理,常用于去噪、分割、连接物体边缘等任务。图像膨胀(Dilation)和腐蚀(Erosion)是。
2025-02-28 00:50:14
290
原创 GCC使用教程
可以看到,gcc的编译流程也和上节的说明一致,从上面可以看出,预编译,编译和汇编都是对单个文件的操作,在链接才有涉及多个文件操作的可能,gcc单指令也整合了单文件的编译命令,因此上述操作也可以简化为如下操作。上述基本包含的gcc的常用扩展,我们在实现Makefile语法时也是依赖上述扩展命令实现,另外在Makefile中一定要使用Tab进行命令的格式化,而不要使用空格,否则会因不识别而报错。当然,gcc也支持各种选项来支持各种扩展,如下所示。
2025-02-27 16:59:32
308
原创 SPI、I2C、CAN 、UART总线协议
对比总结选择建议新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入特性SPII2CCANUART通信方式同步同步异步异步通信方向全双工半双工半双工全双工引脚数2(TX, RX)速度高(几十 Mbps)
2025-02-22 19:31:52
905
原创 Markdown使用指南
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + S
2024-10-16 16:32:51
900
原创 RV1126中AI例程解析
包含的头文件stdio.h: 标准输入输出库,提供文件和标准输入输出功能。stdlib.h: 标准库,提供内存分配和其他功能。math.h: 数学库,提供数学函数(如exp和logstring.h: 字符串操作函数。sys/time.h: 提供获取系统时间的功能。"ssd.h": 假定是 SSD 模型相关的自定义头文件。常量定义和是存储箱体先验和标签名称的文件路径。MIN_SCORE和分别是最低置信度和非极大值抑制的阈值。全局变量: 存储类别标签。: 存储框的先验信息。获取当前时间。
2024-07-21 15:25:07
911
原创 QT实战---音乐播放器开发
用于处理用户界面的交互,确保用户界面上的按钮操作和音乐播放器状态的变化能够正确地触发对应的功能处理函数,从而实现音乐播放器的各项功能。设计直观易用的图形用户界面(GUI),包括播放控制按钮、进度条、播放列 表显示等。使用安全的编程实践,避免常见的安全漏洞(如缓冲区溢出、SQL注入等)。实现健全的错误处理机制,以应对各种异常情况(如文件损坏、网络中断等)。支持音量调节、播放模式选择(单曲循环、列表循环、随机播放)。播放、暂停、停止、下一首、上一首等基本控制功能。支持播放列表,用户可以添加、删除、排序曲目。
2024-07-15 19:53:50
1248
2
原创 python保留小数的方法
format()函数可以设置输出格式并保留指定的小数位数。通过在格式字符串中使用"{}"作为占位符,并指定小数位数,可以实现保留小数的效果。可以使用字符串的格式化方法来保留小数。通过在格式字符串中使用"%f"作为占位符,并指定小数位数,可以实现保留小数的效果。round()函数可以将一个数字四舍五入到指定的小数位数。例如,要保留2位小数,可以使用round(x, 2)。如果对于小数的精度要求更高,可以使用Python的decimal模块来进行精确计算并保留小数。
2024-06-18 21:30:13
1134
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人