文档库 最新最全的文档下载
当前位置:文档库 › Matlab第六章 Simulink数字电路仿真

Matlab第六章 Simulink数字电路仿真

第六章Simulink数字电路仿真

武汉大学物理科学与技术学院微电子系常胜

从功能结构上将,数字电路可以分为组合逻辑电路和时序逻辑电路两种,我们的Simulink数字电路仿真也分这两部分讲授。

§6.1 组合逻辑电路的仿真

6.1.1 组合逻辑电路仿真常用模块

1、构建组合逻辑电路本体常用模块:

Logical Operator(逻辑操作)模块

位于Simulink节点下的Math Operations模块库(MATLAB6.5)或Logic and Bit Operations模块库(MATLAB7.0)中,用于实现基本的逻辑门单元。根据具体需要,其可例化为与门、与非门、或门、或非门、异或门、反相器。

武汉大学物理科学与技术学院微电子系常胜

武汉大学物理科学与技术学院微电子系常胜

Combinatonial Logic(组合逻辑)模块

位于Simulink节点下的Math Operations模块库(MATLAB6.5)或Logic and Bit Operations模块库(MATLAB7.0)中,用于实现逻辑表达式的运算。

采用真值表的方式来描述组合逻辑表达式。

真值表的具体描述方式见其Block Parameters中的help 对于组合逻辑的多个输入端,combinationial logic模块需要和Mux模块组合使用。

武汉大学物理科学与技术学院微电子系常胜

真值表中填入对应位置的输出值

武汉大学物理科学与技术学院微电子系常胜

e.g. 函数Y=AB+BC+CA的实现ex6_1

注意将仿真参数中Optimization中的Implement logic signals as boolean data(V.S. double)去掉,避免数据类型的不匹配。

武汉大学物理科学与技术学院微电子系常胜

武汉大学物理科学与技术学院微电子系常胜

2、信号输入常用模块:

Pulse Generator(脉冲序列发生器)模块位于Simulink节点下的Source库中,根据要求可以产生占空比不同的脉冲序列。选择“Sample Based”方式。Period(number of samples)文本框:设定脉冲周期

Pulse width(number of sample)文本框:设定高电平时间。

Phase delay(number of sample)文本框:设定脉冲的相位延迟,即设定高电平起始点在整个脉冲周期中的位置。

武汉大学物理科学与技术学院微电子系常胜

武汉大学物理科学与技术学院微电子系常胜

3、输出显示常用模块

Scope(示波器)模块

武汉大学物理科学与技术学院微电子系常胜

6.1.2 组合逻辑电路仿真实例

e.g. 〔例6-2〕构建8-3编、译码器模型P116

编码器:传统的电路构建方法ex6_2_1

步骤:

1、真值表

2、卡诺图

3、逻辑式

4、与或式电路图

5、仿真模型

武汉大学物理科学与技术学院微电子系常胜

武汉大学物理科学与技术学院微电子系常胜

武汉大学物理科学与技术学院微电子系常胜

译码器:使用combinational logic模块ex6_2_2

武汉大学物理科学与技术学院微电子系常胜

武汉大学物理科学与技术学院微电子系常胜

武汉大学物理科学与技术学院微电子系常胜

P119〔例6-3〕构建4-16译码器并完成子系统的封装一、3-8译码器电路模型的构建

武汉大学物理科学与技术学院微电子系常胜

武汉大学物理科学与技术学院微电子系常胜

二、3-8译码器子系统的封装(详细过程见P119)

武汉大学物理科学与技术学院微电子系常胜

三、4-16译码器系统的搭建

武汉大学物理科学与技术学院微电子系常胜

Matlab Simulink 仿真步骤

MATLAB基础与应用简明教程 张明等编著 北京航空航天大学出版社(2001.01) MATLAB软件环境是美国New Mexico大学的Cleve Moler博士首创的,全名为MATrix LABoratory(矩阵实验室)。它建立在20世纪七八十年代流行的LINPACK(线性代数计算)和ESPACK(特征值计算)软件包的基础上。LINPACK和ESPACK软件包是从Fortran语言开始编写的,后来改写为C语言,改造过程中较为复杂,使用不便。MA TLAB是随着Windows环境的发展而迅速发展起来的。它充分利用了Windows环境下的交互性、多任务功能语言,使得矩阵计算、数值运算变得极为简单。MA TLAB语言是一种更为抽象的高级计算机语言,既有与C语言等同的一面,又更为接近人的抽象思维,便于学习和编程。同时,它具有很好的开放性,用户可以根据自己的需求,利用MA TLAB提供的基本工具,灵活地编制和开发自己的程序,开创新的应用。 本书重点介绍了MA TLAB的矩阵运算、符号运算、图形功能、控制系统分析与设计、SimuLink仿真等方面的内容。 Chap1 MATLAB入门与基本运算 本章介绍MATLAB的基本概念,包括工作空间;目录、路径和文件的管理方式;帮助和例题演示功能等。重点介绍矩阵、数组和函数的运算规则、命令形式,并列举了可能得到的结果。由于MA TLAB的符号工具箱是一个重要分支,其强大的运算功能在科技领域有特殊的帮助作用。 1.1 MATLAB环境与文件管理 1.2 工作空间与变量管理 1.2.1 建立数据 x1=[0.2 1.11 3]; y1=[1 2 3;4 5 6]建立一维数组x1和二维矩阵y1。分号“;”表示不显示定义的数据。 MATLAB还提供了一些简洁方式,能有规律地产生数组: xx=1:10 %xx从1到10,间隔为1 xx=-2:0.5:1 %xx从-2到1,间隔为0.5 linespace命令等距离产生数组,logspace在对数空间中等距离产生数组。对于这一类命令,只要给出数组的两端数据和维数就可以了。 xx=linespace(d1,d2,n) %表示xx从d1到d2等距离取n个点 xx=logspace(d1,d2,n) %表明xx从10d1到10d2等距离取n个点 1.2.2 who和whos命令 who: 查看工作空间中有哪些变量名 whos: 了解这些变量的具体细节 1.2.3 exist命令 查询当前的工作空间内是否存在一个变量,可以调用exist()函数来完成。 调用格式:i=exist(…A?); 式中,A为要查询的变量名。返回的值i表示A存在的形式: i=1 表示当前工作空间内存在一个变量名为A的矩阵; i=2 表示存在一个名为A.m的文件; i=3 表示MATLAB的工作路径下存在一个名为A.mex的文件;

