自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python学习(一)——面对对象的三大特性

小感受:学习Python不需要从头开始,应该以项目为载体去学,有具体问题具体学习。多敲敲代码!面对对象的三大特性包括:封装、继承和多态(1)封装:函数的定义类的定义,包含了属性和方法(2)继承:将一些类公共的属性和方法提取出来放到一个专门的父类中去,其他的子类继承父类后就可以直接继承这个父类的属性和方法。通过继承可以简化大量的代码。(3)多态:更多的体现在解决一些特殊问题时候的技巧下面直接看一个最简单的继承:如何继承父类的属性呢?继承父类的构造方法有两种,下面仍然以例子的形式写出来。

2025-11-24 21:53:11 46

原创 信号分析(二)——采样率fs和采样点数N对FFT的影响

观察不同采样率对于信号频谱的影响。可以看出虽然根据采样定理,采样频率在最高频率的2倍就不会频谱混叠,但是设置为40的时候,根本无法观察到合适的频谱,信号和幅度谱都是失真的,在100时(最高频率的5倍)处信号和频谱还原度比较高。根据香农采样定理,采样频率必须大于原模拟信号频谱中的最高频率的两倍。否则就会造成“混叠现象”。实际上,一般将采样率。的3~5倍进行采样和处理,可以从下面的这个小案例中直观感受到采样率对于频谱的影响。

2025-11-23 21:06:08 142

原创 Matlab(一)——绘图

使用hold on指令后,此后添加的一系列plot曲线将叠加在前一个图上。FontWeight可以设置字体的粗细,可以选择’bold’或者’Normal’。和LineWidth的作用差不多,但是对象不同,一个是针对标题/坐标轴/图例的字体,一个是针对图中的曲线粗细。在Matlab中,title、xlabel、ylabel、zlabel、textbox和。在Matlab中,可以使用LineWidth来设置图像的粗细,,会按默认颜色顺序自动分配:蓝色、红色、黄色。(1)绘制普通的图:plot(x,y);

2025-11-23 20:38:09 452

原创 信号分析(一)——FFT输出结果是什么?

表示该频率分量的信号强度。] ,不存在直接绘制单边谱或者双边谱的语句。单边谱是双边谱的二倍,因此对于双边谱来说,|时,求和结果不为零,实际上此时。] 是一个复数,表示信号在频率。由于 DFT 的正交性,只有当。] 的虚部代表包含的sin分量,] 的实部代表包含的cos分量。Matlab中算出来的就是。

2025-11-23 17:09:13 119

原创 三极管BJT(一)——放大原理

Bipolar意思是两个,Junction是PN结,意味着一个三极管有两个PN结,Transistor是晶体管的统称,因此三极管的翻译是双结型晶体管。三极管有开关作用,三极管处于截止状态的时候,c和e不导通,相当于断开,三极管处于饱和状态,c和e导通。对于NPN型晶体管,发射结(PN结)正偏,扩散运动主导,自由电子从发射区向基区扩散,基区里的空穴向发射区扩散,这样必然形成两个电流,一个电流是由自由电子形成的。相关,如果宽度和浓度确定,复合的比例也是确定的,过来200个复合4个,过来100个复合2个。

2025-11-20 16:56:33 512

原创 深度学习——IDE之Jupyter

退出再从终端中打开就可以了,打开就是非常干净的界面了,但是我这里有一个小问题,我之前生成了jupyter notebook和jupyter lab的配置文件,如果我只修改jupyter notebook中的地址,从终端打开还是默认位置,我需要把jupyter lab的配置文件中的地址也修改了才可以,jupyter lab中的地址修改和上面的操作相同。可以看见如果我现在在notebook中新建一个文件,在修改的地址的文件夹中看见这个新生成的文件,说明修改成功。修改文件存放的路径可以去配置文件中修改。

2025-10-27 13:47:03 497

原创 深度学习——Logistic回归中的梯度下降法

成本函数是在水平轴w和b上的曲面,曲面的高度代表J(w,b)在某一点的值,我们需要找到w和b使得对应的成本函数最小,可以看到成本函数J(w,b)是一个凸函数,像一个碗。让我们来看一些函数,你希望得到最小化的J(w),函数可能如下图,为了方便,先忽略b,用一维曲线代替多维,梯度下降法的步骤是:重复执行以下的更新操作,我们更新w的值,用:=来表示更新w。当前J(w)的梯度下降法,只有参数w,在logistic回归算法中,成本函数是一个含有w和b的函数,此时,梯度下降执行以下两个式子更新w和b。

