- 博客(148)
- 收藏
- 关注
原创 【dnw驱动数字签名】解决Win10安装USB驱动时,"INF不包含数字签名信息"
解决64位Win7 系统DNW无法识别USB驱动:https://jingyan.baidu.com/article/eae07827b35dac1fed54855c.html1、【win10更新dnw驱动遇到问题描述】首先从“此电脑”右键->管理->打开“设备管理器”,有两个设备驱动没安装好,先选择其中一个进行更新。这里采取是备份,在下面的界面中,选择“浏览计算机以查...
2019-02-05 15:43:02
19115
3
原创 【数字信号处理】Matlab做fft时点数N怎么选取
一、FFT点数N(也就是离散时间信号的记录长度):要根据所要求的的频率分辨率F来决定。频率分辨率F:能够用FFT算法分析得到的最靠近的两个信号频率之间的间隔。N和F的关系:N>=Fs/F, Fs为采样频率。由于FFT一般要求N是2的整数幂,所以最后还要把N扩大为最接近2的整数幂。二、参考网页如何决定要使用多少点来做fft:https://zhidao.baidu.com/ques...
2018-11-09 11:21:48
42166
原创 C语言基础知识:函数指针&指针函数(定义格式、作用及用法说明)
版权声明:本文为博主原创文章,未经博主允许不得转载。https://mp.csdn.net/postedit/83150266一、函数指针的实质(还是指针变量)1、函数指针定义格式:类型名 (*函数名)(函数参数列表);int (*pfun)(int, int);2、函数指针的定义、赋值、调用void func1(void) //定义一个函数,以方便下面定义函...
2018-10-18 18:22:34
40805
4
原创 C语言基础知识:a a[0] &a &a[0]
一、解析为什么p = a;或者p = &a[0]时类型匹配,p = &a;类型不匹配?int *p;int a[10];P = a; //a做右值表示数组首元素的首地址,【a做右值等同于&a[0];】;类型匹配,左右两边都是int *型p = &a; //类型不匹配。原因:p是int * (int类型的指针),而&a是int (*)[10...
2018-10-18 17:10:54
14599
原创 【数字信号处理】两连续信号在时域的叠加、卷积、相乘、尺度变换后的信号(在频域的)最低抽样频率
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://mp.csdn.net/postedit/83055409假设:频率较高的信号所对应的频率fm1(比如3KHz),频率较低的信号所对应的频率fm2(比如2KHz),最低抽样频率fs叠加:频率较高的信号所对应频率fm1的2倍,即fs=2fm1卷积:频率较低的信号所对应频率fm2的2倍,即fs=2fm2相乘:两个...
2018-10-15 11:29:05
54508
13
原创 【数字信号处理】线性卷积的理解
前言卷积是信号处理中非常重要的运算。在信号与系统课程中要学习线性卷积,在数字信号处理课程中要学习循环卷积。今天我们来简单谈谈线性卷积相关的知识。为循环卷积的学习打下良好基础。线性卷积的定义及运算对于线性时不变(LTI)的离散时间系统,任意信号x(n)通过系统h(n)得到的输出y(n)即为x(n)和h(n)的线性卷积。定义:计算线性卷积需要四步:反转、平移、相乘、相加。已知x...
2018-10-13 20:03:25
26553
3
原创 FPGA芯片选型(FPGA初学者的选择)
版权声明:本文为博主原创文章,未经博主允许不得转载。https://mp.csdn.net/postedit/82926464前言对于一个FPGA的初学者,如何选择一个公司的某一个系列的产品作为学习的基础呢?这是一个问题,但并不是最重要的问题。初学者在学习FPGA的时候,要解决的首要的问题是对数字电路技术基础知识的掌握,然后就是对硬件描述语言的掌握(veirlog或者VHDL)。至于FPG...
2018-10-02 17:45:18
62279
4
原创 C语言基础知识:C语言函数调用怎么返回两个值
在C语言中,函数只能返回一个值,要返回两个值,可以改换思路,通过其它方式做到。1 建立数组,返回指针。在要返回的两个值类型相同时,可以用创建数组的方式,将要返回的值存在数组中,并返回数组首地址,这样就可以实现返回两个值的效果。需要注意的是,要返回数组首地址,那么返回的值不可以是局部变量,有如下几种是可以的:a) 使用静态局部变量存储,并返回地址;b) 使用全局变量存储,返回地址;c...
2018-09-22 11:45:29
41623
原创 【数字信号处理】fft幅频特性和相频特性理解
1. 对于实数信号(要结合这份代码理解):A(ω)是输出信号的幅值与输入信号幅值之比,称为幅频特性。Φ(ω)是输出信号的相角与输入信号的相角之差,称为相频特性(相移角度随频率变化的特性叫相频特性)在‘信号与系统’理论里边,有一个重要的概念,叫做“系统的频率响应函数”,它的物理意义是:当系统的输入是一个幅值不变而频率变化的正弦波时,系统输出的幅值和相位随输入频率变化的关系,也就是系统的幅...
2018-09-04 16:52:43
60411
5
原创 STM32F446新建工程模板遇到的5个问题总结
版权声明:本文为博主原创文章,未经博主允许不得转载。https://mp.csdn.net/postedit/80430081一、宏定义:STM32F446xx,USE_STDPERIPH_DRIVER宏定义的说明:为什么需要两个宏定义USE_STDPERIPH_DRIVER :这个说明你在使用标准外设驱动,有自己的外设配置文件,即stm32f10x_conf.h,详细可查看stm...
2018-09-04 16:51:36
4233
2
原创 【无标题】
Spotter Pro(SSF200)通过 MQTT 物模型协议直连天盾云平台,不经 C2 网关中转:[NexusGateway_开发方案.md(初版设计)、天盾上云协议 §4.8 Spotter Pro 场景。
2026-06-13 14:32:42
776
原创 RTSP→AI→引导→selectRectTrack 延迟分析计划
描述清楚。理解的路径见 §1。后续若做延迟对照,宜澄清"主码流与 AI 输入是否同一路、同档位",以及"手动框坐标相对哪一时刻的画面";便于与官方"飞出框"说法做时间对齐论证。新增澄清点测试前要先核实 PTZ Web 主码流叠加框的真实视频源→ 已由现场确认为AGX 本地编码推流(§10.3 选项 B)。即"主码流叠加滞后"主因路径 = AI 渲染 + ai SHM 写读 + ptz_service 编码 + 推流 + 客户端解码。文档与 [E2E] 日志里到处用等缩写。
2026-05-07 15:55:52
212
原创 【AI Coding】Cursor Rules 和 Skill
Rules(规则) 是 Cursor IDE 中一种 让 AI 更懂你项目上下文和编码规范 的机制。你可以把它理解为:给 AI 助手的“操作手册”或“领域知识库”。✅ 目标:让 AI 在生成、修改或解释代码时,自动遵守你的项目约定、安全规范、硬件限制等。
2026-03-06 10:13:23
1955
原创 ROS2 零基础到实战 完整学习指南(保姆级,循序渐进)
ROS2 的学习是循序渐进、层层递进的,绝对不要贪多求快,按这个节奏学,稳扎稳打,你能扎实掌握 ROS2 的核心能力:plaintext第1-2周:基础概念 + 核心命令 + 小乌龟仿真 → 吃透所有基础操作,能熟练使用命令行;第3-5周:Python编程(话题+服务+launch) → 能独立编写、编译、运行自己的Python节点;第6周:C++编程入门 → 掌握C++的基础编程范式,能看懂和修改C++代码;第7周:核心工具链(rqt、rviz2、gazebo) → 能可视化调试自己的代码;
2026-01-12 14:21:58
6864
原创 Ubuntu 22.04 安装 ROS2 官方完整版命令(最全适配,推荐 Humble)
这是官方,支持到 2027 年,稳定、资料最全、兼容性最好,完美匹配 Ubuntu22.04;你的 Jetson Orin(aarch64 架构)和普通 x86_64 台式机 / 虚拟机,。
2026-01-10 16:12:43
1601
1
原创 tig 的untracked changes和unstaged changes含义?
Git 没见过的新文件,仅在本地工作区;:Git 认识的文件但本次修改没暂存,仅在本地工作区;两者都未提交到本地仓库,更不可能出现在 GitLab 线上库;只有完成git add(暂存)→git commit(本地提交)→git push(推远程),修改才会同步到 GitLab 线上库。
2025-12-11 13:54:25
1008
原创 GitLab 子模块(子仓)更新到主仓的完整流程
让子模块本身拉取最新代码;把主仓对这个子模块的「新版本绑定」提交并推送到远程。只要完成这两步,后续无论是自己还是同事执行,都会拉取子模块的最新代码,不会再出现「更新后代码回滚」的问题。
2025-12-11 11:32:25
1234
原创 git add 和git commit之后怎么撤销?
在本地执行git add和git commit后未推送到远程(git push),撤销操作完全安全(不影响远程develop。
2025-12-11 11:20:46
491
原创 ros2常用命令
本文总结了ROS2的17个常用命令,分为高频必会、调试排错和冷门高级三类。高频命令包括话题/节点/服务管理(list/info/echo/pub)、参数读写、运行节点和启动文件;调试命令包含系统诊断、数据记录和接口查看;高级命令涉及包管理、生命周期组件等。文章提供了典型使用场景的一行命令示例,并附有速记口诀:"list info echo hz,pub param run launch;record play doctor,interface看定义"。这些命令覆盖了ROS2日常开发90%
2025-10-18 14:22:42
439
原创 Docker常用命令
这些命令覆盖了 Docker 的日常基本操作,根据实际需求可以组合使用不同的选项来完成更复杂的任务。:删除容器,强制删除运行中的容器加。:进入运行中的容器执行命令,如。显示所有容器(包括停止的):列出正在运行的容器,--name 容器名。
2025-09-10 15:56:55
369
原创 RTSP推流客户端-ffmpeg和live555对比
检查错误码:av_strerror(errnum, errbuf, sizeof(errbuf))建议从FFmpeg命令行开始,5分钟内即可完成推流测试,逐步深入API集成可大幅降低开发风险。设置日志回调:av_log_set_callback(my_log_callback)必须处理:SDP生成、RTP打包、TCP/UDP传输选择、RTCP同步。:无论是命令行还是API集成,开发效率提升10倍以上。:先用FFmpeg命令行测试链路,再决定是否编码集成。:除非有特殊协议定制需求,否则会陷入底层协议细节。
2025-07-19 17:40:00
607
原创 MediaMTX配置文件理解
这份配置文件是 MediaMTX(一款开源流媒体服务器)的核心配置,用于定义服务器的全局行为、协议支持、路径规则等。
2025-07-16 10:57:18
2031
原创 VSCode 中使用 Google Test(GTest)框架测试
如果你确实需要使用“API Test Master”插件来进行 C/C++ 测试,建议你参考该插件的官方文档或联系插件开发者获取相关支持。:确保 VSCode 已正确配置 C++ 编译环境,如安装 C/C++ 扩展等。:在终端中,使用如下命令编译测试代码。假设 GTest 库安装在。:在 Ubuntu 系统中,可以通过命令。安装 GTest 库。对于其他系统,可前往。:运行编译生成的可执行文件。,即可看到测试结果。
2025-07-01 11:22:07
1076
原创 Docker容器创建与使用
你可以使用 docker run、docker ps、docker stop、docker rm 等命令来管理单个容器,也可以使用 docker-compose 来管理多个容器的复杂场景。Docker 容器是轻量级的、独立的运行环境,可以同时运行多个容器而不会相互干扰。联合文件系统(Union File System):Docker 使用联合文件系统(如 OverlayFS)来构建容器的文件系统,每个容器都有自己的文件系统层,从而实现文件系统的隔离。这意味着一个容器中的进程无法直接访问另一个容器的资源。
2025-07-01 11:19:02
927
原创 ARM裸机全集学习笔记【链接来源:向阳而生,逆风翻盘】
1.4.ARM裸机第四部分-GPIO和LED_三星安装dnw-CSDN博客1.5.ARM裸机第五部分-SDRAM和重定位relocate_ddr使用前是否需要清0-CSDN博客1.6.ARM裸机第六部分-S5PV210的时钟系统-CSDN博客1.7.ARM裸机第七部分-串口通信详解-CSDN博客1.8.ARM裸机第八部分-按键和CPU的中断系统_裸机中断指定触发方式-CSDN博客1.9.ARM裸机第九部分-定时器、看门狗和RTC_裸机开发时 对于长时间延时情况下 看门狗的处理-CSDN博客1.10.ARM裸
2025-04-09 15:27:16
249
原创 【Linux】内核驱动学习笔记(二)
(1)裸机中如何操作LCD(2)OS下操作LCD的难点(3)framebuffer帧缓冲(简称fb)是linux内核中虚拟出的一个设备(4)framebuffer向应用层提供一个的(5)从驱动来看,,而且创建了一个类/sys/class/graphics(1)设备文件 /dev/fb0(2)获取设备信息 #include <linux/fb.h>(3)mmap做映射(4)填充framebuffer。
2025-04-02 20:27:00
1369
原创 【Linux】内核驱动学习笔记(一)
本文是学习linux驱动开发的笔记。主要内容包括:Linux内核驱动入门学习,三类驱动的分类概念,重点学习了字符设备驱动基础和高级篇章,驱动框架入门,Linux驱动模型。最后的misc类设备与蜂鸣器驱动主要引用了博客链接。
2025-04-02 17:56:28
1654
原创 【Linux】用户向硬件寄存器写入值过程理解
硬件检测到寄存器值变化后,根据寄存器的功能执行操作(如启动模块、配置时钟等)。将物理地址直接映射到用户空间,允许直接访问寄存器,效率最高但需谨慎操作。将硬件寄存器的物理地址映射到内核虚拟地址空间,允许内核直接访问。内核提供的原子操作函数,用于安全地读写寄存器(处理内存屏障等)。将数据写入设备文件。内核驱动负责处理用户空间的请求,并最终将数据写入硬件寄存器。是最灵活的方式,适用于需要直接控制硬件寄存器的场景。将物理地址映射到用户空间,允许用户直接访问寄存器。将设备寄存器的物理地址映射到用户空间的虚拟地址。
2025-04-01 17:39:02
1107
原创 【linux】malloc函数申请过程理解
如果请求的内存大小在内存池的空闲块中可以满足,glibc 会直接返回一个空闲块的地址,无需触发系统调用。会尝试从用户空间的堆内存池中分配内存,而不是直接与内核交互。这是为了减少系统调用的开销。)向内核申请一块较大的内存区域(称为“堆”),然后自行管理这块内存的分配和释放。系统调用返回后,glibc 获得新的内存区域,并将其纳入内存池管理。时,实际调用的是 C 标准库(如 glibc)提供的函数。新的虚拟地址空间被标记为可用,但物理内存可能尚未分配(按需分配)。:内核可能延迟物理内存的分配,直到实际访问。
2025-04-01 17:10:11
1350
原创 【Linux】B站黑马程序视频学习笔记(一)
学习Linux可以借助虚拟机(其使用到的CPU、内存、硬盘都是软件模拟出来的)。2、在虚拟机中安装发行版Linux系统,比如ubuntu或者CentOs。注意:下图程序指向内核的箭头用的是“调用”,内核指向硬件用的是“调度”。1、在VMware软件中新建虚拟机。
2025-03-29 11:36:18
359
原创 【Linux】重定向输出到文件
ls /eettcc/aabbcc > f 2>> f #错误信息追加。标准输出和标准错误都输出到文件。重定向标准输出到指定文件。重定向标准错误到指定文件。,错误信息输出到文件。
2025-03-07 10:17:28
588
原创 【Matlab】特征值分解eig和奇异值分解svd
前言:当A是方阵时,使用eig特征值分解和实验svd奇异值分解,有什么异同?(1)特征值分解:函数eig格式:[V,D] = eig(A)%计算A的特征值对角阵D和特征向量V,使AV=VD成立。注意:特征值分解时,使用eig,矩阵A必须是方阵。A = [0 1;1 1];[V,D] = eig(A)V = -0.8507 0.5257 0.5257 0.8507D = -0.6180 0 0 ...
2021-01-09 14:46:48
5795
1
原创 【linux】台式机连接网线ubuntu1404无法上网解决方法
原创文章:https://mp.csdn.net/postedit?not_checkout=1一、问题描述一切从ubuntu中没有安装pthread相关的man手册说起,问题是这样的:man 3 pthread_mutex_init时提示找不到函数,说明我没有安装pthread相关的man手册。安装方法:1、虚拟机上网;2、sudo apt-get install manpage...
2019-11-08 19:06:13
1376
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