数字钟设计(带仿真和连接图)

- 数字电子技术课程设计报告 题目:数字钟的设计与制作 : 专业:电气本一班 学号:姓名: 指导教师: 时间: - —

一、设计内容 数字钟设计 … 技术指标: (1)时间以24小时为周期; (2能够显示时,分,秒; (3)有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间; (4)计时过程具有报时功能,当时间到达整点前5秒进行蜂鸣报时; (5)为了保证计时的稳定及准确须由晶体振荡器提供表针时间基准信号. ~ 二、设计时间: 第十五、十六周 三、设计要求: (1)画出设计的电路原理图; $ (2) 选择好元器件及给出参数,在原理图中反应出来; (3)并用仿真软件进行模拟电路工作情况; (4)编写课程报告。

! 摘要 数字钟实际上是一个对标准频率(1Hz)进行计数的计数电路。振荡器产生的时钟信号经过分频器形成秒脉冲信号,秒脉冲信号输入计数器进行计数,并把累计结果以“时”、“分”、“秒”的数字显示出来。秒计数器电路计满60后触发分计数器电路,分计数器电路计满60后触发时计数器电路,当计满24小时后又开始下一轮的循环计数。一般由振荡器、分频器、计数器、译码器、数码显示器等几部分组成。 振荡电路:主要用来产生时间标准信号,因为时钟的精度主要取决于时间标准信号的频率及稳定度,所以采用石英晶体振荡器。 分频器:因为振荡器产生的标准信号频率很高,要是要得到“秒”信号,需一定级数的分频器进行分频。 计数器:有了“秒”信号,则可以根据60秒为1分,24小时为1天的进制,分别设定“时”、“分”、“秒”的计数器,分别为60进制,60进制,24进制计数器,并输出一分,一小时,一天的进位信号。 译码显示:将“时”“分”“秒”显示出来。将计数器输入状态,输入到译码器,产生驱动数码显示器信号,呈现出对应的进位数字字型。 由于计数的起始时间不可能与标准时间(如北京时间)一致,故需要在电路上加一个校时电路可以对分和时进行校时。另外,计时过程要具有报时功能,当时间到达整点前10秒开始,蜂鸣器1秒响1秒停地响5次。 } 为了使数字钟使用方便,在设计上使用了一个变压器和一个整流桥来实现数字钟电能的输入,使得可以方便地直接插入220V的交流电就可以正常地使用了。关键词数字钟振荡计数校正报时

MATLAB命令画出simulink示波器图形

毕业论文答辩已经结束很长时间了,现在总结一下我在做毕业论文时的用MATLAB命令画出simulink示波器图形的一点方法,我也是MATLAB初学者,所用方法不算高明方法,并且这些方法在论坛应该都能找到,请大家见谅。 第一步,将你的示波器的输出曲线以矩阵形式映射到MATLAB的工作空间内。 如图1所示,双击示波器后选择parameters目录下的Data history,将Save data to workspace勾上,Format选择Array,Variable name即你输入至工作空间的矩阵名称,这里我取名aa。在这之后运行一次仿真,那么你就可以在MATLAB的工作空间里看到你示波器输出曲线的矩阵aa。如图2所示。 第二步,用plot函数画出曲线 双击曲线矩阵aa,将可以看到详细情况,我这里的aa矩阵是一个1034行,3 列的矩阵,观察这个矩阵即可以发现,这个矩阵的第一列是仿真时间,而由于我仿真时示波器内输出的是两条曲线,所以第二列和第三列即分别代表了这2条曲线。同时大家要注意,在simulink中我们有时往往在示波器中混合输出曲线,那么就要在示波器前加一个MUX混合模块,因此示波器内曲线映射到的工作空间的矩阵是和你的MUX的输入端数有关,如果你设置了3个MUX输入端,而实际上你只使用了2个,那么曲线矩阵仍然会有4列,并且其中一列是零,而不是3列。 理解曲线矩阵的原理之后,我们就可以用plot函数画出示波器中显示的图形了。 curve=plot(aa(:,1),aa(:,2),aa(:,1),aa(:,3),'--r') %aa(:,1)表示取aa的第一列,仿真时间 %aa(:,2)表示取aa的第二列,示波器的输入一 %aa(:,3)表示取aa的第三列,示波器的输入二 %--r表示曲线2显示的形式和颜色,这里是(red) set(curve(1),'linewidth',3) %设置曲线1的粗细 set(curve(2),'linewidth',3) %设置曲线2的粗细 legend('Fuzzy','PID') %曲线名称标注 xlabel('仿真时间(s)') %X坐标轴名称标注 ylabel('幅值') %Y轴坐标轴标注 title('Fuzzy Control VS PID') %所画图的名称 grid on %添加网格 运行上述命令后即可以看到用MATLAB命令画出的图形了,你可以在图形出来之后继续进行编辑。