2025-10-26 22:27:50 1134

原创 STM32——按钮实验

使用一枚按钮去切换板载led的亮灭状态,每按下一次按钮,板载led的亮灭状态切换一次。

2025-10-26 20:28:18 1039

原创 深度学习(四)——logistic回归

对于这个例子,向量x的总长度是12288,用nx=12288来表示输入的特征向量x的维度,有时候为了简洁,也会用n来表述输入向量的维度。logistic回归是一个用于二分分类的算法(binary classification),下图是一个二分分类问题的例子,假如你有一张图片作为输入,输出识别此图的标签,如果是猫猫,输出1,如果不是猫猫,输出0。x是一个nx维的向量,已知logistic回归的参数是w,也是一个nx维向量,b是一个实数,所以已知输入x,和参数w、b,如何计算输出预测​​​​​​​。

2025-10-23 21:06:25 540

原创 深度学习(二)——新建工程、配置环境

创建完成后,自动出现pycharm界面,观察导航栏的左侧,有RNN和外部库,这里RNN就是我们项目创建的位置,右击鼠标,新建python文件可以新建.py,就是写代码的位置。(2)配置解释器选择自定义环境,选择Conda环境(好奇下面几种环境的区别,留个坑),Conda路径如果之前创建过Conda环境就会自动出现,如果没有,需要手动选择,选择conda.bat文件,也就是如下路径的文件。发现即使是创建新的虚拟的conda环境,conda路径都是相同的,这并不意外,在1.3小节中我们提到,

2025-10-22 21:58:33 473

原创 深度学习(一)——基础知识:Python语言/解释器/环境/编辑器

正如上面所说,为了更加高效的编写代码,出现了集成度很高的代码编辑器,比如Pycharm、Vscode等。再进一步了解这些编辑器之前,我们先看看IDE的概念,IDLE是开发 python 程序的基本IDE(集成开发环境),具备基本的IDE的功能。(IDE,Integrated Development Environment)用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。,打开就是黑框框可以编写代码, 但是一直在这里编写代码,效率就会很低,于是出现了集成度很高的。

2025-10-22 16:06:40 780

原创 COMSOL(一)——自定义材料参数

插值和外推根据自己的需求去选择,可以把函数图像绘制出来,如果不满足需求再修改,输入函数和变元的单位,这里介电常数的单位为1,变元是频率,所以为Hz,这里变元默认都是t,不用修改。在方程试图中我们可以找到系统变量频率的表达式freq,这样的话在扫频中频率是会随着扫频的变化而变化,千万不要在自定义变量中自定义频率,这样的话这个频率是不会变的,结果还看不出来。在输出属性中,输入函数和变量,函数就是在函数名称中定义的,比如permitivity。定义介电常数随着频率的变化而变化。点击局部表,插入函数的点,

2025-10-20 20:08:19 652 2

原创 Altium Designer学习——DRC

首先,第一步是检查连线是否完整,所以在DRC之前可以看看板子信息报告,点击报告-板子信息,在板子信息中点击routing information导出,可以看见连线的完整性。设计规则检查,就是DRC相当重要!可以检查出没连接的网络、短路的网络等等,但是注意,修改“当....停止”为最大。这里的意思是当检查到这个数量的错误时,就停止检查,如果设置得太小,可能就会因为运行不到检查布线处就停止检查了。,这样就检查不出那个网络是否布线完整。建议修改到足够的,耗点点时间而已,默认是500,可以改为500000。

2025-10-16 11:02:30 318

原创 器件学习(一)——继电器

下图是常用的继电器的驱动电路,电阻R1是限制驱动电流,R2是IO口悬空的时候可以将三极管的基极下拉到地,给三极管的基极一个稳定的电平,防止受到干扰,二极管是为了给电感线圈提供续流通路,防止感应电动势击穿Q1。右侧的驱动电路,增加了电阻R4和电容C1,是因为继电器的吸合电流大于保持电流,也就是说在继电器动作的瞬间需要的电流比较大,但是继电器动作之后就不需要那么大的电流了,为了降低功耗,加了电阻R4和电容C1,工作原理是:当三极管Q1断开的时候电压VCC通过电阻R4给电容C1充电,可以充到VCC。

2025-10-11 20:45:03 327

原创 STM32——GPIO的输出模式

