毕业设计论文-基于模拟电路的波形发生器设计内容摘要:
E 共同作用,对 1WR 信号进行控制。 ILE 输入寄存器允许信号,高电平有效 1WR 为写信号 1,低电平有效,当 1WR = 0, CS = 0,且 ILE=1 时,将输入数据琐存到输入寄存器 2WR 为写信号 2,低电平有效,当 2WR = 0, XFER = 0 时,将输入寄存器中的数据缓冲到 8 位 DAC 寄存器内 XFER 为传输控制信号,低电平有效 输出线( 3 条): FBR 为集成运放的反馈线,常常接到集成运放的输出端。 OUT1I 和OUT2I 为两条模拟电流输出线。 OUT1I + OUT2I 为一常数,若输入数值量全为“ 1”时,则 OUT1I取最大值, OUT2I 取最小值;若输入全为“ 0”时, OUT1I 取最小值, OUT2I 取最大值。 电源线( 4 条): ccV 为电源输入线,可在 +5~ +15V 范围内选择。 refU 为参考电压,一般在 0~ +10V 范围,由稳压电源提供。 DGND 为数字量地线, AGND为模拟量地线。 邵阳学院毕业 设计 (论文) . 13 ②工作方式 由于 DAC0832 内部有两级缓冲寄存器,所以有三种工作方式可供选择: 直通工作方式 1WR 、 2WR 、 XFER 及 CS 接低电平, ILE 接高电平。 即不用写信号控制,外部输入数据直通内部 8 位 D/A 转换器的数据输入端。 单缓冲工作方式 2WR 、 XFER 接低电平,使 8 位 DAC 寄存器处于直 通状态,输入数据经过 8 位输入寄存器缓冲控制后直接进入 D/A 转换器。 双缓冲工作方式 两个寄存器均处于受控状态,输入数据要经过两个寄存器缓冲控制后才进入 D/A转换器。 这种工作方式可以用来实现多片 D/A转换器的同步输出。 ③ 转换公式 为了将模拟电流转换成模拟电压,需把 DAC0832 的两个输出端 OUT1I 和 OUT2I 分别接到运算放大器的两个输入端上,经过一级运放得到单级性输出电压 A1U。 D/A 转换单级性输出电路图如图 所示,该电路为 8 位数字量 07DD 经 D/A 转换器转换为单级性电压输出。 转换公式如下: 一级运放的输出电压:A1 REF 8DU =V 2 () D 为数字量的十进制数,即 7 6 1 07 6 1 0D = D 2 + D 2 + .. .+ D 2 + D 2 当 REFV =5V 时, DAC0832 的转换表如表 所示。 表 DAC0832 转换表 参考电压 输入数据 输出电压 二进制 十进制数 十六进制 单级性输出 REFV 7D 6D 5D 4D 3D 2D 1D 0D D H A1U +5V 0 0 0 0 0 0 0 0 0 00 0V 1 0 0 0 0 0 0 0 128 80 1 1 1 1 1 1 1 1 255 FF 滤波电路设计 (1)滤波电路原理 滤波器是一种能使有用信号频率通过 ,同时抑制无用频率 成分的电路 ,广泛应用于电子、电气、通信、计算机等领域的信号处理电路中。 滤波器的种类很多,在本次设计中用到集成有源滤波器。 集成有源滤波器是由集成运放和电阻电容等器件组成邵阳学院毕业 设计 (论文) . 14 的。 随着电子技术、集成电路技术的迅速发展,集成有源滤波器在许多领域得到广泛应用。 在本次设计中,我们要滤除的频率分量主要是 D/A 转换器所产生的高频分量,与我们所要保留的信号频率相差很远,因此相对来说,滤波器在通带内的平坦程度对我们来说比其衰减陡度更为重要,本次设计选择一阶低通滤波器电路。 一阶低通滤波包含一个 RC 电路。 图 是一阶低通滤波电路。 (2)滤波电路参数计算 图 低通滤波电路 该滤波电路是反相放大器,其传递函数为 : 0 f f 0fi 1 1 1 f fcU s Z s I GR1G S = =U s Z s I R 1+ sC R s1+w ( ) = () 上式 (22)中 , f0 1RG R为零频增益 , cw =ff1RC 为截止角频率。 其频率特性为 : 0cGG jw w1+ j w () 幅频特性为 : 02cGG ωω1+ω () 相频特性为 : cωδ w = πa rc ta n ω () 已知截止频率 0f , 先确定 R 的值,然后根据 cw = ff1/RC , f f cC 1/ R w ,得出电容的值,再由电容值去求电阻值。 滤波信号是从运算放大器的同相端 输入的,所以应该选用共模输入范围较大的运算放大器。 运算放大器的增益带宽积应满足od up 0A A f ,取 od upA 100A。 一阶低通滤波器的缺点是 :阻带特性衰减太慢 , 一般为20dB/10out, 所以这种电路只适用于对滤波特性要求不高的场合。 只适合于低频信号。 时钟电路 765T L 0 8 2 1 /2R1 5 . 1 K AOUTR2 7 . 2 K1 0 3U i n邵阳学院毕业 设计 (论文) . 15 时钟输入是波形发生器必不可少的一部分, 它能为 FPGA 提供时钟脉冲信号,考虑到 EDA 开发系统时钟输入的重要性,一个是 50MHz 的有源晶振作为时钟信号源输入,主要用 于输入大的时钟信号,为波形发生器提供基准的时钟脉冲输入。 有源晶振电路如图 所示: 1 32 4U5H O 1 2C LKV C C 图 有源晶振电路 有源晶振的驱动能力强,晶振频率比较大,能达到几百兆 Hz,采用有源晶振作为时钟源可以使电路的时钟扩大。 HO12 系列的有源晶振采用 TTL/HCMOS 技术,频率范围是 1000Hz1000MHz,这里我们采用的是 50MHz 的有源晶振。 下载电路 FPGA 配置可以使用专用的编程设备,也可以使用下载电缆。 电可擦除编程工艺的优点是编程后信息不会因掉电 而丢失,但编程的次数有限,编程的速度不快。 对于 SRAM 型 FPGA 来说,可反复进行配置,在加电时可随时更改逻辑,但掉电 后芯片中的信息丢失,每次上电时,必须重新载入信息,下载信息的保密性也不如前者。 使用 ALTERA 的 ByteBlaster(MV)并行下载电缆,连接 PC 机的并行打印口和需要编程或配置的器件,并与 MAX+PlusII配合可以对 ALTERA 公司的多种 CPLD、FPGA 进行配置或编程。 ByteBlaster(MV)下载电缆与 ALTERA 器件的接口一般是 10 芯的接口,其中 ByteBlaster(MV)与计算机并口连接。 MV 即混合电压的意思。 引脚对应 关系如图 所示, 10 芯连接信号如表 所示。 图 10 芯片下载口 表 芯接口各引脚信号名称 模式 1 2 3 4 5 6 7 8 9 10 PS DCK GND CONF_DONE VCC nCONFIG _ nSTATUS _ DATA0 GND 1 3 5 7 92 4 6 8 10邵阳学院毕业 设计 (论文) . 16 用 Altera 的 ByteBlaster(MV)并行下载电缆,连接 PC 机的并行打印机口和需要编程的器件,在线 配置 FPGA,调试非常的方便。 基于 SRAM LUT 的 FPGA 器件,由于是易失性器件,以 ICR(InCircuit Reconfigurability)即在线可重配置方式代替在线系统可编程 (ISP)。 电路可重配置是指允许在器件已经配置好的情况下进行重新配置,以改变电路逻辑结构和功能。 在利用 FPGA 进 行设计时可以利 用 FPGA的 ICR 特性,通过连接 PC 机的下载电缆快速地下载设计文件至 FPGA 进行硬件验证。 PS 被动串行模式 (MSEL1=0、 MSEL0=0), PPS 被动并行同步模式(MSEL1= MSEL0=0), PSA 被动串行异步模式 (MSEL1= MSEL0=0),PPA 被动并行异步模式 (MSEL1= MSEL0=1), JTAG 模式 (MSEL1=0、MSEL0=0)。 图 为 FPGA 芯片 PS 模式配置电路。 图 ByteBlaster( MV)配置 FPGA 芯片介绍 (1)FPGA 的配置方式 在利用 FPGA进行设计时可以利 用 FPGA的 ICR特性,通过连接 PC机的下载电缆快速地下载设计文件至 FPGA进行硬件验证。 Altera的基于 SRAM LUT的 FPGA提供了五种配置模式 , 这些模式通过 FPGA上的两个模式选择引脚 MSEL1和MSEL0和设定的电平来决定的。 FPGA的配置引脚功能 如下: MSEL0、 MSEL1:输入 , (0, 0)为串行 配置 或使用 配置 器件模式; (1, 0)为并行同步模式; (1, 1)为并行异步模式。 nSTATUS: 双向集电极开路,上电后被器件拉低, 在 5uS之内, 被器件释放, (当使用一个专用配置器件时,专用加载器件将控制这个脚为低长达 200ms。 )这个管脚必须通过一个 1K电阻上拉到 VCCIO; 如果在配置过程中,如有错误发生,本管脚被器件拉;如果在配置或初始化过程中,有一个外部的信号源驱动本管脚为低,则器TCKTDOT M STDIVCC VCCAL TE RA 的M AX 7000 系列器件VCCGNDGNDGNDBy teBlaster10 芯接口引脚 1邵阳学院毕业 设计 (论文) . 17 件进入一个错误的状态;在配置或初始化之后,驱动本管脚为低,不会影响器件。 但是,如果使用 专用配置器件,驱动本管脚低将引起配置器件试图去配置 FLEX 器件。 nCONFIG:输入,配置控制引脚,由 01的跳变开始配置,由 10跳变则复位器件;当设定本管脚为 0时,所有 I/O为三态。 CONF_DONE:双向集电极开路,状态输出:在配置之前和配置过程中,器件驱动本管脚为 0,一旦所有配置数据都被接收并没有错误发生,则初始化时钟周期开始时器件释放本管脚;状态输入:在所有数据被接收后,本管脚为高电平,器件初始化,然后进入用户模式;本管脚必须通过一个 1K的电阻上拉到 VCCIO外部的信号源可以驱动本管脚为低, 来延迟初始化的过程,当使用一个配置器件进行配置除外,在配置以及初始化之后,驱动本管脚为低 , 不影响配置器件。 DCLK:输入,时钟输入,用于从一个外部信号源输入时钟数据进入器件,在串行异步模式或并行异步模式配置中 , DCLK应当被拉高, 不能悬空。 nCE:输入,低有效芯片使能,本管脚使用低电平使能器件来允许配置,对于单芯片配置应当被固定为低电平,在配置以及初始化过程和用户模式,本管脚必须固定为低电平;在级联时 , 第一片的 nCE接地,前一片的 nCEO接后一片的 nCE。 nCEO:输出,当设备配置完成后被驱动为低电平。 在多器件配置过程中, 这个管脚用来连接后面器件的 nCE引脚, 最后一片的 nCEO悬空。 nRS:输入, 读选通输入: 对于 APEX II、 Mercury、 ACEX 1K、 APEX 20K 和 FLEX10K器件低电平表示在 DATA7引脚输出的是 RDYnBSY信号;对于 FLEX 6000 器件,低电平表示在 DATA引脚输出的是 RDYnBSY信号,如果 nRS 管脚没有使用,应该被固定连接到高电平。 RDYnBSY: 输出,忙闲信号:高电平表示器件准备好来存取另外字节的数据;高电平表示器件没有准备好接收另外字节的 数据。 nCS、 CS:输入, 片选择信号: nCS为低电平且 CS为高电平器件被使能可以进行配置,如果只有一个芯片选择输入被使用,那么另外一个必须被激活,在配置和初始化的过程中, nCS和 CS管脚必须被处于有效状态。 CLKUSR:输入, 可选的用户时钟输入信号:用在初始化过程中; (注:在 初始化过程中可以继续使用配置数据用的 DCLK,或者切换到用 CLKUSR)。 DATA[7..1]: 数据输入:并行的字节流数据通过 DATA[7.。毕业设计论文-基于模拟电路的波形发生器设计
相关推荐
详细代码 */ ProductList Session ProductList Products Split Request cpbm , , For i 0 To UBound Products PutToShopBag Products i , ProductList Next Session ProductList ProductList /*函数 PutToShopBag 代码 */ %
虚拟机发展及应用 虚拟机概述 虚拟机( Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。 通过虚拟机软件,你可以在一台 物理 计算机上模拟出一台或多台虚拟的计算机,这些虚拟机 完全就像真正的计算机那样进行工作,例如你可以安装 操作系统 、安装 应用程序 、访问 网络 资源等等。 对于你而言,它只是运行在你物理
89AmYWpazadNuKNamp。 MuWFA5uxY7JnD6YWRrWwc^vR9CpbK!zn%Mz849Gx^Gjqv^$U*3tnGK8!z89AmYWpazadNuKNamp。 MuWFA5uxY7JnD6YWRrWwc^vR9CpbK!zn%Mz84!z89Amv^$UE9wEwZQc@UE%amp。 qYp@Eh5pDx2zVkumamp。
复杂控制功能。 S7200 系列出色表现在以下几个方面:极高的可靠性;极丰富的指令集;易于掌握;便捷的操作;丰富的内置集成功能;实时特性;强劲的通讯能力;丰富的扩展模块等。 S7200 系列在集散自动化系统中充分发挥其强大功能。 使用范围可覆盖从替代继电器的简单控制到更复杂的自动化控制。 应用领域极为广泛,覆盖所有与自动检测,自动化控制有关的工业及民用领域,包括各种机床、机械、电力设施、民用设施
HTTP/ 协议,支持 JAVA 中 Servlet、 JSP、 JDBC、 JNDI 等相关规范,能够部署大多数基于 Web 的 Java 应用。 DM WAS 由服务器核心类、 Java核心类库、第三方软件包、一组配置文件和多个 Web 应用程序组成。 服务器在启动时读入并解析服务器配置文件,并初始化一系列服务,包括类装载器、数据库连接池、 JNDI、数据源等资源在 JNDI 上的绑定
口中断 } void InitTimeFlag(void) { To10msFlag=FALSE。 To10msCnt=1。 基于 ARM 架构的单片机开发智能仓储系统中的传感采集单元 6 To100msFlag=FALSE。 To100msCnt=10。 To1SFlag=FALSE。 To1SCnt=100。 } void InitAllSensor(void) { InitMyAdc()。