MATLAB编程与SIMULINK仿真简介

348 数字信号处理 MATLAB编程与SIMULINK仿真简介 A.1 MATLAB编程基础 MATLAB6.5提供了丰富的编程语句结构和实用函数,MATLAB产品组是支持你从概念设计、算法开发、建模仿真到实时实现的理想的集成环境。无论是进行科学研究还是产品开发,MATLAB产品族都是必不可少的工具。这里介绍一些常用的编程技巧和方法,以便同学们能尽快地启动起来,更好地应用MATLAB。 1. MATLAB文件的编写与调试环境 M文件的编写与调试在MATLAB Editor/Debugger下进行(图B1-1),这个集成环境可以方便地进行新建、修改、存储,选择Debug菜单中的Run命令就可以运行程序,运行结果显示在MATLAB Command Window 中。程序的调试应用Debug菜单就可以进行调试,其他高级语言中的Set/Clear Breakpoint、Single Step、Stop if error等选项都有,可以方便的调试程序。 图B1-1 M文件的编写与调试窗口 在MATLAB Editror/Debugger下按照MATLAB编程的规则键入相关的语句并存盘,就可以得到一个后缀为.m的文本文件。

2. MATLAB脚本文件和函数文件 在MATLAB中,无论是问题的提出还是结果的表达都采用你习惯的数学描述方法,而不需要用传统的编程语言进行处理。应用MATLAB编写出来的程序可以是M脚本文件(Script 。file),也可以是M函数文件(Function file),这些文件都由纯ASCII字符构成,其后缀m MATLAB下 M脚本文件是一串按用户意图排列而成的(包括控制流向指令在内)MATLAB 指令集合,可以直接执行,用户只需在Command Window中MATLAB提示符>>后键入文件名即可执行。脚本文件运行后所产生的所有变量都驻留在MATLAB的基本工作空间(Base workspace)中,只要用户不加以清除且MATLAB指令窗不关闭,则这些变量将一直保存在基本工作空间。与脚本文件不同,函数文件犹如一个“黑箱”,从外界只看到传给它的输入量和送出来的计算结果,内部运作是看不见的,并且函数文件的第一行总是以“function”引导的“函数申明行”。M函数文件必须由其它的语句来调用,在一般情况下用户不能单独键入其文件名来运行一个M函数。 MATLAB下的大多数的应用程序由M函数文件形式给出,例如求取系统特征方程的根的root ()函数和绘制零极点图的pzmap ()函数等。除了M函数文件之外,MATLAB还提供了大量的底层函数(内部),这类文件是不可读的,与M函数一起统称为函数。 3. M文件的一般结构 从结构上看脚本文件只是比函数文件少一个“函数申明行”,所以脚本文件和函数文件除第一行不同外,其余的结构都是一样的。 典型M函数文件的基本结构可由以下几部分构成: (1)函数申明行(Function declaration line),位于函数文件的首行,以MATLAB 关键字function 开头,函数名以及函数的输入输出宗量都在这一行中定义; (2)H1行(The first help text line):紧随函数申明行之后以%开头的第一行注释行。H1行包括大写体的函数名和运用关键词简要描述的函数功能,该行供lookfor关键词查询和help在线帮助查询使用; (3)在线帮助文本(Help text)区:H1行及其之后的连续以%开头的第一行的所有注释行构成在线帮助文本; (4)编写和修改记录:标志编写及修改该M文件的作者、日期,便于档案管理; (5)函数体(Function body):该部分由实现M函数功能的MATLAB指令组成。它接收输入宗量,进行程序流程控制,得到输出宗量。从运算角度看“函数申明行”和“函数体”两部分是构成M函数文件所必不可少的。 函数文件(Function file)由function()语句引导,其基本格式为: function 返回变量名=函数名(输入变量列表) 注释说明语句段 函数体语句 在编制程序的过程中输入和返回的变量分别由nargin和nargout两个MATLAB的保留参数给出,返回变量要多于1个,应该用方括号括起来,输入变量用逗号隔开。注释语句

