自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一个人要像一支队伍

大海可以容纳百川,而队长则收藏各种旁门左道

  • 博客(223)
  • 资源 (1)
  • 收藏
  • 关注

原创 电磁场与电磁波——时变电磁场

2024-03-16 20:11:43 371 1

原创 电磁场与电磁波——恒定磁场

恒定磁场

2024-03-15 23:06:20 360

原创 峰值检测电路

当U1的+端比-端小时,U1输出负压,D1导通,U1变成跟随器;而D2截止,U2也变成跟随器,VOUT=VC,由于U1、U2都是跟随器,这里R3起到一个隔离的作用,允许两个运放环路的电位不同。当U1的+端比-端大时,V1=VIN,VC=V1-VD2,VOUT=VC。由于D1截止没有环路,同时,VOUT反馈回到U1的-端,类似一个大环路的跟随器。仿真时放电电阻R1不能省略,如果省略会导致C1没有放电回路,一上电就被运放的偏置电流充电,充上了,就无法放电。1、充电状态:D2导通,D1截止。

2024-02-26 22:14:14 478 2

原创 光隔离探头

光隔离探头的CMRR比高压差分探头要高很多,在一些共模电压较高的测量领域用的比较多,如:开关电源、逆变器等。但是市面上介绍光隔离探头的方案比较少,这里简要说明一下我的个人想法。

2024-02-05 18:46:14 423

原创 运算放大器总结

THS4032的压摆率为100V/us,这个参数是运放输出电压的最高变化率,就是deltaV / deltaT,可以用压摆率换成上升时间,而上升时间又和带宽有关系,即:BW = 0.35 / Tr。比如上图的高边采样,使用R1采集电源输出的电流,显然R3和R4的电压都接近于+15V,对于运放来说,共模输入电压约为+15V,即该电路不能正常工作。由它的内部结构可以知道,它会工作在增益比较大的情况,这就意味着,输入的差模信号趋向于0。我这里建议的是小信号看带宽增益积(一般是100mVpp),大信号看压摆率。

2023-09-02 12:58:09 419

原创 Altium Designer二次开发

虽然Altium Designer还支持其它脚本,但是Altium Designer是使用Delphi开发的,所以对Delphi支持最好(例子最多),所以这里只介绍Delphi脚本开发。Script Form和Script Unit的文件名后缀都一样,但是其功能不一样,Form在左下角出现两个选项卡,Code就是脚本,Form就是图形界面。Altium Designer二次开发就在该软件原有的基础上,自己写代码给它添加新功能,如:一键生成Gerber,计算铺铜面积,PCB走线的寄生参数和延时等等。

2023-06-12 23:09:55 2325 3

原创 史密斯圆图

在射频、微波中,常常使用史密斯圆图来做阻抗匹配。在不涉及复杂的数学推导,仍能把圆图用起来。

2023-02-19 12:41:14 2726

原创 电磁场与电磁波——恒定电场

恒定电场

2023-02-12 17:33:28 326

原创 电磁场与电磁波——静电场

静电场

2023-02-12 16:55:06 288

原创 电磁场与电磁波——矢量分析

矢量分析

2023-02-12 15:03:18 183

原创 FIR滤波器——Matlab实现

先进入filterDesigner,老版本的是fdatool。滤波器参数设置如下图所示。Specify Order设置为15,实际阶数为16阶。滤波器参数为:等纹波滤波器,低通,采样率8kHz,通带频率为1kHz,阻带频率为3kHz。点击Design Filter,即生成滤波器的幅频特性曲线。量化参数设置如下图所示。 生成c头文件 从该头文件件中,复制出滤波器的系数出来。Matlab代码如下:运行结果如下: 滤波器中1.768kHz时,为-3dB点,而在上图时域中可以看出,输出信号的幅值下降到0.70

2022-06-14 17:18:26 11030

原创 Cordic算法

Cordic算法可以利用简单的移位和加减来计算复杂的三角函数、双曲函数、对数、指数等。Cordic算法核心思想有两点,通过已知的角度来逼近输入的角度(用移位来代替tanθ),已知角度的cosθ经过多次积累相乘趋于常数。具体原理如下。根据坐标旋转公式x2=x1cosθ-y1sinθy2=x1sinθ+y1cosθ提取出cosθx2=cosθ(x1-y1tanθ)y2=cosθ(y1+x1tanθ)上式为一次旋转,那么通过已知的角度,来逼近输入的角度,就需要多次旋转,也就是该公式要迭代多次。经过多次迭代后,co