下图为引脚的内部电路结构,左边芯片内部,右边芯片外部,横线+方框代表引脚,有八种不同的工作模式有四种输出模式,包括:推挽输出、开漏输出、推挽复用输出和开漏复用输出。同样有四种输入模式。先说说推挽和开漏,他有两个MOS管,上面是P-MOS管,下面是N-MOS管。PMOS漏极接高电压VDD,NMOS的源极接低电压VSS,同一时间只有一个MOS管导通,上面的P-MOS管导通,下面的N-MOS管截止,输出的是高电平,上面的P-MOS管截止,下面的N-MOS管导通,输出的是低电平,这就是推挽输出模式。

2025-10-10 10:37:31 327

原创 运算放大器(一)——输入偏置电流

但是,通常情况下,两个 CMOS 输入偏置电流和斩波器瞬态不相等,因此平衡其阻抗可能无法大幅改善偏置电流产生的失调电压误差,实际上可能会使误差更糟。请注意,当反相和同相输入的偏置电流沿相同方向流动时,反相和同相输入产生的失调电压具有相反极性。) 可以建模为反相和同相输入端子上的直流电流源,运算放大器的偏置电流模型如下图所示。可以分别确定每个偏置电流源的失调漂移,然后对结果进行合并。通过使用幅度除以运算放大器闭环增益,可让此失调电压以输入为基准。产生的以输入为基准的失调电压等于偏置电流乘以。

2025-10-09 22:18:54 219

原创 探头小总结

或者对于高频小信号,最好的是直接用一个BNC的同轴线引出来,但是需要注意,需要在电路板上绘制BNC的接口。并且即使多个探头的信号共地,每个探头也需要接地,不能只用一个鳄鱼夹接地,会有很大的干扰。无源探头又不隔离,在示波器上接一个无源探头,使用万用表的二极管模式去测量,发现无源探头的鳄鱼夹和示波器。因此,如果使用多个无源探头,就需要确保多个探头测试的信号是共地的。无源探头的带宽很高,比较适合测小信号,无源探头的衰减有。,在探头的前端可以去拨挡位。但是现在很多示波器标配。示波器的多个探头在示波器内部是共地的。

2025-10-09 20:17:17 212

原创 三极管BJT(二)——如何理解空穴电流和电子电流

下面是关键部分,少部分共价键中的电子,由于受到了电场力,也可能挣脱共价键的约束,从而向左移动,这个时候原地就留下了空穴。总结:空穴电流是价电子的移动,电子电流是自由电子的移动!另一方面,由于空穴的存在,价电子将按照一定的方向依次填补空穴,也就是说空穴定向移动,形成空穴电流。由于自由电子和空穴所带的电荷极性不同,所以运动方向相反,所以本征半导体中的电流是。,晶体中的共价键具有很强的结合力,因此在常温下,仅有极少数的。区中,共价键中的电子挣脱共价键的约束,进入了。区中共价键中的电子挣脱共价键的约束,进入了。

2025-10-08 17:50:59 396

原创 百度网盘加速小秘籍

电脑有加速小秘籍,(1)在设置里打开优化速率,下载完成后关闭。(2)玩弱智小游戏,领取免费加速卷。

2025-09-25 21:54:19 227

原创 电路板焊接技巧

如果是焊贴片元器件,可以用锡膏配合热风枪,也可以手动焊接,手动焊接的技巧是:现在两个焊盘中的一个加上熔融的锡,先固定一个引脚,然后一手用镊子夹住元件,一手用电烙铁融化焊盘上的锡,先去电烙铁,再去镊子,不然电烙铁移除的时候锡还没有凝固,还有吸力,容易把元器件带走,固定一个引脚之后,再去焊另一个引脚。如果是焊接芯片,引脚数量比较密集,容易短路,也不用担心,可以焊好之后再涂上阻焊剂,再用电烙铁焊一下,锡会自动回到焊盘的位置。

2025-09-24 10:22:33 480

原创 STM32——时钟系统(六)

再看大树,时钟信号从树根产生,经过树干的加工和运算之后,得到节点:SYSCLK,它的最高频率是72MHz,是system clock的缩写,代表系统时钟,是一个承上启下的关键节点,SYSCLK有三种来源,可以来自于芯片内部的高速RC振荡器,也就是HIS,可以来自于芯片外部的高速晶振,也就是HIE,还可以来自于锁相环PLL,如何选择根据实际情况决定,对于最小系统板来说,外接了两颗晶振,上面的晶振是一颗频率为8MHz的晶振,对应了HSE,下面这颗黑色的晶振是一颗频率为32.768kHz的晶振,对应了LSE。