Matlab中的Simulink和SimMechanics做仿真

这里我们利用Matlab中的Simulink和SimMechanics做仿真,那么先来看看相关的资料。 SimMechanics ——机械系统建模和仿真 SimMechanics 扩展Simscape? 在三维机械系统建模的能力。用户可以不进行方程编程,而是借助该多刚体仿真工具搭建模型,这个模型可以由刚体、铰链、约束以及外力组成。自动化3-D动画生成工具可做到仿真的可视化。用户也可通过从CAD系统中直接导入模型的质量、惯量、约束以及三维几何结构。Real-Time Workshop可以对SimMchanics模型进行自动化C代码生成,并在硬件在回路仿真过程中可以使用生成的代码而不是硬件原型测试嵌入式控制器。 SimMechanics可以用于开发悬架、机器手臂、外科医疗设备、起落架和大量的其它机械系统。用户也可以在SimMechanics环境下集成其它的MathWorks物理建模工具,这样做可以实现更加复杂跨领域的物理建模。 特点: ?提供了三维刚体机械系统的建模环境 ?包含了一系列分析机械运动和设计机械元件尺寸的仿真技术 ?三维刚体可视化仿真 ?SimMechanics Link utility,提供Pro/ENGINEER 和SolidWorks CAD平台的接口并且也提供了API函数和其它CAD平台的接口

?能够把模型转化为C代码(使用Real-Time Workshop) ?由于集成在Simulink环境中,因此可以建立高精度、非线性的模型以支持控制系统的开发和测试。 强大功能: 搭建机械系统模型 使用SimMechanics用户仅需要收集物理系统信息即可建立三维机械系统模型。使用刚体、坐标系、铰链和作用力元素定义和其它Simulink模型直接相连的部分。这个过程可以重用Simulink模型以及扩展了SimMechanics工具的能力。用户还可把Simulink模型和SimMechnics模型集成为一个模块,并可封装成可在其它模型中复用的子系统。 机械系统建模仿真和分析 SimMechanics包含如下子系统: ?使用Simulink查表模块和SimMechanics传感器和作动器定义的非线性的弹性单元 ?用来定义航空器件压力分布的空气动力学拖曳模块,例如副翼和方向舵 ?车辆悬架系统,例如防侧翻机械装置和控制器 ?轮胎模型

数字电子钟的设计与仿真

数字电子钟的设计与仿真 Digital electronic clock design and simulation

摘要 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。现代生活的人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。对于那些对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦,所以以数码管为显示器的时钟比指针式的时钟表现出了很大的优势。数码管显示的时间简单明了而且读数快、时间准确显示到秒。而机械式的依赖于晶体震荡器,可能会导致误差。数字钟是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。数字钟的精度、稳定度远远超过老式机械钟。在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,定时器计数。在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。数字钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。 关键字:单片机LED显示 Abstract At the end of the twentieth Century, electronic technology has obtained the rapid development, under its impetus, the modern electronic products almost permeated each domains of the society, effectively promoted the development of social productivity and the improvement of social information-based degree, but also makes the modern electronic products to further improve the performance, product upgrading has become increasingly fast pace. Modern life of people more and more attention to the concept of time, can be said to be the time and money is a sign. For

matlabsimulink初级教程

S i m u l i n k仿真环境基础学习Simulink是面向框图的仿真软件。 7.1演示一个Simulink的简单程序 【例7.1】创建一个正弦信号的仿真模型。 步骤如下: (1)在MATLAB的命令窗口运行simulink命令,或单击工具栏中的图标,就可以打开Simulink模块库浏览器(SimulinkLibraryBrowser)窗口,如图7.1所示。

图7.1Simulink界面 (2)单击工具栏上的图标或选择菜单“File”——“New”——“Model”,新建一个名为“untitled”的空白模型窗口。 (3)在上图的右侧子模块窗口中,单击“Source”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink下的Source子模块库,便可看到各种输入源模块。 (4)用鼠标单击所需要的输入信号源模块“SineWave”(正弦信号),将其拖放到的空白模型窗口“untitled”,则“SineWave”模块就被添加到untitled窗口;也可以用鼠标选中“SineWave”模块,单击鼠标右键,在快捷菜单中选择“addto'untitled'”命令,就可以将“SineWave”模块添加到untitled窗口,如图7.2所示。

(5) Scope ”模块(示波器)拖放到“untitled ”窗口中。 (6)在“untitled ”窗口中,用鼠标指向“SineWave ”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope ”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。如图7.3所示。 (7)开始仿真,单击“untitled ”模型窗口中“开始仿真”图标 ,或者选择菜单“Simulink ”——“Start ”,则仿真开始。双击“Scope ” 模块出现示波器显示屏,可以看到黄色的正弦波形。如图7.4所示。 图7.2Simulink 界面

simulink-matlab仿真教程