2022-06-08 15:54:46 3140 2

原创 自适应滤波器——LMS算法

最速下降算法原理:均方误差梯度∇(n)难以计算,所以直接用e2(n)来代替均方误差E[e2(n)],得到均方误差梯度估计∇ ̃(n)

2022-06-06 17:50:04 2197 3

原创 补偿器参数计算

为了方便设计补偿器,用matlab代码自动计算参数。一、Type II型二、Type III型

2022-06-02 17:45:07 2308

原创 LDO扩流

一、LDO简介LDO的内部原理如下图所示:较为常用的LDO有7805,AMS1117等。这些LDO相当于稳压源,最大电流一般在3A以下,由于工艺的问题,两片LDO不能做成完全一致,这就导致了并联时,有一片LDO有输出,而另一片没有输出,所以这些LDO不能直接并联起来,实现扩流。如果只换调整管,那么所有的热量都集中在这个管子上,不利于散热。这就需要对该拓扑进行改进。二、LDO扩流LT3080的内部原理如下图所示:可以看出来LT3080和一般的LDO最大区别在于运放的反馈

2022-04-29 17:15:42 2366 2

原创 安规距离总结

安规距离有电气间隙和爬电距离,在IEC60950标准中有详细说明。一、电气间隙电气间隙为高压时,可以隔着空气击穿的最小距离,如:雷击。二、爬电距离爬电距离为高压时,可以沿着PCB表面击穿的最小距离,如:使用高压电灼烧木头。爬电距离的具体参数值可以参考下图。三、PCB板的最小隔离间距四、污染等级污染等级用来确定电气间隙或爬电距离的微观环境。GB14048.1中将污染等级分为四个等级,分别为:污染等级1——无污染或仅有干燥的非导电性污染。污染...

2022-04-24 22:21:51 7289

原创 UML总结

UML由3个要素构成:UML的基本构造块、支配这些构造块如何放置在一起的规则、运用与整个语言的一些公共机制。UML的词汇包含3种构造块:事物、关系、图。事物UML中有4种事物:结构事物、行为事物、分组事物、注释事物。结构事物包括类、接口、协作、用例、主动类、构件、制品、结点。行为事物包括交互、状态机、活动。分组事物主要有包。注释事物主要有注解。关系UML中有4种关系:依赖、关联、泛化、实现。图类图类图展现了一组对象、接口、协作和它们之间的关系。

2022-04-19 23:33:41 949

原创 软件工程总结

一、软件工程概述计算机软件计算机软件分为十类:系统软件、应用软件、工程/科学软件、嵌入式软件、产品线软件、Web应用、人工智能软件、开放计算、网络资源、开源软件。软件工程基本原理7条基本原理:用分阶段的生命周期计划严格管理、坚持进行阶段评审、实现严格的产品控制、采用现代程序设计技术、结果应能清楚地审查、开发小组的人员应少而精、承认不断改进软件工程实践的必要性。软件生存周期软件生存周期包括可行性分析与项目开发计划、需求分析、设计(概要设计和详细设计)、编码、测试、维护。

2022-04-10 13:43:06 4287

原创 数据库总结

一、数据模型基本概念数据模型三要素ER模型数据模型关系模型二、关系代数基本概念基本关系代数运算扩展的关系代数运算

2022-03-27 18:05:45 2298

原创 操作系统总结

一、进程管理1.1 基本概念进程由程序、数据、进程控制块(PCB)组成。1.2 进程状态三态模型五态模型1.3 进程间通信1.4 管程1.5 进程调度1.6 死锁1.7 线程二、存储管理2.1 基本概念2.2 存储管理方案2.3 分页存储2.4 分段存储2.5 段页式存储2.6 虚拟存储三、设备管理3.1 概述3.2 IO

2022-03-14 08:42:35 987

原创 Makefile

一、前言在linux下一般使用Makefile来完成编译,而Makefile相当于脚本,它可以调用gcc、clang等编译器。但是Makefile有一套它自己的规则,而且与bash不太一样,以下介绍该规则。二、伪目标现在有以下main.c#include "stdio.h"void main() { printf("hello makefile\r\n");}对其编写的Makefile如下all: gcc -o hello main.c clean: rm -rf

2022-02-17 23:27:25 759

