Multisim是由美国国家仪器(NI)有限公司推出的以Windows为基础的仿真工具,适用于板级的模拟/数字电路板的设计工作。它包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。
Multisim可以辅助使用者完成从理论设计到电路仿真的一系列操作,其在电路设计以及实践教学中有着广泛的使用。
如图所示,这是Multisim的界面介绍,根据其功能可分为项目管理区、元件库栏、通用菜单栏、工具栏、以及仪器栏等多个功能模块区。
而我们在电路设计中,常常会使用到以下几个仪器:
示波器:
示波器是一种用途十分广泛的电子测量仪器。它能把肉眼看不见的电信号变换成看得见的图像,便于人们研究各种电现象的变化过程。
信号发生器
信号发生器用于产生被测电路所需特定参数的电测试信号,在生产实践和科技领域中有着广泛的应用。各种波形曲线均可以用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。
示波器常常被我们用来观察电压波形、特别是直流电压波形的变化,而信号发生器常常被用做特定交流信号发生电路的替代品,方便我们更快捷地设计与分析电路。
三极管是半导体基本元器件之一,是电子电路的核心元件。三极管是在一块半导体基片上制作两个相距很近的PN结,两个PN结把整块半导体分成三部分,中间部分是基区,两侧部分是发射区和集电区。其又可被分为NPN型和PNP型,分为c(集电极)、b(基极)、e(发射极),其主要功能为实现电流的放大,β= △Ic/△Ib。
三极管是电路设计中必不可少的元件之一。
另外,三极管并不会凭空提供能量,靠的是额外的电源供电、提供能量。
以NPN型为例:
Vc>Vb>0,Ve=0(GND)(ps:此处指的是电势)
根据原理图,Vbe>0可以看到在电场力的驱动下,电子由E极移动向B极,并且由于Vb
Vbe=Vc-IcRc= Vc-βIbRc
这里是H桥的简单设计原理与思路,在实际使用者常常使用下图的MOS管代替三极管。
其对电机的驱动方面有着广泛的运用。
现在市面上通用的电机驱动芯片如L298N等,多是内置了H桥。
运算放大器(简称“运放”)是具有很高放大倍数的电路单元。在实际电路中,通常结合反馈网络共同组成某种功能模块。它是一种带有特殊耦合电路及反馈的放大器。其输出信号可以是输入信号加、减或微分、积分等数学运算的结果。由于早期应用于模拟计算机中用以实现数学运算,因而得名“运算放大器”
下面以绘制LED发光电路为例介绍Multisim的电路图绘制:
这是LED发光电路的完成图
之后可以通过在元件库中手动找到所需元件,也可通过Multisim自带的元件查找功能。
手动添加元件操作步骤如下:
按照图示步骤首先放置VCC、GND、LED、和电阻
注意:一定要添加GND(地极)!!!
可以看到LED灯被点亮
选定元件之后,双击左键可以参看和更改元件属性:
将电阻改为3k:
可以看到灯未被点亮
仿真效果对比图如下:
经过简单的Multisim电路设计介绍之后就可以去绘制更为复杂且使用的仿真电路了:
图示的是一个十分简单的八路灯模块,其相对原始的LED灯点亮模块在难度上并没有太大提升,但可以方便熟悉Multisim电路绘制。
这是三极管直流放大电路的简单原理图,常常用在单片机电路设计中用于使用单片机I/O口驱动大电流元件
这是一个比较常见的三极管使用实例,通过三极管可以使得单片机通过I/O
口驱动蜂鸣器
这是H桥的原理电路图
当S1打到GND极,S2打到VCC极时,Q4与Q1导通,LED2灯亮,LED1灯灭
当S2打到GND极,S1打到VCC极时,Q3与Q2导通,LED1灯亮,LED2灯灭
这是实用性的H桥电路图
可以看到搭建一个实用性H桥电路仍旧是比较复杂的
基于L298N芯片,内置了H桥,可用于驱动电机
这是比较常见,也比较常用的L298N电机驱动模块,如果对使用环境没有太高需求的话,可以使用它来代替H桥电路。
可以通过已经集成了放大电路的芯片来控制蜂鸣器
点击仿真之后,会有一个LED灯闪烁的效果。
使用快捷键提升画图效率
注意设置元件封装
使用分割线和文字说明
PCB也要模块化布局
使用快捷键提升画图效率
T+A+A 批量重命名
P+G 快速铺铜
Shift+空格 更改线的种类
P+G 快速铺铜
P+R 快速铺铜
2:2D视图
3:3D视图
A:对齐方式的选择
T+G+M:铺铜管理器
左键长按选中+Space:器件旋转
左键长按选中+x:左右翻转
左键长按选中+y:上下翻转
放大、缩小:Ctrl+滚动鼠标滚轮
上下平移、左右平移:滚动鼠标滚轮、Shift+滚动鼠标滚轮
注意元件的位置,布局合理
注意线宽和布线
避免出现锐角和直角
注意设置元件封装
合理添加滴泪的和铺铜
封装,就是指把硅片上的电路管脚,用导线接引到外部接头处,以便与其它器件连接。封装形式是指安装半导体集成电路芯片用的外壳。还通过芯片上的接点连接到封装外壳的引脚上,这些引脚又可以与外部电路相连。
结构方面:TO->DIP->PLCC->QFP->BGA ->CSP;
材料方面:金属、陶瓷->陶瓷、塑料->塑料;
引脚形状:长引线直插->短引线或无引线贴装->球状凸点;
装配方式:通孔插装->表面组装->直接安装
更多封装知识:电子元件封装知识大全
原理图更偏向于理论上的电气连接,原理图库是实际元件的一种抽象表示,将其抽象为只有引脚的电路模型,我们只关注其电气特性,电路连接,它在电路中所起的功能,方便我们进行电路设计,类比于物理上的质点,具有物理属性,但大小可忽略。
就像我们在物理上会把电源抽象成电源符号一样。
PCB库中的元件更多的是与实际元件的封装有关,在电脑上模拟元件的大小、型号、样式,最终目的是为了安装元件,PCB库则是将原理图库中的元件与现实元件相对应,实质上对应的是一种元件的安装模型。对应的是实际元件布局。
原理图库到PCB库是一种理论向现实过渡的过程。
可以这么说,原理图对应的是现实电路板的理论电路图,理论上来说,这种电路可以正常工作。
PCB图对应的是实际电路板元件排布与走线,是一种布局图,反映了元件的实际连接关系。
它们的最终目的都是为了制作电路板,实现某种功能。
(1)将Scaling(缩放比例)窗口中的Scale Mode(缩放方式)更改为Scaled Print(按比例缩小的打印)
(2)将缩放比例改为1.0(这样才是我们所制作的电路板实际的大小哦~);然后我们将Color Set窗口选择为Mono,这样我们的电路板就会以实际大小的黑白图像显示在预览窗口了。
(3)调整组态:
右键并选择Configuration(配置),进入Configuration之后,我们可以看到所绘制的PCB各个不同层的情况,例如包括元器件、是否含有过孔、镜像对称等等;
我们在这里需要删除我们不需要的层并加上过孔。(强烈推荐大家将每个不同的按键都一个个按下去试试,理解会更深哦~)
我们选中Holes的小勾,然后选中我们不需要的层,单层板只保留Top Layer (以及Keep out Layer),然后右键选择Delete(删除)
完成界面,点击OK,这时候剩下来的图形就是我们实际需要转印到板子上的电路了~
第三步,腐蚀铜板
1).在塑料盒内放入铜板,倒入适量蚀刻粉
2).加入开水至淹没铜板
3).不断晃动盒子,加快腐蚀
4).降温之后,重新换水
5).重复上述操作,直至油墨以外的铜完全腐蚀消失
用水量:水刚好覆盖板子就行,在保证板子被浸满的前提下越少越好,保证溶液浓度;(转印之前对铜板的打磨程度在这个步骤的影响尤为巨大,如果铜板表面氧化层较厚,很可能有些部分需要很长很长时间的反应。)
加粉量:除了最开始加的,还可以在泡的过程中持续加,不用舍不得;
注意:在腐蚀铜板的过程中,铜板表面会因为反应覆盖上一层气泡阻碍反应的继续进行,要不停的摇动去除气泡;水温要高以加快反应(常温下几乎不反应),冷了就倒了,然后立马重新加水加粉,直到全部没有覆盖在油墨下的铜板完全消失时即可清洗并取出板子。
单片机(Single-Chip Microcomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;
相当于人类的大脑
RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;
数据储存器
ROM : 用以存放程序、一些原始数据和表格;
程序储存器
I/O口:四个8位并行I/O口,既可用作输入,也可用作输出;
内外交流的通道
一个全双工 UART(通用异步接收发送器)的串行 I/O 口,用于实现单片机之 间或单片机与微机之间的串行通信;
片内振荡器和时钟产生电路
电源引脚:
时钟引脚:
控制信号引脚RST,EA,ALE,PSEN:
I/O:
数字电路中只有两种电平:高和低
我们通过控制电平高低来实现对I/O口的控制
单片机电平定义为TTL电平:高+5V,低0V
计算机串口:高+12V,低-12V
所以单片机与计算机通讯时需要加电平转换芯片,或者转换器。
那我们又该如何通过我们熟悉的语言去进行单片机编程呢?
单片机编程和直接的计算机编程的一个突出区别就是对底层的操作,计算机编程时不需要关心计算机的寄存器如何配置,而单片机则需要通过配置寄存器来实现某些功能。在将寄存器的地址也以C语言的命名规则进行命名之后,我们就可以使用C语言来对单片机进行编程。
像内存一样,寄存器中存储着许多数字,只不过是这些数字都被保存在特定的寄存器(地址)中。我们通过修改寄存器中的数字,从而实现对硬件的控制。