simulink matlab 仿真环境教程 Simulink 是面向框图的仿真软件。 演示一个Simulink 的简单程序 【例1.1】创建一个正弦信号的仿真模型。 步骤如下: (1) 在MATLAB 的命令窗口运行simulink 命令,或单击工具栏中的图标,就可以打开Simulink 模块库浏览器 (Simulink Library Browser) 窗口,如图1.1所示。 (2) 单击工具栏上的图标或选择菜单“File ”——“New ”——“Model ”,新建一个名为“untitled ”的空白 模型窗口。 (3) 在上图的右侧子模块窗口中,单击“Source ”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink 下的Source 子模块库,便可看到各种输入源模块。 (4) 用鼠标单击所需要的输入信号源模块“Sine Wave ”(正弦信号),将其拖放到的空白模型窗口“untitled ”,则“Sine Wave ”模块就被添加到untitled 窗口;也可以用鼠标选中“Sine Wave ”模块,单击鼠标右键,在快捷菜单中选择“add to 'untitled'”命令,就可以将“Sine Wave ”模块添加到untitled 窗口,如图1.2 所示。 图7.1 Simulink 界面

(5) 用同样的方法打开接收模块库“Sinks”,选择其中的“Scope ”模块(示波器)拖放到“untitled”窗口中。 (6) 在“untitled”窗口中,用鼠标指向“Sine Wave”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。如图1.3所示。 (7) 开始仿真,单击“untitled”模型窗口中“开始仿真”图标,或者选择菜单“Simulink”——“Start”,则仿真开始。双击“Scope”模块出现示波器显示屏,可以看到黄色的正弦波形。如图1.4所示。 (8) 保存模型,单击工具栏的图标,将该模型保存为“Ex0701.mdl”文件。 1.2 Simulink的文件操作和模型窗口 1.2.1 Simulink的文件操作 1. 新建文件 新建仿真模型文件有几种操作: ?在MATLAB的命令窗口选择菜单“File”“New”“Model”。 图7.2 Simulink界面 图7.3 Simulink模型窗口 图7.4 示波器窗口

数字钟的设计与仿真

目录 摘要 (3) 前言 (4) 第一章理论分析 1.1 设计方案 (5) 1.2 设计目的 (5) 1.3 设计指标 (6) 1.4 工作原理及其组成框图 (6) 第二章系统设计 2.1 多谐振荡器 (8) 2.2 计数器 (10) 2.3 六十进制电路 (12) 2.4 译码与LED显示器 (13) 2.5 校时电路 (14) 2.6 电子时钟原理图 (15) 2.7 仿真与检测 (16) 2.8 部分元器件芯片结构图 (18) 2.9 误差分析 (19) 第三章小结 心得体会 (20) 致谢 (21) 参考文献 (22)

摘要 时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发展,人们对时间计量的精度要求越来越高,应用越来越广。怎样让时钟更好的为人民服务,怎样让我们的老朋友焕发青春呢?这就要求人们不断设计出新型时钟。在这次的毕业设计中,针对一系列问题,设计了如下电子钟。 本系统由555多谐振荡器,分频器,计数器,译码器,LED显示器和校时电路组成,采用了CMOS系列(双列直插式)中小规模集成芯片。总体方案手机由主题电路和扩展电路两大分组成。 其中主体电路完成数字钟的基本功能,扩展电路完成数字钟的扩展功能,进行了各单元设计,总体调试。 关键词:555多谐振荡器;分频器;计数器;译码器;LED显示器

前言 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、集成电路有体积小、功耗小、功能多、携带方便等优点,因此在许多电子设备中被广泛使用。 电子钟是人们日常生活中常用的计时工具,而数字式电子钟又有其体积小、重量轻、走时准确、结构简单、耗电量少等优点而在生活中被广泛应用,因此本次设计就用数字集成电路和一些简单的逻辑门电路来设计一个数字式电子钟,使其完成时间及星期的显示功能。 本次设计以数字电子为主,分别对1S时钟信号源、秒计时显示、分计时显示、小时计时显示、整点报时及校时电路进行设计,然后将它们组合,来完成时、分、秒的显示并且有走时校准的功能。并通过本次设计加深对数字电子技术的理解以及更熟练使用计数器、触发器和各种逻辑门电路的能力。电路主要使用集成计数器,例如CD4060、CD4518,译码集成电路,例如CD4511,LED数码管及各种门电路和基本的触发器等,电路使用5号电池共电,很适合在日常生活中使用。

matlab-simulink 初级教程

Simulink仿真环境基础学习 Simulink是面向框图的仿真软件。 7.1演示一个Simulink的简单程序 【例7.1】创建一个正弦信号的仿真模型。 步骤如下: (1) 在MATLAB的命令窗口运行simulink命令,或单击工具栏中的图标,就可以打开Simulink模块库浏览器(Simulink Library Browser) 窗口,如图7.1所示。

(2) 单击工具栏上的图标或选择菜单“File ”——“New ”——“Model ”,新建一个名为“untitled ”的空白模型窗口。 (3) 在上图的右侧子模块窗口中,单击“Source ”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink 下的Source 子模块库,便可看到各种输入源模块。 (4) 用鼠标单击所需要的输入信号源模块“Sine Wave ”(正弦信号),将其拖放到的空白模型窗口“untitled ”,则“Sine Wave ”模块就被添加到untitled 窗口;也可以用鼠标选中“Sine Wave ”模块,单击鼠标右键,在快捷菜单中选择“add to 'untitled'”命令,就可以将“Sine Wave ”模块添加到untitled 窗口,如图7.2所示。 图7.1 Simulink 界面