2025-09-23 16:39:48 504

原创 Altium Designer学习——导出BOM表(三)

绘制完PCB和原理图之后,点击报告-Bill of materials,打开器件清单,点击导出BOM表(Bill of materials),保存到同一目录下,可以根据清单去立创购买。看见下图,第二行,0603的电容有45个,但是把不同value值的电容放在一行了,这样十分不方便后续的购买,可以把全部列中的value拖到组合列中,这样不同comment、footprint和value的器件都在不同行了。为了方便购买,列好购物清单是有必要的,所以在前面的原理图就需要做好标记,这里可以记录一下我的标记习惯。

2025-09-20 22:20:10 343

原创 STM32—CubeMX导出代码

当在CubeMX中配置完成后需要导出代码到Keil中,发现在CubeMX中虽然配置了GPIO和TIM1,但是导出的Keil代码中在Application/User/Core中却没有GPIO/TIM相关的代码。(1)Code Generator勾选第一个选项;

2025-09-17 20:23:47 203

原创 STM32—GPIO的输入模式

这是一块电压表,我们可以使用电压表去测量电阻两端的电压,电压表的内阻必须非常大,否则它就会影响被测电路的状态,这样测得的电压就不准了,当IO引脚工作在输入模式下的时候,它的作用就是去测量外部输入信号的电压,相当于一块电压表,因此它的内阻也应该是无穷大,无穷大的电阻相当于开路,所以我们把这个位置断开,如果我们不接上拉/下拉电阻,这个时候IO引脚完全悬空了,STM32的GPIO输入也有四种模式:输入上拉、输入下拉、输入浮空和模拟模式,最后一种模式是用来输入模拟信号,暂时用不到。

2025-09-15 20:18:36 417

原创 MOSFET驱动-驱动电流

因此可以根据峰值电流对驱动芯片进行选型,如 IXYS 公司的 IXD614SI,其最大输出直流电流为 4 A,满足驱动电流要求。驱动芯片手册通常会标注其能承受的拉电流和灌电流的最大能力。选择驱动的一个重要参数是驱动 MOS的最大峰值电流。所以,综上,在选择驱动芯片的时候,最重要的一点就是。为用于关断 MOS的负栅极电压(V);为用于开通 MOS的正栅极电压(V),为驱动器必须提供的峰值电流(A);,即驱动芯片要有足够的“驱动能力”。式中,0.7 为峰值电流的校正因数;的推荐外部栅极导通、关断电阻均为。

2025-09-15 17:07:47 310

原创 STM32-PWM的死区时间

死区时间如何设置,在CubeMX中,死区时间设置框中前三个需要enable,死区时间设置在0~255之间,实际上是2的8次方。这里并不是直接设置时间,而是设置DTG寄存器的八位值。中的值不同,决定了死区时间的计算方法也不同,DTG寄存器的设置方法很简单,直接通过CubeMX的Deadtime配置就可以了。DTG寄存器为TIM1和TIM8断路和死区寄存器(TIMx_BDTR)的低八位,高八位暂时不考虑,如果DTG = 128,转换为2进制就是。当DTG<128时,死区时间等于。,如果DTG<128,则。

2025-09-11 22:42:55 397

原创 STM32-如何在更改CubeMX的配置后保留keil中的用户代码

修改CubeMX配置,然后点击generate code,点击close,切换回Keil的工程文件,会主动询问你是否要修改代码,点击同意即可。(3)一定要编译并保存;尤其注意while循环,要写在Users begin3和Users End3中,不要写到上一行了。(2)一定要写在Users begin和Users End中间;

2025-09-11 17:25:11 315

原创 STM32-安装开发环境与测试

HAL库成为STM32开发的主流,可以用于HAL库开发的工具链有三种,(1)CubeIDE,(2)CubeMX+Keil5,(3)STM32 VS插件+VSCode。(5)点击open project,打开keil5,如果直接点击编译,会报错,是因为没有下载ARMCC编译器,把ARMCC解压到core文件夹中,点击folder/extensions。点击左边GPIO,点击PC13,初始电压配置为低电压,初始模式配置为开漏输出,最大输出速度配置为Low;(2)点击SYS-Debug,配置调试接口,选择SW。

2025-09-09 11:20:20 332

原创 STM32最小系统板程序下载

