版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、湖北工业大学商贸学院毕业设计 0 摘 要 本系统利用单片机 89S52 与 CPLD(EPM7128SLC84-15)结合,采用 DDS(直接频 率数字频率合成)技术,辅以 D/A 转换等必要的模拟电路,构成一个波形稳定、精度较 高的信号发生器。单片机负责向存储器(IDT7132)写波形表,控制频率、幅度步进以及 人机交换。CPLD 集成了 DDS、键盘扫描、BUS 等功能模块。D/A 转换模块采用 DAC0800,可将波形表内数据输出为所需要的波形。输出波形可以在正弦波、方波及三 角波间切换,并能由键盘设置频率值,还能完成步进和扫频的功能。另外,还利用手写 板实现任意波形输入的功能。 关键字
2、:DDFS 单片机 CPLDA/D D/A。 The system uses microcontroller 89S52 and CPLD (EPM7128SLC84-15) with, the use of DDS (direct digital synthesis frequency) technology, supported by D / A converter and other analog circuitry necessary to form a waveform stability and high precision signal generator. SCM is res
3、ponsible for memory (IDT7132) write wave form, control the frequency, amplitude step, and human exchange. CPLD integrated DDS, keyboard scanning, BUS and other functional modules. D / A converter module with DAC0800, waveform table data can be output to the required waveform. Output waveform can be
4、sine, square, triangular wave spread between the switch, and can set the frequency value from the keyboard, but also to complete the step and sweep functions. In addition, an arbitrary waveform using the tablet input. Keywords: DDFS SCM CPLDA / D D / A. 湖北工业大学商贸学院毕业设计 1 目目 录录 摘摘 要要.I I 目目 录录.IIII 引引
5、 言言.9 1 课题背景课题背景.9 1.2 设计任务及要求.10 2 方案论证与选择方案论证与选择.10 2.1 频率合成器模块.10 2.2 存储器模块.11 2.3 模拟输出模块.11 2.4 幅度控制部分.11 2.5 后级滤波部分.12 3 系统总体设计方案及实现方框图系统总体设计方案及实现方框图.12 4 理论分析与计算理论分析与计算.13 5 主要功能电路的设计主要功能电路的设计.13 5.1 单片机的介绍.13 5.2 资源分配.17 5.3 各部分电路原理.17 5.5 单片机的设计.19 5.6 CPLD 的设计.19 5.7 RAM 电路的设计.19 5.8 D/A 转换
6、模块的设计.20 5.9 后级滤波模块的设计.20 5.10 人机交互界面的设计.21 6 系统软件的设计系统软件的设计.21 6.1 单片机内部的程序流程图:.21 6.2VERILOG HDL 程序:.22 7 测试数据与分析测试数据与分析.23 7.1 测试仪器.23 7.2 指标测试.23 7.3 误差分析说明.24 7.3.1 相位误差.24 7.3.2 幅值量化误差.24 7.3.3 由于 D/A 变换器的非理想特性引起的误差.24 结结 束束 语语.24 5已查阅的主要参考文献已查阅的主要参考文献.25 湖北工业大学商贸学院毕业设计 2 引引 言言 能产生多种波形,如三角波、锯齿
7、波、方波、正弦波的电路被称为函数信号发生 器,又称信号源或振荡器,在生产实践和科技领域中有广泛的应用。函数信号发生器在 电路实验和设备检测中具有十分广泛的用途。例如在通信、广播、电视系统中都需要射 频(高频)发射,这里的射频波就是载波,把音频(低频) ,视频信号和脉冲信号运载出 去,就需要产生高频振荡器。作为基础测量仪器的信号发生器随着用户的需求而不断发 展。信号源实质上就是一个扫频示波器或合成信号源,并具有基本的调制功能。现在是 数字化时代,研发或其他人员对测量仪器是最基本的工具,测量仪技术指标上也不断提 高。如精度高、工作频带宽、误差小等。能够满足不同层次用户的测试要求。近几年, 数字化仪
8、器在迅速展我国也在不断研究推出各种新型数字化仪器。目前使用的信号发生 器大部分是利 AT89S51 单片机构成的发生器,但本次设计要求采用分立元件产生正弦波、 方波、三角波。电路的原理部分的设计,可以是先设计单元电路,然后用仿真软件模拟, 等到各个单元都设计完成后,再将各个单元结合到一起,由仿真软件模拟是否符合制作 要求。本次设计就是按照这样的思路来进行一步一步的分析:首先按照设计的方案选择 具体的元件,画出仿真图,并对仿真图进行调试,观察效果并与课题要求的性能指标作 对比,最后分析出现误差的原因以及影响因素。在达到课题要求的前提下保证最经济、 最方便、最优化的设计策略 1 课题背景 信号发生
9、器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。各种 波形曲线均可以用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、矩 形波(含方波) 、正弦波的电路被称为函数信号发生器。函数信号发生器在电路实验和设 备检测中具有十分广泛的用途。例如在通信、广播、电视系统中,都需要射频(高频) 发射,这里的射频波就是载波,把音频(低频) 、视频信号或脉冲信号运载出去,就需要 能够产生高频的振荡器。在工业、农业、生物医学等领域内,如高频感应加热、熔炼、 淬火、超声诊断、核磁共振成像等,都需要功率或大或小、频率或高或低的振荡器。 信号发生器,它是一种用于产生标准信号的电子仪器,随着科学技术
10、的发展,对它 的要求越来越高。在工业生产和科研中利用信号发生器输出的信号,可以对元器件的性 能及参数进行测量,还可以对电工和电子产品进行指数验证、参数调整及性能鉴定。常 用的信号发生器绝大部分是由模拟电路构成的,当这种模拟信号发生器用于低频信号输 湖北工业大学商贸学院毕业设计 3 出往往需要的 RC 值很大,这样不但参数准确度难以保证,而且体积和功耗都很大,而由 数字电路构成的低频信号发生器,虽然其低频性能好但体积较大,价格较贵,因此,高 精度,宽调幅,低价格将成为数字量信号发生器的发展趋势。 信号发生器按其频率的高低,可分为:超低频信号发生器,低频信号发生器,高频 信号发生器,超高频信号发生
11、器,微波信号发生器;按产生波形的不同,可分为:正弦 波信号发生器,脉冲波函数波信号发生器,任意波信号发生器; 按调制方式的不同,可 分为:调频信号发生器(FM) 、调幅信号发生器(AM) ,调相信号发生器(PM) ,脉冲调制 信号发生器;此外,还可以产生两种或多种波形信号发生器。 1.21.2 设计任务及要求设计任务及要求 任务:设计一个方波-三角波-正弦波函数发生器。 要求: 频率范围:10-100HZ。 输出电压:方波 Up-p1V。 幅值、频率可调。 2 2 方案论证与选择方案论证与选择 2.12.1 频率合成器模块频率合成器模块 方案一:采用模拟分立元件或单片压控函数发生器 MAX03
12、8,可产生正弦波、方波、 三角波,通过调整外部元件可改变输出频率,但采用模拟器件由于元件分散性太大,即 使使用单片函数发生器,参数也与外部元件有关,外接的电阻电容对参数影响很大,因 而产生的频率稳定度较差、精度低、抗干扰能力低、成本也高,且灵活性较差,不能实 现任意波形以及波形运算输出等智能化的功能。 方案二:采用程控锁相环频率合成方案。锁相环频率合成是将高稳定度和高精确度 的标准频率经过加减乘除的运算产生同样稳定度和精确度的大量离散频率,在一定程度 上解决了既要频率稳定精确、又要频率在较大范围可变的矛盾,能产生方波,通过积分 电路就可以得到同频率的三角波,再经过滤波器就可以得到正弦波,但不能
13、满足任意波 形的输出要求,功能扩展能力有限。 方案三:利用 BCD 比例乘法器 14527 的级联数控分频对存储器查表,取存放与存储 湖北工业大学商贸学院毕业设计 4 器中的波形数据,经 D/A 转换输出波形。 方案四:采用直接数字频率合成(DDFS)技术产生波形。信号频率范围覆盖超低频 和高频,便于单片机控制。通过计数器的输出作为读取波形存储器 RAM 的地址,将读出 的数据送至 D/A 转换器输出波形。而对计数器的控制也有两种实现方案:通过一定的频 率作用于计数器,使其能循环计数。采用 CPLD 与单片机相结合的方式实现对频率的控制, 利用 CPLD 产生一个相位累加器,通过相位累加器和固
14、定时钟脉冲取样的相位寄存器组成。 经过论证比较,DDFS 与锁相环方案相比,无需相位反馈控制,频率建立及频率切换 快,并且与频率分辨率、频谱纯度相互独立,覆盖频率范围大,精度高,控制性好且容 易实现,有具有功能扩展的能力,故采用这种方案。 2.22.2 存储器模块存储器模块 由于需要产生任意波形,波形数据表需要经常改写且无法预测,故不能存放在 ROM 中。 方案一:使用 CPLD 作为数据的桥梁,将波形先存储在 EPROM 中,同过单片机控制, 将数据传输给 CPLD,再由 CPLD 将数据高速传送给 DAC0800。 方案二:采用 RAM 存储数据,实现简单。但 RAM 不能直接挂在系统总线
15、上,否则必 然出现总线冲突,故采用双口 RAM(IDT7132) 。双口 RAM 有左右两套完全相同的 I/O 口, 即两套数据总线、两套地址总线、两套控制总线,并有一套竞争仲裁电路,可以通过左 右两边任一组 I/O 进行全异步的存储器读写操作,避免了系统总线隔离。减少了单片机 与 CPLD 之间的通信,节省单片机的资源,使系统更为可靠。IDT7132 的存储容量为 2K, 我们在信号的一个周期内只采样 1024 个点,2K 的容量中够。 综合考虑器件的使用性和电路的可靠性,我们决定采用双口 RAM 作为系统的存储器 件。 2.32.3 模拟输出模块模拟输出模块 输出模块要实现数模转换和幅度控
16、制功能,并有一定的后级处理模块,滤除由 DAC 产生的高频分量和采集样点时的高次谐波分量,使输出的波形平滑不失真。 2.42.4 幅度控制部分幅度控制部分 方案一:由数控电位器组成的电阻分压网络控制幅度。 方案二:采用峰值检波器获得输出端的电压幅值,经 A/D 采样后得到输出端当前的 湖北工业大学商贸学院毕业设计 5 电压幅值,然后就得到了输出当前的电压幅值,然后通过与预设的输出幅值比较就可以 知道输出下降的情况。并由单片机控制放大器增加放大倍数,直至输出幅值调整到预期 值。 方案三:采用一级 D/A 转换实现。直接将 DDFS 产生的信号作为参考电压输入到 D/A 中,这样 D/A 就成为一
17、个数控可变增益放大器,通过改变 D/A 的转换数据就可以控制输 出幅度。 方案四:数模转换和幅度控制部分采用双 D/A 技术,由单片机控制,第一级 D/A 的 输出波形作为第二级 D/A 的基准电压源,以此来控制信号发生器的输出电压幅度。这种 方法电路简单,通过软件控制,可控性强,故采用这种方案。 2.52.5 后级滤波部分后级滤波部分 方案一:采用二阶切比雪夫低通滤波器。切比雪夫低通滤波器的幅度响应在通带内 是在两个值之间波动,在通带内的波动次数取决于滤波器的阶数。理想的切比雪夫低通 滤波器近似在靠近截止频率的部分有比巴特沃兹滤波器更接近矩形的频率响应。 方案二:采用二阶巴特沃兹滤波器。巴特
18、沃兹滤波器的幅度函数是单调下降的,但 巴特沃兹滤波器能实现最大平坦幅度滤波。 由于信号发生器的输出波形中的主要噪声为 D/A 转换产生的高频分量,与设计的频 率范围相差很远,所以相对来说,滤波器在频带内的平坦程度比其衰减陡度更为重要, 而且巴特沃兹滤波器的元件值也较合乎实际情况,不像其他类型滤波器对元件值要求那 么苛刻。基于上述考虑,决定采用二阶巴特沃兹滤波器。 经过讨论最终采用以下方案实现信号发生器的设计:采用 CPLD 与单片机结合利用 DDFS 技术进行频率合成,将波形数据存储在双口 RAM 中,采用双片 D/A 实现稳幅输出, 并经过二阶巴特沃兹滤波器进行滤波,相关信息通过字符型 LC
19、D 显示。 3 3 系统总体设计方案及实现方框图系统总体设计方案及实现方框图 单片机 89S52 作为核心控制模块,向波形表存储器写入波形数据,并控制前级 D/A 输出第二级 D/A 的基准电压,从而调节输出波的幅度。CPLD 中集成了 BUS 模块以实现其 他外围部件同单元片机的通信,DDS 用来接收单片机的步进值,累加后产生读取 RAM 中波 形表的地址信号,可产生需要的频率值,经 D/A 转换和低通滤波器输出。键盘和 LCM 用 来实现人机交换,键盘可设置波形类型和频率值,键入步进和扫描控制信号,LCD 则显示 湖北工业大学商贸学院毕业设计 6 相应的波形和频率值。 89S52 人机 交
20、换 BUS 模块 DDS模块 波形表 存储器 D/A前级D/ALPF 键盘 LCM 图 2.1 系统总体框图 4 4 理论分析与计算理论分析与计算 本系统要求产生 0.1Hz200kHz 的正弦波、方波和三角波。我们采用 DDS 方式来控 制频率,输出频率的计算公式如下: 22 osc out NAddr fK f * = * 式中为系统时钟频率,我们采用 4.194304M 的晶振。为由单片机提供给 osc f K CPLD 的频率控制字,通过值的变化可以改变输出频率值。 (N+Addr) 为相位累加器和 K 存储器的位数,Addr 为给 RAM 的地址。由于 CPLD 资源的限制,我们最高
21、可取为 24 位。 Addr 为给 RAM 的地址我们取为 8 位。则通过计算可将上式简化为: 22 24 2 24 out KK f * = 这样最低只能输出 0.25Hz 的波,最小步进为 0.25Hz。 IDT7132 的容量为 2K,我们在一个周期内采样 1024 个点,只需要 1K 的容量,这 样可以兼顾波的质量和存储器的容量。 5 5 主要功能电路的设计主要功能电路的设计 5.15.1 单片机的介绍单片机的介绍 (1)最小单片机系统 AT89S52 的引脚图如图 3-2 所示 out 湖北工业大学商贸学院毕业设计 7 图3-2 AT89S52引脚图 管脚说明 低频信号发生器采用 A
22、T89S52 单片机作为控制核心,其内部组成包括:一个 8 位的 微处理器 CPU 及片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接;片内数 据存储器 RAM 低 128 字节,存放读/写数据;高 128 字节被特殊功能寄存器占用;片内程 序存储器 4KB ROM;四个 8 位并行 I/O(输入/输出)接口 P3 -P0,每个口可以用作输入, 也可以用作输出;两个定时/计数器,每个定时/计数器都可以设置成计数方式,用以对 外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机 控制;五个中断源的中断控制系统;一个全双工 UART(通用异步接收发送器)的串行 I/O
23、 口。 VCC:供电电压。 GND:接地。 RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字 节。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期 两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出现。 /EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH) ,不管 是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高 电平时,此间内部程
24、序存储器。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源 湖北工业大学商贸学院毕业设计 8 (VPP) 。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 89S52 单片机外部有 32 个端口可供用户使用,其功能如下: 表 3-1 89S52 并行 I/O 接口 第一功能第二功能端口引脚 位置 符号 功能符号功能 P039-32P0.0-P0.7 通用 I/0 口 AD0-AD7 地址数据总线 P11-8P1.0-P1.7 通用 I/0 口 P221-28P2.0-P2.7 通用 I/0 口 A8-A15 地址总线(高位) 10P
25、3.0RXD 串行通信发送口 11P3.1TXD 串行通信接收口 12P3.2INT0 外部中断 0 13P3.3INT1 外部中断 1 14P3.4T0 计数器 0 输入端口 15P3.5T1 计数器 1 输入端口 16P3.6WR 外部存储器写功能 P3 17P3.7 通用 I/0 口 RD 外部存储器读功能 P0 口:P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。当 P1 口的 管脚第一次写 1 时,被定义为高阻输入。 P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4TTL 门电流。 P2 口:P2 口为一个
26、内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。 P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门电流。 P3 口也可作为 AT89C51 的一些特殊功能口,如下所示: 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断 0) P3.3 /INT1(外部中断 1) P3.4 T0(记时器 0 外部输入) 湖北工业大学商贸学院毕业设计 9 P3.5 T1(记时器 1 外部输入) P
27、3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3 口同时为闪烁编程和编程校验接收一些控制信号。 AT89S52 的晶振及其连接方法 CPU 工作时都必须有一个时钟脉冲。有两种方式可以向 89S52 提供时钟脉冲:内部时 钟方式,即使用晶振由 89S52 内部电路产生时钟脉冲。 图 3-3 89S52 的时钟脉冲 图 33 中:J 一般为石英晶体,其频率由系统需要和器件决定,在频率稳定度要求 不高时也可以使用陶瓷滤波器。 C1、C2:使用石英晶体时,C1=C2=30(10)pF 使用陶瓷滤波器时,C1=C2=40(10)pF AT89S52 的复位 使 CP
28、U 开始工作的方法就是给 CPU 一个复位信号,CPU 收到复位信号后将内部特殊功 能寄存器设置为规定值,并将程序计数器设置为“0000H” 。复位信号结束后,CPU 从程序 存储器“0000H”处开始执行程序。89S52 为高电平复位。 图 3-4 为最简单的上电复位和手动复位方法。 湖北工业大学商贸学院毕业设计 10 图 3-4 89S52 的复位电路 5.25.2 资源分配资源分配 软、硬件设计是设计中不可缺少的,为了满足功能和指标的要求,资源分配如下 1.晶振采用 12MHZ; 2.内存分配 P1 口的 P1.0-P1.3 分别与四个按键连接,分别控制锯齿波、三角波、正弦波和方波, P
29、1.4-P1.7 与四个发光二极管相连,按键一对应发光二极管一,依次类推,发光二极管四 对应按键四,实现输出一个波形对应亮一个灯。 P0 口与 DAC0832 的 DI0-DI7 数据输入端相连。 P2 口用来控制 DAC0832 的输入寄存器选择信号 CS、输入寄存器写选通信号 WR1 及 DAC 寄存器写选通信号 WR2 和数据传送信号 XFER。 5.35.3 各部分电路原理各部分电路原理 (A)DAC0832 芯片原理 管脚功能介绍(如图 3-5 所示) 89S52 湖北工业大学商贸学院毕业设计 11 图 3-5 DAC0832 管脚图 (1) DI7DI0:8 位的数据输入端,DI7
30、 为最高位。 (2) IOUT1:模拟电流输出端 1,当 DAC 寄存器中数据全为 1 时,输出电流最大,当 DAC 寄存器中数据全为 0 时,输出电流为 0。 (3) IOUT2:模拟电流输出端 2, IOUT2 与 IOUT1 的和为一个常数,即 IOUT1IOUT2常数。 (4) RFB:反馈电阻引出端。 (5) VREF:参考电压输入端,它决定 0 至 255 的数字量转化出来的模拟量电压值的 幅度,VREF 范围为(+10-10)V。 (6) Vcc:芯片供电电压,范围为(+5 15)V。 (7) AGND:模拟量地,即模拟电路接地端。 (8) DGND:数字量地。 (B) LM32
31、4 工作原理 (管脚功能如图 3-8 所示) 图 3-8 LM324 管脚图 湖北工业大学商贸学院毕业设计 12 LM324 时四运放集成电路 ,的内部包含四组形式完全相同的运算放大器,除电源共 用外,四组运放相互独立。LM324 的引脚排列见图 9。 在此项目中用了 LM324 的三组运放,分别置于第一级输出,第一、二级之间,第二 级输出。 (C)MC1403 工作原理 (管脚功能如图 3-9 所示) 图 3-9 MC1403 管脚图 MC1403 是低压基准芯片。一般用作 8 到 12bit 的 D/A 芯片的基准电压等一些需要基 本精准的基准电压的场合。 输出电压:2.5V+/-25Mv
32、 输入电压范围:4.5Vto40V 输出电流:10Ma 在此项目里 MC1403 起到了稳压的作用,它基准了 DAC0832 的 8 脚需要的 2.5V。使其 DAC0832 能够正常工作。 5.55.5 单片机的设计单片机的设计 单片机是系统的控制中心,它主要实现以下的功能:一方面控制 LCD 显示输入控制 信息,控制按键识别和功能选择;另一方面与 CPLD 结合,实现直接频率合成。单片机提 供 CPLD 的控制端口,对 CPLD 内部实现控制和选择,配合对双口 RAM 内存储数据的读取; 另外单片机和一片 D/A 相连,实现对 D/A 的控制。 5.65.6 CPLDCPLD 的设计的设计
33、 在 CPLD 内部形成 DDFS 所需的相位累加器。逻辑电路如下图示: 湖北工业大学商贸学院毕业设计 13 图 4.1 DDS 频率控制示意图 另外,单片机和双口 RAM 通信时 P0 口提供低八位地址所需要的锁存器 LS373 也在 CPLD 内部实现,减少硬件。如下图所示: Ale Din7.0 Dout7.0 ls373 inst2 VCC ALE INPUT VCC P07.0 INPUT ADDR7.0 OUTPUT 图 5.2 LS373 的 Verilog 实现图 CPLD 还实现键盘扫描的功能。 5.75.7 RAMRAM 电路的设计电路的设计 波形存储器使用双口 RAM I
34、DT7132 实现。IDT7132 存储容量为 2KB,具有两套输入 输出控制端口和两套数据端口,这两套端口功能对等,分别有使能和读写有效控制端。 IDT7132 比普通的单口 RAM 还多一个忙标志位,用来控制两套端口是否在对一个存储单元 操作,同时操作会造成冲突。IDT7132 的具体应用电路如图 4.4 所示。 图 5.3 IDT7132 应用电 路 湖北工业大学商贸学院毕业设计 14 左侧的地址线和数据线由单片机控制,在上电时向 RAM 里面写入波形表数据。右侧 的地址线由 DDS 相位累加器的高 8 位控制,数据口直接输出波形数据给 DAC0800 产生波 形。 5.85.8 D/A
35、D/A 转换模块的设计转换模块的设计 D/A 转换用 DAC0800,我们采用两片 0800,第一片直接和单片机的 P1 口连接,输 出另一片 0800 的基准电压,从而控制输出波的幅度。第二片则和 RAM 的输出连接,通过 DDS 的输出地址的改变可读取波形数据,最后输出波形。D/A 转换电路图如下: 图 5.4 D/A 转换原理图 5.95.9 后级滤波模块的设计后级滤波模块的设计 滤除波形中由 D/A 产生的高频分量,根据实际情况设计低通滤波器,采用两级高通 级联来提高 Q 值。根据设计表,综合考虑取 R1=1.5k,R2=3.3k+50k 的电位器,C1、 C2 分别取 301 和 1
36、01 的电容。 5.105.10 人机交互界面的设计人机交互界面的设计 我们采用 44 键盘,矩阵式连接,当有键按下时,CPLD 通过编码判断键的位置, 并发生中断请求,由单片机执行相应操作。电路如下: P2_7 CLK CS RD Dout7.0 INT0 KC3.0 KR3.0 ScanKey inst1 VCC P2_7 INPUT VCC CLK INPUT VCC CS INPUT VCC RD INPUT KC3.0 OUTPUT KR3.0 OUTPUT Dout7.0 OUTPUT INT0 OUTPUT 图 5.6.a 键盘扫描的 Verilog 实现 LCD 的控制电路如下
37、图所示: NAND2 inst4 NAND2 inst5 NOT inst2 VCC RD INPUT VCC WR INPUT VCC P2_7 INPUT E OUTPUT 湖北工业大学商贸学院毕业设计 15 图 5.6.b LCD 控制的 Verilog 实现 6 6 系统软件的设计系统软件的设计 6.16.1 单片机内部的程序流程图:单片机内部的程序流程图: 0 1 2 56 8 9 10 12 3 7 1 2 3 11 14 15 LC D 4 4 6.2Verilog6.2Verilog HDLHDL 程序:程序: CPLD 内部实现 DDS 的功能,其电路如下: 湖北工业大学商贸
38、学院毕业设计 16 P2_7 Control_Data7.0 Adr1.0 CS WR Clk OUT_Address10.0 DDS inst7 VCC P2_7 INPUT VCC Dout1.0 INPUT VCC P07.0 INPUT VCC Dout2 INPUT VCC WR INPUT VCC CLK INPUT OUT_Address10.0 OUTPUT Dout2 WR 图 6.1 DDS 的 Verilog 实现 DDS 的源程序如下: module DDS(P2_7, CS, /片选口 WR, Control_Data, /频率控制字 Adr, OUT_Address
39、, /输出地址,从 RAM 读数 Clk); input P2_7; input 7:0 Control_Data; input 1:0 Adr; input CS,WR,Clk; output 10:0 OUT_Address; reg 23:0 counter; reg 23:0 Address; always (posedge Clk) begin Address=Address+counter; end always (negedge WR) begin if(!CS) 2d1: counter15:8=Control_Data; 2d0: counter7:0=Control_Dat
40、a; default:counter=counter; endcase end assign OUT_Address=Address23:13; 湖北工业大学商贸学院毕业设计 17 endmodule 7 7 测试数据与分析测试数据与分析 7.17.1 测试仪器测试仪器 Tektronix TDS 1002 双信道数字示波器,SG173SB3 直流稳压稳流电源,Agilent 33120A 信号发生器,FLUKE17B 型 4 位数字万用表。 7.27.2 指标测试指标测试 采用分级调试的方法,分别对 D/A,双口 RAM,以及滤波电路进行了测试。发现 D/A 不能正常工作,我们先对 I/V
41、转换进行检查,运放没问题,后来发现运放的反馈电阻太 大,将其调小后可正常工作,输出幅度为基准电压的值,且为双极性输出。整体测试, 输出波形不好,我们在 D/A 转换和运放的电源处加了去耦电容,取得了不错的效果。由 于我们用的是 4.19M 的晶振,在高频时波形很差,我们加了中心频率在 250Hz 的无源低 通滤波器,波形质量很好。 测得频率数据表如下: 表 1 正弦波的频率测量结果 f(set)f(set)0.250.250.50.50.750.751 12 25 51010 f(sin)0.24990.49990.74990.9991.9994.9959.998 f(set)f(set)50
42、50100100500500100010002000k2000k5k5k10k10k f(sin)49.999199.9982499.991999.9821.9999k4.9999k9.9998k f(set)f(set)20k20k50k50k100k100k120k120k150k150k180k180k200k200k f(sin)19.999749.999199.9981119.998149.9981179.981199.981 7.37.3 误差分析说明误差分析说明 由于 DDFS 的工作原理是基于数字取样及数模恢复的处理,所以输出的模拟信号中 必然会有杂散噪声,其来源主要有以下三个方面的因素: 7.3.17.3.1 相位误差相位误差 (1)相位舍位引起的误差。在 CPLD 中,由于累加器的位数 N 大于 RAM 的寻址位数 W,使得累加器在输出寻址 RAM 时,其 N-W 个低位必然会舍去,因此会不可避免地产生相 位截断误差。该误差是 CPLD 输出散杂的主要原因。 (2)相位量化误差。由于我们的波形是通过一系列有限的离散采样点表示的,这 就不可避免的引入相位量化误差。增加采样点数可以减少这种误差。我们的设计中,在 输出波形时,C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能穿戴设备压力传感器工程师岗位招聘考试试卷及答案
- 潮玩设计辅助技师考试试卷及答案
- 产后康复技师试卷及答案
- 区域医疗资源整合:线上线下协同策略
- 区域内肾脏检验结果互认标准实施
- 区块链技术在内镜检查数据共享中的风险防控
- 火灾应急管理制度和预案(3篇)
- 海珠降水施工方案(3篇)
- 双电源开关管理制度(3篇)
- 护栏样板施工方案(3篇)
- GB/T 44328-2024七氟异丁腈
- DL∕ T 736-2010 农村电网剩余电流动作保护器安装运行规程
- DL/T 5352-2018 高压配电装置设计规范
- 高一年级语文期中考试试卷
- solidworks入门经典教程课件
- 变电站消防培训课件
- 《中央企业合规管理办法》逐条解读
- 《无线局域网技术与实践》(易丽华)件 模块6 大型WLAN优化
- 跨境电商通关实务(第2版)全套教学课件
- 高三行事历具体安排
- 安徽上尚品茶业有限公司新茶饮、中药提取及食品加工生产线项目环境影响报告表
评论
0/150
提交评论