原创 控制系统Matlab仿真——校正

一、时域指标clear;close all;clc;G=zpk([],[-1+3*i,-1-3*i],3);C=dcgain(G) %稳态值[y,t]=step(G);%阶跃响应plot(t,y)grid[Y,k]=max(y);%求最大值timetopeak=t(k) %峰值时间percentovershoot=100*(Y-C)/C %超调量n=1;while(y(n)<C) n=n+1;endrisetime=t(n) %上升时间i=length(t);whi

2022-02-09 12:26:33 6724 1

原创 控制系统Matlab仿真——根轨迹

一、负反馈根轨迹clear;close all;clc;num=[1,5];den=conv([1,1],conv([1,3],[1,12]));sys = tf(num,den);rlocus(sys)sgrid二、正反馈根轨迹clear;close all;clc;num=[1,2];den=conv([0,1,3],[1,2,2]);sys=tf(num,den);rlocus(-sys)axis([-15,5,-10,10])三、参数根轨迹.

2022-02-09 11:53:44 3961

原创 控制系统Matlab仿真——数学模型

一、拉氏变换如果用微分方程描述系统模型,求解会变得困难。而把微分方程转换为拉氏变换后,再求解则变得相对容易。求的拉氏变换clear;close all;clc;syms t s; %定义符号D = t^2*exp(-t); %表达式MS = laplace(D,t,s); %拉氏变换pretty(MS) %按数学的习惯显示公式二、传递函数模型clear;close all;clc;num=[1 4 8]; %分子多项式den=[1 11 11 10]; %分母多项式

2022-02-08 20:28:59 3230

原创 ESP32 Secure Boot和Flash加密

ESP32的代码是存在外部Flash中,如果不加密,很容易被窃取代码。ESP32的secure boot和flash加密是两个功能,但是要配合一起使用,其加密效果才好。一、初次加密。这里只写可重复烧写的加密方式,其加密步骤如下:1、进入menuconfig配置secure boot和flash加密。make menuconfig这里Secure bootloader mode选择Reflashable。配置后要与下图完全一致。2、生成私钥,即pem文件。pyth.

2022-01-21 17:15:57 7020 5

原创 PCB线宽与电流的关系

画PCB时常常需要计算多大的线走多大的电流,其中涉及到几个公式,这里用Matlab来算。代码如下:close all;clear;clc;mm2mil = 39.37; % 1mm = 39.37milL = 2000; % 单位milW = 50; % 单位mil% L = 50.8 * mm2mil; % 单位mm% W = 1.27 * mm2mil; % 单位mmThick = 1; % 单位OzTemp = 70; % 铜的温度,单位摄氏度I = 2; %电流,单

2021-12-16 22:58:21 1768 1

原创 基本电路的零极点分析

一、电阻时域,拉氏变换二、电容时域,拉氏变换三、电感时域,拉氏变换四、RLC串联时域,拉氏变换五、积分放大拉氏变换,六、比例-积分拉氏变换,七、积分加电阻拉氏变换,八、微分放大拉氏变换,...

2021-12-08 23:02:45 1772

原创 四线开尔文

四线开尔文接线方式,如上图所示。R为被测器件,Rl为引线电阻,U为电压表,最右侧的为恒流源。先用恒流源给R和两个Rl施加电流,由于Rl较小,而且又是串到回路中,所以最圈的回路中,电流恒定,所以R两端电压固定。看内圈的回路,用电压表测量R和两个Rl间的电压。由于电压表的输入阻抗非常大,而Rl非常小,所以两个Rl可以忽略不计,其测量出来的电压,为R两端电压。但是电压表的接线要尽量靠近R两端,可以减小引线电阻的影响。另外,在测量较小的R时,需要较大的电流,这会导致R发热...

2021-10-27 23:07:54 5715

原创 数字电路实用总结

一、数字逻辑。1.1 进制。二进制主要用于机器的内部运算,十六进制主要用于程序编写,十进制则主要用于结果的显示。1.2 二进制补码。如果是正数,则补码=原码。如果是负数,则补码=反码+1。补码可以将减法转为加法。时钟就能很好的解释补码,如下图,要加多少个小时都不会超出12小时,因为超出的部分会溢出而舍弃掉;而要减去若干个小时,可以使用补码将其转为加法。这样的好处是,在硬件电路上,只要实现补码的加法器,即可完成加法和减法,减少硬件上的开销。1.3 常用的编码。1.3..

