- 博客(328)
- 资源 (2)
- 收藏
- 关注
原创 17.UI界面刷新频率
板卡使用AD7606以200k的形式采集,板卡多少时间采集一次数据,并转发上位机,上位机接收到数据可以实时显示到界面吗?如果来不及显示,那么什么策略?什么频率的数据就不建议在屏幕上实时刷新了?
2026-02-12 14:59:17
433
原创 3.初识运算放大器
这时候,我们需要建立一个包含 Avo、ri、ro 的等效电路,然后列出多个节点电压方程,解一个多元线性方程组,才能得到输出电压的表达式。这个表达式会非常长,而且包含了运放自身参数的影响,分析起来极其困难。理想运放的特性(无穷大开环增益、无穷大输入电阻、零输出电阻等),能让电路分析变得极其简单,并且能实现最完美的性能。实际运放的设计,就是为了让这些参数尽可能接近理想值。不是人为控制输入电压吗?放大器的设计目标,就是理想运算放大器。实际电路中,反相输入端和同相输入端,”,大大降低了设计和分析的门槛。
2026-02-11 14:21:35
1427
原创 16.基于RT-Thread与兆易创新GD32F527的工业级网络-CAN透传网关设计与实现
https://gitee.com/wujunc/gd32-f527_rtthread
2026-02-10 16:24:06
343
原创 6.C嘎嘎STL vector
在实际项目开发中,无论是 C++ 还是 C 语言,都不建议自行手写数据结构实现 —— 现成的成熟库 / 标准容器往往更可靠。而单片机开发中对数据结构的使用本就偏少,核心原因在于:但凡涉及稍复杂的动态数据结构,几乎都离不开malloc这类动态内存分配操作;但单片机场景下,动态内存申请的风险极高(易引发内存碎片、堆溢出、稳定性问题等),因此行业内的通用原则是 “能规避就规避”。在实际项目开发中,优先选用 C++ 标准模板库(STL)的容器而非手写数据结构,既高效又能规避手写实现的漏洞。
2026-02-10 14:25:45
537
原创 5.C++顺序表
顺序表是一种线性的数据结构,其中数据元素按照特定的顺序依次存储在连续的内存空间中。它由一系列元素组成,每个元素都与唯一的索引(或者叫下标)相关联,索引从0开始递增。元素可以是整数,可以是浮点数,可以是任意类型,包括结构体或者对象,等等。
2026-02-10 11:23:21
300
原创 4.什么是算法
如果以计算机的方式去实现算法,衡量算法的优略,就是用之前的空间复杂度和时间复杂度来衡量。这也是高校教师和工程师互相不对付的原因,高校教师侧重理论最优,工程师侧重工程最优。通常情况下,在无 bug 的前提下,实现同一功能,算法就是实现一个功能不同的方法。之间做权衡与取舍,做出最合理的设计与优化。工程师的核心价值,正是在。(耗时更短、占用内存更小),算法越优。同一道题,有不同的解法。每个解法,就是一种算法。
2026-02-10 09:51:19
160
原创 11.AD快捷键 (优化版)
将当前选择(一个或多个选定的设计对象)移动到当前文档工作区的右侧,以1个单元格网格单元的增量为单位。在当前文档工作区中向下移动当前所选设计(一个或多个选定的设计对象),并以10个单元网格为单位递增。在当前文档工作区中向上移动当前选择(一个或多个选定的设计对象),以1个单元格网格单元的增量为单位。将当前选择(一个或多个选定的设计对象)移动到当前文档工作区的右侧,以10个网格单元的增量为单位。在当前文档工作区中向上移动当前所选设计(一个或多个选定的设计对象),增量为10个捕捉网格单位。
2026-02-09 10:45:21
521
原创 28.FPGA实验报告模板(串口为例)
实现常用模块:串口模块,可以用来打印调试信息,可以通过上位机输入指令。芯片型号: xczu4ev-slv784-2-i前缀 xc含义:代表 Xilinx Company,是 Xilinx 公司产品的通用前缀。系列标识 z含义:代表 Zynq UltraScale+ MPSoC 系列,这类芯片是集成了 ARM 多核处理器的异构计算平台。子系列标识 u含义:代表 UltraScale+ 架构,是 Xilinx 新一代的 FPGA 架构,在性能、功耗和资源密度上有显著提升。器件等级 4。
2026-02-08 23:16:35
699
原创 16.this指针
this就是成员函数里的“当前对象标识”,告诉函数“你现在操作的是这个对象”,类比生活里的“我”;不用手动创建this,编译器自动加,核心作用是区分重名的成员变量和参数;只有非静态成员函数里能用到this,静态函数里没有。
2026-02-08 23:14:41
119
原创 15.虚函数
虚函数(Virtual Function)是C++中加了virtual让父类的指针/引用调用这个函数时,能自动执行子类重写后的版本,而不是父类自己的版本。父类(动物)定义虚函数叫()virtual void 叫() = 0;子类(猫)重写叫()void 叫() override { 喵~ }子类(狗)重写叫()void 叫() override { 汪~ }用父类指针动物 *p = 猫→ 调用p->叫()→ 输出“喵~”;用父类指针动物 *p = 狗→ 调用p->叫()→ 输出“汪~”;如果没有。
2026-02-07 23:34:52
336
原创 14.多态
这是多态的“核心骨架”,用纯虚函数(=0)强制子类实现统一接口,保证所有通信设备都有sendData()方法。// 通信设备基类(抽象类)Q_OBJECTpublic:// 构造函数(给父类传参)// 虚析构函数:必须加!保证子类析构时能正确调用自己的析构qDebug() << "CommDevice 基类析构";// 核心:虚函数(统一接口),子类必须重写// virtual 关键字是多态的关键!// 纯虚函数,无实现多态的核心:QT/C++中通过virtual。
2026-02-07 23:12:26
473
原创 13.继承
/ 抽象通信基类(纯虚类),定义所有通信方式的通用接口Q_OBJECTpublic:// 虚析构,保证子类析构正常// 纯虚函数:强制子类实现具体逻辑// 打开通信通道// 关闭通信通道// 发送原始数据signals:// 通用信号:所有通信方式都需要对外通知的事件// 连接成功// 断开连接// 收到原始数据// 错误信息抽象基类定接口定义通用通信接口,强制子类实现统一的核心方法,保证扩展性。具体子类做实现SerialCommTcpComm。
2026-02-07 21:38:09
758
原创 12.封装
封装的核心是:将数据(成员变量)和操作数据的方法(成员函数)绑定在一起,并隐藏内部实现细节,只对外暴露必要的接口。在QT中,我们通常用private隐藏数据,用public提供访问接口,用实现QT特有的通信机制。封装的核心:QT中通过private隐藏数据和内部逻辑,public提供可控的访问接口,避免外部直接操作数据导致的错误。QT特色封装:结合机制,既能隐藏内部实现,又能对外暴露“状态变化”的信号,符合QT的编程范式。封装的好处。
2026-02-07 20:55:53
154
原创 11.VS Studio调试总结
开始调试:快捷键:F5开始执行,只执行,不命中断点。例如,在程序开始前,设置一个断点,然后按F5,就会停止到断点处。按F11,或者点击图标,就是按照过程执行,就是直接不进入这一句里的函数,执行过这一行。如下图所示,箭头所指,就是即将要执行这一行,可以看到i的值当前为0。如果是逐语句执行:例如执行到qDebug函数前面点击逐语句执行,或者快捷键F11.那么会进入到qDebug函数里:实际调试中,F10(执行过去) F11(执行进去)配合使用。再加上一些AI工具,效率飙升。
2026-02-04 11:39:43
961
原创 27.串口
串口(通常指 UART,通用异步收发传输器)是一种,也是嵌入式系统中最常用的通信方式之一,它通过一根线发送数据、另一根线接收数据,实现设备间的全双工通信。
2026-02-02 16:43:46
282
原创 26.计数器
FPGA 设计与处理器程序设计核心差异在于:处理器是,而 FPGA 以晶振产生的周期性时钟为核心驱动,通过匹配不同时钟周期完成计数,再依据计数值执行各类动作,最终实现特定功能;计数器是 FPGA 时序设计中最基础、最核心的模块,其设计核心围绕。
2026-02-02 10:25:21
432
原创 25.verilog语法之always
module是一个模块的语法,或者说是一个电路模块的语法,然后FPGA代码中见的最多的应该就是alwsys语句了。到处都是alwsys,那么alwayls怎么意思呢?关键字always就是一直的意思,就是。@是探测变化的意思,就是小括号内的信号只要安装规定的动作变化就能被探测到。小括号的内容就是该模块运行的条件,关键字posedge是取上升沿的意思,posedge clk就是clk这个信号的上升沿是触发条件;
2026-02-02 10:10:31
537
原创 16.QT工程后缀名解释
一般一个QT上位机工程目录如下图所示:后缀名分别代表的含义:这是 Qt 的 qmake 工具在构建项目时生成的缓存文件。它会保存项目配置、依赖关系等临时信息,用于加速后续的构建过程。一般不需要手动修改或提交到版本控制。这是 Qt 项目的核心工程文件,全称是 Project File。它用 qmake 语法编写,定义了项目的源文件、头文件、依赖模块、编译选项等。qmake 会根据这个文件生成对应平台的构建脚本(如 Makefile、VS 工程文件)。这是 Qt Creator 生成的用户配置文件。它保存了你的
2026-01-29 09:09:40
534
原创 23.FPGA设计流程
进行PCB设计前需要先明确PCB的功能和接口。设计FPGA项目和设计PCB类似,只是设计对象是一块芯片的内部功能结构。本质上讲,FPGA的设计,就是IC的设计。在动手进行代码输入前必须明确IC的功能和对外接口。
2026-01-28 10:29:49
53
原创 10.AD中放置镂空字体
Font Type-TrueType:选择可以显示中文的格式。Inverted:镂空字体设置选项,需要选中。text标签处的输入框,设置文字内容。或者菜单中选择:放置---》字符串。
2026-01-28 10:07:07
36
原创 2.AD/PADS/ALLEGRO 之间互转
1.在allegro中将PCB文件导出为16.3以下2.将转换完成的BRD文件拖入到AD中,或者使用导入功能导入。
2026-01-28 09:54:56
83
原创 1.AD/PADS/ORCAD之间原理图互转
1.用pads logic 打开一份需要转换的原理图,执行文件---》导出,导出一份ASCII编码格式的TXT文档。2.保存,输出版本选择PADS Logic 2005进行输出。3.打开AD,执行File--->Import Wizard,选择PADS ASCII Design and library files导入选项。4.点击下一步,将之前的TXT文件选中。5.点击所有下一步,直到完成。转换后,可能有异常。
2026-01-28 09:45:41
84
原创 14.要不要自己做核心板?
在公司无专职高速硬件工程师、无高速测试设备、无配套测试工程师的前提下,选择高速核心板 + 外围电路的方案是性价比最高的策略,核心思路是“复用成熟高速设计,聚焦自身业务外围,规避高速设计风险”。方案验证阶段,没必要在高风险处试错。
2026-01-26 10:28:27
1135
原创 22.STM32H743与FPGA多核异构
上篇说到,STM32H743与FPGA的组合,可以完美补全各自的缺点,使性能直接上一个梯度。我用思维导图做了总结,这些例程也是STM32H743和FPGA组合后,最常用的功能。然后,看了开发板的例程,很详细,顺序编排的很合理。
2026-01-23 13:54:44
167
原创 13.嘉立创天空星开发板硬件原理分析
嵌入式本来就很卷了,嘉立创的硬创社,有种要掀桌子的感觉。为何这么说,因为就本次分析的开发板,其实已经基本满足工程中使用的标准了。特殊的工业、医疗、汽车,顶多是在这基础上增加防护电路,或者器件使用工业或汽车级别即可。电源部分分析:保险丝、防反接、大地处理、EMI滤波、电源采样、过压保护、这个电路在平常的项目中,可以直接用。本次分析的开发板的资源图:很全,很强大。这个案件、继电器图,项目中可以直接用。
2026-01-23 09:15:40
434
原创 15.按钮控件槽函数的生成方法
首先需要在窗口类的头文件里,声明你要用来响应按钮点击的槽函数,槽函数需要放在。用Qt Creator的UI设计器拖拽按钮,如果不用UI设计器,纯手写代码创建按钮,那么。如果回调逻辑复杂,建议还是单独声明槽函数,代码结构更清晰。这三部分代码,以下是完整的实现流程(以最常见的。当你仅在UI设计器拖拽了按钮。这种方式更简洁,适合逻辑简单的场景;但未通过“转到槽”绑定信号槽时。然后通过界面绑定信号槽。on_对象名_信号名。
2026-01-21 13:54:51
751
原创 14.QT打包发布
3.将release文件夹下的.exe文件拷贝到一个文件夹中。或者在release文件夹下也可以。1.切换到release版本。4.打开QT打包命令行。5.命令行中输入路径。
2026-01-21 13:46:43
42
原创 20.赛灵思FPGA型号总结
对于多核异构的方案,如果低成本,使用ZYNQ7000系列,高性能,使用MPSOC系列。如果需要做软件无线电,则使用RFSoc。Zynq UltraScale+ MPSoC 的系统级性能功耗比相对 Zynq-7000 SoC 系列提升高达 5 倍。赛灵思的FPGA分两种,一种是集成处理器的,一种未集成。
2026-01-20 15:37:57
115
原创 13.QLabel新手入门
功能核心方法关键说明显示纯文本setText("文本")setNum(数字)setNum自动把数字转文本,更方便显示富文本/HTMLsetText("HTML代码")支持字体、颜色、图片、超链接显示图片setPixmap(QPixmap("路径"))配合缩放图片显示动画setMovie(QMovie("动图路径"))需调用播放文本对齐常用:居中、左对齐、右对齐自动换行英文需要空格才能换行,中文自动换超链接或关联信号手动处理基础优先:先掌握setTextsetPixmap。
2026-01-19 22:55:18
264
原创 15.ACS725 电流检测
S725芯片,这颗芯片是汽车级的,工作温度在-40到150度,很多电流采集的场合可以使用。ACS725提供了一种小封装,低成本的表贴封装,而且目前在国内也有可以替换的一些IC出现,后期低成本替换也是可以实现的。
2026-01-17 22:58:46
45
原创 0.传感器及常用模块总结
特殊模块:手势模块(GY9960)、RFID(MFRC-522)、指纹模块(AS608)、PCF8574(IO 扩展)、升压 / 降压(见电源模块)、测速(见测距 / 测速)、电机驱动(L298N 等)、GSM 模块(SIM800C,支持短信 / 通话 / GPRS)、GPRS 模块(SIM900A)、NB-IoT 模块(BC26,低功耗物联网)蓝牙通信:JYD-31、BT-05(HC-05)、HC-06(从机)、HC-08(BLE 蓝牙 4.0)、ESP32-BLE(双模)
2026-01-17 22:50:34
485
原创 16.电子工程师地图
AD/DA-------从k到G的采样率,有些系统要做同步,复杂。滤波-------数字信号处理/FFT等算法。上学时不明白,现在才知道下面这幅图就是电子工程师的全部了。追求信号处理---DSP,不过现在FPGA似乎更多了。计算机上可以运行上位机程序,例如C#,QT等。追求显示,计算,算力-----RK3588。放大------模拟电路。追求灵活,性价比,控制------单片机。追求并行,性能高----FPGA。
2026-01-16 22:45:02
228
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