(5) 用同样的方法打开接收模块库“Sinks”,选择其中的“Scope”模块(示波器)拖放到“untitled”窗口中。 (6) 在“untitled”窗口中,用鼠标指向“Sine Wave”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。如图7.3所示。 (7) 开始仿真,单击“untitled ”模型窗口中“开始仿真”图标,或者选择菜单“Simulink”——“Start”,则仿真开始。双击“Scope”模块出现示波器显示屏, 可以看到黄色的正弦波形。如图7.4所示。 图7.2 Simulink界面

数字电路课程设计报告-同步N进制计数器的设计与仿真资料

目录 摘要 (1) 关键词 (1) 1引言 (2) 2同步时序逻辑电路的设计方法 (2) 2.1同步时序逻辑电路的概述 (2) 2.2同步时序逻辑电路的一般设计方法 (3) 3同步N进制计数器的设计 (4) 3.1同步二进制加法计数器的设计 (5) 3.2 带进位输出端的十三进制计数器的设计 (8) 3.2.1具体电路实现 (8)

3.2.2 电路自启动检查 (12) 4仿真的实现.........................................................................................................................1 3 4.1仿真的原理. (13) 4.2仿真与结果分析 (14) 5结论···································································································································1 5 6心得体会······························································································································1 5 附:参考文献·························································································································1 6

数字锁相环参数设计与仿真

%%***********************************************% % author: sjqian % date: 2013 07 17 % description: %**************************************************** %*************system initial************************* clc; clear all; close all; Legtick=['g-o';'k-x';'b-v';'r-o';'m-x';'c-v';'r-s';'y-v';'g-s';'k-x';'b-o';]; adB=10; Qb=10; % generate input signal f=100; fs=400; Ts=1/fs; N=10;% depth of lookuptable resulution=fs/(2^N); freqCon=round(f/resulution); Kd=2^(adB+Qb); K0=2*pi/(2^N); loop=1; BL=10; BWacq=0.42*BL; wn=BL/0.53; Tacq=1.2/BL/Ts; Gain=Kd*K0; zeta=sqrt(2)/2; c1=2*zeta*wn*Ts/Gain; c2=(wn*Ts)^2/Gain; t=0/fs:1/fs:2;

fmod=f+BWacq; a=2^adB*sin(2*pi*fmod*t+pi/6)+10*randn(1,length(t)); a=round(a); b=zeros(1,length(a)); index=(0:2^N-1)/(2^N); table=round(2^Qb*sin(2*pi*index)); phaseindex=freqCon+1; b(1)=table(1);b(2)=table(freqCon+1); path2(1)=0; for i=2:length(t) dp(i)=a(i-1)*b(i)-a(i)*b(i-1); path1=c1*dp(i); path2(i)=path2(i-1)+c2*dp(i); phaseindex=phaseindex+freqCon+path1+path2(i); phaseindex=mod(round(phaseindex),2^N); b(i+1)=table(phaseindex+1); end figure; plot(a); hold on; plot(b,'r'); title('timing waveform'); grid on; figure; plot(dp); stit=sprintf('phase detector output,converge time=%d point',Tacq); title(stit); grid on; figure; plot(path2*resulution); title({'frequency offset estimation value ',num2str(BWacq)});

Matlab与Simulink系统仿真学习心得PDF.pdf

Matlab与Simulink系统仿真学习心得 班级:07610 学号:072019 姓名:马楠 第一部分:Matlab学习心得以及实践 Matlab是迄今为止我所见到过的功能最为强大实用范围宽广的软件。的确Matlab适用于教学,航天,网络仿真等等。而且提供了很多功能强大的工具箱,并且最为突出的是它自带的很全面细致的帮助文档,无论你是初学者还是老手都会惊叹于此,你也不必去花很多时间去熟悉那些繁杂的命令,并且很容易通过这些帮助文档得到关于这些函数最精准的用法。 Matlab是一个建立在矩阵操作上的软件,我想要想真正懂得并理解Matlab与一般的语言比如C或者java的区别,那么你就应该真正理解矩阵的思想。而且要熟悉Matlab对矩阵存储的方式(在下文中我会详细解释与之相关的内容),这样对提高你的代码执行效率与易懂性都有很大的帮助。 但是Matlab究竟应该怎么定位呢?一个编程软件,一个数学工具,一个工具箱,一个开发引擎,一个仿真工具,一个虚拟现实软件……的确要精准的说出Matlab的作用很难,或许去定义这个东西到底是用来干什么的并不重要,It is just a tool。 关于Matlab的学习方法,我想与别的语言有很大不同,对于汇编或者C,我们应当很注重底层的一些操作,比如栈或者队列存储数据的方式,int或者double类型转换的时候产生的数据丢失,或者指针方面很头疼的一些东西,但是对于Matlab你根本不必去注重这些东西,也不必去清除的记得那个函数的具体调用方式,那个函数的内容与结构等等。你需要的只是相当用一个笔记本写下你一步一步实现目标的步骤而已。一种草稿纸式的语言。你所学的东西很大部分都是为你要做的目标来服务的,也许这就是当初面向对象式语言产生的原因,但是Matlab就是这种语言的一个代表。 好了,就说到这里了,接下来是我自己学习中对Matlab的一些应用中所遇到的问题以及思考方式和解决办法。 1 离散信号卷积: N1=input('N1=');%输入N1 N2=input('N2=');%输入N2 k1=0:(N1-1);%定义序列f1的对应序号向量 k2=0:(N2-1);% 序列f2的对应序号向量 f1=ones(1,N1);%f1为阶跃序列 f2=0.5*k2;%f2为斜坡序列 [f,k]=dconv(f1,f2,k1,k2)%求离散卷积 其中dconv函数的代码为: function [f,k]=dconv(f1,f2,k1,k2) %The function of compute f=f1*f2 % f: 卷积和序列f(k)对应的非零样值向量 % k:序列f(k)的对应序号向量 % f1: 序列f1(k)非零样值向量 % f2: 序列f2(k)的非零样值向量 % k1: 序列f1(k)的对应序号向量 % k2: 序列f2(k)的对应序号向量