SWDIO/SWIO(Serial Wire Data Input/Output):串行数据输入输出线,用于双向数据传输,这里注意SWIO和SWDIO是一样的,下载器标注SWDIO,板子标注SWIO。STLINK/JLINK调试器跟板子通过SWD口连接后,就能实现程序下载,单步调试,全速调试,查看或修改单片机内部的变量,内存等。下面这个STLINK买来有10个引脚(只需要连接2、4、6、8引脚),只支持SWD连接,使用杜邦线连接,可能会插不紧,需要用力插入!的两线调试接口,由ARM公司提出,

2025-09-08 22:04:12 313

原创 分贝的定义和计算

例如,1W=1000mW,对应30dBm;再进一步回顾截止频率的概念,低通、高通、带通、带阻等滤波器都应用了截止频率的概念。当保持输入信号的幅度不变,dB表示两个具有相同单位的同一种物理量的相对关系,公式如下。最初在电话工程领域,用于定义于表示两个功率比。的定义,这里频率特性一般聊的是系统的电流/电压增益,因此对数幅频特性曲线中。也就是我们常说的带宽的定义:增益为-3dB时的频率点。是功率的单位,可以表示功率的大小或信号的强弱。,经过某电路后,输出信号功率。,那么这个电路的增益为。

2025-08-31 20:14:32 598 1

原创 Altium Designer学习——放置3D元件(二)

点击下载,这里注意放置3D元件需要导入step格式,如果下载为sldprt格式,导入可能会出现报错:“Cannot load 3D model from file!】,点击刚刚保存的step文件即可,然后切换3维模式就可以查看了,有时候切换3维可能看不见,在2维模式下缩小全局,有可能紫色方框跑到别的地方去了。在AD中,放置3D元件是有必要的,有时候连接件的方向、pcb封装的错误都可以靠3D元件检查出来。还有一些小tips,在网站中搜索3D封装时,可以直接搜封装的名字,而不是搜索元件名,比如SOT89-3。

2025-08-04 15:49:30 558

原创 Altium Designer(一)——绘制PCB的边框

可以从solidworks里重新保存为step格式,但是注意,一般保存为step格式后,颜色会丢失,如何解决这个问题呢。标注,mechanical1一般绘制pcb的边框和定位孔,定位孔可以选择M3/M4的螺柱,M3/M4的含义是螺柱的直径在3/4mm,因此,选择M3螺柱时,定位孔可以打1.7mm,选择M4螺柱时,定位孔可以打2.2mm。比如:M3*6+5,一般意义为:螺纹直径为3mm,六角柱体长度6mm,螺杆长度5mm,六角柱体内螺纹和螺杆外螺纹一致,可以拧上。

2025-06-26 15:55:50 355

原创 matlab buck仿真(一)

很好,电容电流满足电容的安秒平衡特性,滤去了高频分量,电阻流过电感电流的直流分量,但我之前一直没想明白,如果电容电流的三角波,电容电感应该是二次,即正弦波,这样求导才能是一次函数,但电阻电流又是直流,那这不自相矛盾,后面仿真发现,电阻电流是直流分量加上正弦,并不是纯直流,这个脉动很小。这里是一个基础的开环buck,参数设置如图,我想监测:电感电流、电容电流、电容电压、电阻电压。在视图-布局可以更改布局。纯小白,课程提到的题目,打算仿真一下buck的峰值电流闭环控制,表达不是很精确,就是记录一下;

2024-09-29 22:20:10 550

原创 Q3D学习——参数化扫描【adding a parametric sweep from a file】

虽然这时候你看见生成的report不尽人意,但是只需要点击export,在excel里看就是正常的。(1)变量数据集并非按照一定步长变化,是随机选取的,没有规律;(2)懒得手动输入(狗头)

2024-04-30 20:18:28 930

原创 Q3D学习——AC电感/DC电感

如果不勾选,这个扫描是不准确的,低频下如果仍然按照AC求解域的计算方法,扫出来对低频段电感有影响,曲线画出来就是不存在DC域这段,就会一直下降。因为对于过渡域和DC区域来说,步长划分太大了,AC域电感基本上不变,步长划分大一点没有问题,前面还是要细分。可以通过集肤深度的公式计算,也可以直接在Q3D中进行sweep的频率扫描,这个频率扫描目前我能想到的作用就是这个了。了解了一下,这里是将电感和感抗的含义弄混了,电感(电感随着频率的增加而降低,当增加到一定值后,基本不在变化,而电阻随着频率的平方根增加。

2024-04-24 11:34:47 3175 5

空空如也

空空如也

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

TA关注的人

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