2021-08-17 22:13:49 2830 1

原创 线性代数实用总结

一、前言。线性代数主要讲述了两个东西。1、点和向量的描述。2、点和向量在不同的基上的表示。二、行列式。行列式最实用的还是求解方程组。1、行列式的计算。2、用行列式解方程组(克拉默法则)。三、矩阵。在数字图像处理中,图像能直观地反映为矩阵,以RGB色彩空间来说,左图可分成三个矩阵,分别对应红、绿、蓝中的颜色值。...

2021-08-04 22:24:37 1339

原创 设计模式——状态模式

使用QT新建Widget工程。widget.h如下:#ifndef WIDGET_H#define WIDGET_H#include <QWidget>#include <QDebug>class Context;class State {public: virtual void doAction(Context* context)=0;public: virtual void toString()=0;public: virtual ~State()

2021-07-28 22:45:24 214

原创 设计模式——单例模式

使用QT新建控制台工程。main.cpp如下:#include <QCoreApplication>#include <QDebug>class Singleton { private: Singleton(); private: static Singleton* m_singleton; public: static Singleton* getInstance();};Singleton* Singleton::m_singleto

2021-07-27 23:20:41 115

原创 设计模式——DAO模式

使用QT,新建QWidget工程。widget.h如下:#ifndef WIDGET_H#define WIDGET_H#include <QWidget>#include <QList>#include <QDebug>namespace Ui {class Widget;}class Student {private: QString m_name;public: QString getName(); voi

2021-07-22 23:13:37 384 1

原创 设计模式——MVC模式

使用QT,新建Qml(qt quick)工程。main.qml如下:import QtQuick 2.12import QtQuick.Window 2.12import QtQuick.Controls 2.5Window { visible: true width: 300 height: 300 title: qsTr("Hello World") ListModel { // Model id : listModel

2021-07-20 22:47:28 293 2

原创 设计模式——策略模式

使用QT,新建QWidget工程。widget.h如下:#ifndef WIDGET_H#define WIDGET_H#include <QWidget>#include <QDebug>namespace Ui {class Widget;}class TaxStrategy {public: virtual double Calculate(QVariantMap var) = 0; virtual ~TaxStrategy();

2021-07-20 22:33:54 165

原创 设计模式——抽象工厂

使用QT,新建QWidget工程。widget.h如下:#ifndef WIDGET_H#define WIDGET_H#include <QWidget>#include <QDebug>namespace Ui {class Widget;}class DbConnectInterface { // 抽象类};class DbCommandInterface {};class DbDataReaderInterface {};cla

2021-07-19 23:07:13 134

原创 设计模式——工厂方法

使用QT,新建QWidget工程。widget.h如下:#ifndef WIDGET_H#define WIDGET_H#include <QWidget>#include <QDebug>namespace Ui {class Widget;}class SplitterInterface { // 抽象类public: virtual void split()=0; virtual ~SplitterInterface();};

2021-07-14 23:44:08 143 2

原创 设计模式——观察者模式

新建QWidget工程。widget.h如下:#ifndef WIDGET_H#define WIDGET_H#include <QWidget>#include <QDebug>namespace Ui {class Widget;}class ProgressInterface {public: virtual void DoProgress(int value)=0; virtual ~ProgressInterface();}

2021-07-14 00:16:43 119

原创 设计模式——模板方法

未使用设计模式时,代码如下:#include <QCoreApplication>//程序库开发人员class Library{public: void Step1(){}};//应用程序开发人员class Application{public: void Step2(){}};int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); Library lib

2021-07-08 23:03:03 119

原创 色彩理论基础

一、色彩理论。1.1 色彩原理。1.1.1 光与色。当光线进入三棱镜后,光线会被分离为红、橙、黄、绿、青、蓝、紫,所以自然光是七色光的混合,这种现象称为光的分解或者光谱。红色的波长最长,紫色的波长最短。1.2 色彩三要素。1.2.1 色相。色相是色彩的相貌,以波长划分,波长相同则色相相同。如果把光谱的6种色带首尾相连,可以得到色相环。在6种基本色相中插入中间色,可以得到十二色相环。再进一步插入中间色,可以得到二十四色相环。1.2.2 饱和度。饱和度是指色彩的纯

2021-06-30 23:28:18 4338

空空如也

空空如也

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

TA关注的人

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