数字电路设计仿真

数字电路设计仿真(抢答器显示部分) 一、设计任务与要求 1、抢答器同时供8名选手或8个代表队比赛,分别用8个按钮S0 ~ S7表示。 2、显示功能。即选手按动按钮,并在LED数码管上显示,同时扬声器发出报警声响提示。 6、默认显示器上显示00。 三、设计原理与参考电路 如图所求,电路用到了三个数字芯片,分别是编码器,译码器和反向器 功能说明:按键没有按下时,数码管显示为0,当按下时,显示相应的数字,这里我选用了一个优先编译器,优先编码器是当多个输入端同时有信号时,电路只对其中优先级别最高的输入信号进行编码。常用的集成优先编码器IC有10线-4线、8线-3线两种。10线-4

线优先编码器常见的型号为54/74147、54/74LS147,8线-3线优先编码器常见的型号为54 /74148、54/74LS148。10线-4线8421 BCD码优先编码器74LS147的真值表见表。74LS147的引脚图如图,其中第9脚NC为空。74LS147优先编码器有9个输入端和4个输出端。某个输入端为0,代表输入某一个十进制数。当9个输入端全为1时,代表输入的是十进制数0。4个输出端反映输入十进制数的BCD码编码输出。74LS147优先编码器的输入端和输出端都是低电平有效,即当某一个输入端低电平0时,4个输出端就以低电平0的输出其对应的8421 BCD编码。当9个输入全为1时,4个输入出也全为1,代表输入十进制数0的8421 BCD编码输出。 编码后我们要将其进行译码并在数码管上输出,译码器我选用了74ls247,这个芯片的输入是高电平有效,而147的输出是低电平,所以要进行电平匹配,我选用了一个反向器,它将低电平反向成高电平,故选用了CD4069,反向后输入译码器74ls247,它是集电极开路输出的BCD——七段译码器/驱动器,输出端(a~g)为低电平有效,可直接驱动指示灯或共阳极LED。当要求输入 0~15时,消隐输入(/BI)应为高电平或开路,对于输出 0时还要求脉冲消隐输入(/RBI)为高电平或开路。当 BI为低电电平,不管其它输入端状态如何,a~g 均为截止态。当/RBI和地址端(A~D)均为低电平,并且灯测试(/LT)为高电平时,a~g均为截止态,脉冲消隐输出(/RBO)为低电平。当 BI为高电平开路时,/L T的低电平可使a~g 为低电平。其引脚图和真值表如图所示:

数字时钟的Multisim设计与仿真

数字时钟的Multisim设计与仿真

电子电路Multisim设计和仿真 学院: 专业和班级: 姓名: 学号:

数字时钟的Multisim 设计和仿真 一、设计和仿真要求 学习综合数字电子电路的设计、实现和调试 1. 设计一个24或12小时制的数字时钟。 2. 要求:计时、显示精确到秒;有校时功能。采用中小规模集成电路设计。 3. 发挥:增加闹钟功能。 二、总体设计和电路框图 1. 设计思路 1).由秒时钟信号发生器、计时电路和校时电路构成电路。 2).秒时钟信号发生器可由555定时器构成。 3).计时电路中采用两个60进制计数器分别完成秒计时和分计时;24进制计数器完成时计时;采用译码器将计数器的输出译码后送七段数码管显示。 4).校时电路采用开关控制时、分、秒计数器的时钟信号为校时脉冲以完成校时。 2. 电路框图 三、子模块具体设计 1. 由555定时器构成的1Hz 秒时钟信号发生器。 由下面的电路图产生1Hz 的脉冲信号作为总电路的初输入时钟脉冲。 分计数器 时计数器 秒计数器 译码器 译码器 译码器 校时电路 秒信号发生器 数码管显示 数码管显示 数码管显示 图 1. 数字钟

2. 分、秒计时电路及显示部分 在数字钟的控制电路中,分和秒的控制都是一样的,都是由一个十进制计数器和一个六进制计数器串联而成的,在电路的设计中我采用的是统一的器件74LS160D 的反馈置数法来实现十进制功能和六进制功能,根据74LS160D 的结构把输出端的0110(十进制为6)用一个与非门74LS00引到CLR 端便可置0,这样就实现了六进制计数。 由两片十进制同步加法计数器74LS160级联产生,采用的是异步清零法。 显示部分用的是七段数码管和两片译码器74LS48D 。 3. 时计时电路及显示部分 由两片十进制同步加法计数器74LS160级联产生,采用的是同步置数法,u1输出端为0011(十进制为3)与u2输出端0010(十进制为2)经过与非门接两片的置数端。 显示部分用的是七段数码管和两片译码器74LS48D 。 图 2. 时钟信号图3. 分秒

(完整word版)MATLABsimulink中的基本模块的参数、含义、应用..

电力线路模块 PI Section Line 单项π型线路单相传输线模块。 电阻,电感和电容的传输线,沿着线是均匀分布的。级联几个相同的PI部分是通过以下方式获得一个近似的分布参数线路模型的Three-Phase PI Section Line 三相电力线路模块实现了一个平衡的三相传输线模型参数集中在π部分。相反,沿着线的电阻,电感和电容是均匀分布的分布参数线路模型,三相PI剖面线块肿块行参数在一个单一的π部分所示,在图中只有一相下代表。 被指定为正序和零序的,要考虑到的参数之间的感性和容性耦合的三相导体,以及地面参数的参数R,L,和C线。在此方法的指定行参数假设,这三个阶段是平衡的。 使用一个单一的PI部分的模型是适当的传输线或短,在感兴趣的频率范围是有限的基频周围建模。你可以得到更准确的模型通过级联多个相同的块。见PI剖面线的最大频率范围的说明,通过PI线模型,可以实现。

频率用于R L C规范 指定行参数所用的频率,以赫兹(Hz)。这通常是标称系统频率(50赫兹或60赫兹)。 正序和零序电阻 正序和零序电阻欧姆/公里(Ω/公里)。 正序和零序电感 正序和零序电感:亨利/公里(H/公里)。 正序和零序电容 正序和零序电容法拉/公里(F /公里)。 线路段长度(KM) 该生产线部分长度在千米(公里)。 Three-Phase Transformer (Two Windings) 三相变压器(两个绕组) 使用三个单相变压器,三相变压器三相变压器两个绕组块实现了。您可以模拟饱和的核心不是简单地通过在参数菜单中设置相应的复选框块。线性变压器块和可饱和变压器块部分的单相变压器的电气模型的详细说明,请参阅。 可以以下列方式连接的两个绕组的变压器: 1)Y 2)Y与中性点 3)接地Y 4)三角洲三角洲(D1),30度的滞后Y通过 5)D11)三角洲,三角洲领先的Y通过30度 Three-Phase V-I Measurement 三相电压-电流测量

数字电子钟的设计与仿真

龙源期刊网 https://www.wendangku.net/doc/a619007286.html, 数字电子钟的设计与仿真 作者:朱曾志 来源:《计算机光盘软件与应用》2013年第08期 摘要:本文介绍了一种数字电子钟的设计与仿真。数字电子钟的设计涉及到模拟电子技术与数字电子技术。其中,绝大部分是数字部分:逻辑门电路、数字逻辑表达式、计算真值表与逻辑函数间的关系、编码器、译码器显示等基本原理。是典型的时序逻辑电路,包含了计数器、二进制数、八进制数、十六进制、二十四进制、十进制数的概念。 关键词:数字电子钟;振荡器;计数器;时序逻辑电路;校正;报时 中图分类号:TP311.52 1数字电子钟概述 数字电子钟的逻辑框图1-1所示。它由555集成芯片构成的振荡电路、分频器、计数器、显示器组成。555集成芯片构成的振荡电路产生信号经过分频器作为秒脉冲,秒脉冲送入计数器,计数结果通过“日”、“时”、“分”、“秒”译码器显示时间。 图1-1数字电子钟的逻辑框图 工作原理:振荡器产生的稳定的高频脉冲信号,作为数字钟的时间表基准,它将时标信号送到分频器,再经过分频器输出标准秒脉冲,即将时标信号分成每秒一次的方波信号。秒信号送入计数器进行计数,秒计数计满60后向分。 2单元模块 2.1电源模块。电源电路如图2-1所示,220V交流电经变压器变为9V交流电,后经整流(全波整流)、滤波(470μF电容)、稳压(W7805)输出+5V直流电。图2-1给出了电源电路。 在变压器次级交流电压为正半周时,即A为正B为负时,二极管、导通,、截至。电流流过的路径是:从A点出发,经二极管、负载,再经回到B点。如图2-1实线所示。若忽略二极管的正向压降,可以认为上的电压≈ 。 当为负半周,即A为负B为正时,二极管、导通,、截至。 图2-1稳压源电路 电流的通路是从B点出发,经、负载回到A点。如图2-1中虚线所示。若忽略二极管的正向压降 =- 。

相关文档
相关文档 最新文档