毕业设计(论文)EPM7128多功能系统(一)

上传人:沈*** 文档编号:82057963 上传时间:2022-04-28 格式:DOC 页数:46 大小:649.55KB
返回 下载 相关 举报
毕业设计(论文)EPM7128多功能系统(一)_第1页
第1页 / 共46页
毕业设计(论文)EPM7128多功能系统(一)_第2页
第2页 / 共46页
毕业设计(论文)EPM7128多功能系统(一)_第3页
第3页 / 共46页
点击查看更多>>
资源描述
天津职业技术师范大学Tianjin University of Technology and Education毕 业 设 计专 业: 电子科学与技术 班级学号: 电科0601 07号 学生姓名: 指导教师: 二一年六月天津职业技术师范大学本科生毕业设计EPM7128多功能系统(一)multi-function system design based on EPM7128 专业班级:电科0601班学生姓名:指导教师:学 院:电子工程学院2010 年 06 月摘 要应用Altera公司推出的CPLD:Max7000S系列的EPM7128SLC84-15芯片为主控制器,设计完成一个简易的EPM7128多功能系统,其硬件结构包括:BEEP模块、直流电机与步进电机驱动模块、七段数码管显示模块、按键及LED模块、红外通信模块、串行ADDA模块、RS232串口通信。程序设计过程中,首先对每一部分编写一个简单的控制程序,可作为后来综合程序设计的底层程序。该系统除了可以实现输入输出实验、LED数码管显示实验、蜂鸣器声响实验、频率计实验等基本的实验功能还可派生出键控灯、表决器、优先编码器和计时钟表等复杂实验功能。系统完成后用户可把已编译好的用户代码直接写入目标电路板上的CPLD芯片中,而不需要从电路板上取下CPLD芯片。下载后直接调试,免去了调试时由于频繁地插入取出芯片对芯片和电路板带来的不便,该多功能系统成本相对较低,可用于学生对EDA技术的自主学习。此次设计我与同学组队,在本文中主要完成的是BEEP模块、七段数码管显示模块、按键及LED模块、AD模数转换等模块的软件调试以及各部分及主控制器的电路制作。关键词: CPLD;多功能;EDA 技术;ABSTRACTApplication Altera company CPLD : EPM7128SLC8415 chip of Max7000S series to be controller.Designing and completing a simple EPM7128 multifunctional system.Its hardware structure includes:BEEP module, dc motor and stepping motor driver module, 7 digital display module, buttons and tube LED module, infrared communication module, serial AD/DA module and RS232 serial communication. During the design process, first of each part to write a simple control program, but as a comprehensive program design on the bottom of the later procedure. The system besides can realize the input/output experiment, LED digital display, buzzer sounds tube experiments, the frequency of experiment, experiment of basic experimental function can derive keying lamp, veter, priority encoder and timing clocks complex experiments. After completion of the system can already compiled code directly into target users on the boards, but not CPLD chip to remove from PCB CPLD chip. Download directly after commissioning, debugging due to frequent inserted to chip and remove chip board inconvenience, The multifunctional system is relatively low cost and can be used for students to learn autonomously EDA.The design is made by a team member and me.In this article mainly finish 5 modular circuit,such as Beep modular,the nixie display indicator modular,the despressed key and led display modular,as well as the A/D analog-to-digital conversion cirduit modular act.After the hardware welding,I am going to propram every part of the hardware.Key Words:CPLD; multi-functional;EDA technology;目录1绪论11.1EDA技术简介11.2EDA技术的发展11.3EDA技术的应用22EPM7128多功能系统的设计思路及方案论证32.1EPM7128多功能系统的设计思路32.2EPM7128多功能系统的方案论证33EPM7128多功能系统的部分硬件设计53.1EPM7128SLC84-15芯片的最小系统53.1.1复位电路63.1.2时钟电路73.2按键及LED电路83.3蜂鸣器电路93.4七段数码管显示电路103.5并行AD电路113.5.1ADC0809的内部逻辑结构图113.5.2引脚结构123.6下载器USB Blaster144EPM7128多功能系统的部分软件设计174.1软件平台174.2程序整体控制184.3程序仿真结果分析194.3.1按键与发光二极管测试(车尾灯模拟)194.3.2beep测试(电子琴)204.3.3数码管测试(定时器)204.3.4ADC0809模数转换21结 论22参考文献23附录一: 元件清单24附录二: 电路原理图25附录三: 部分程序清单26致 谢40天津职业技术师范大学2010届本科生毕业设计1 绪论 1.1 EDA技术简介EDA是指以计算机为工作平台,融合应用电子技术、计算机技术、智能化技术最新成果而研制成的电子CAD通用软件包,主要能辅助进行三方面的设计工作:IC设计,电子电路设计,PCB设计。没有EDA技术的支持,想要完成上述超大规模集成电路的设计制造是不可想象的,反过来,生产制造技术的不断进步又必将对EDA技术提出新的要求。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出PCB版图的整个过程的计算机上自动处理完成。1.2 EDA技术的发展回顾近30年电子设计技术的发展历程,可将EDA技术分为三个阶段。二十世纪七十年代为CAD阶段,人们开始用计算机辅助进行IC版图编辑、PCB布局布线,取代了手工操作,产生了计算机辅助设计的概念。二十世纪八十年代为CAE阶段,与CAD相比,除了纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计,这就是计算机辅助工程的概念。CAE的主要功能是:原理图输入,逻辑仿真,电路分析,自动布局布线,PCB后分析。二十世纪九十年代为ESDA阶段,尽管CAD/CAE技术取得了巨大的成功,但并没有把人从繁重的设计工作中彻底解放出来。在整个设计过程中,自动化和智能化程度还不高,各种EDA软件界面千差万别,学习使用困难,并且互不兼容,直接影响到设计环节间的衔接。基于以上不足,人们开始追求:贯彻整个设计过程的自动化,这就是ESDA即电子系统设计自动化。从二十世纪九十年代开始,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已经得到了广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计一样方便快捷。这些极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。1.3 EDA技术的应用EDA技术发展迅猛,逐渐在教学、科研、产品设计与制造等各方面都发挥着巨大的作用。在教学方面:几乎所有理工科(特别是电子信息)类的高校都开设了EDA课程。主要是让学生了解EDA的基本原理和基本概念、使用EDA工具进行电子电路课程的模拟仿真实验并在作毕业设计时从事简单电子系统的设计,为今后工作打下基础。在科研方面:主要利用电路仿真工具进行电路设计与仿真;利用虚拟仪器进行产品调试;将CPLDFPGA器件的开发应用到仪器设备中。在产品设计与制造方面:从高性能的微处理器、数字信号处理器一直到彩电、音响和电子玩具电路等,EDA技术不单是应用于前期的计算机模拟仿真、产品调试,而且也在电子设备的研制与生产、电路板的焊接过程等有重要作用。可以说电子EDA技术已经成为电子工业领域不可缺少的技术支持。现在对EDA的概念或范畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。该系统正是应用Altera公司推出的Max7000S系列的EPM7128SLC84-15芯片,在Quartus II软件上进行EPM7128的多功能系统的程序开发,测试系统硬件设计的合理性与正确性。本系统完成后可用于学生对EDA技术的自主学习。40天津职业技术师范大学2010届本科生毕业设计2 EPM7128多功能系统的设计思路及方案论证2.1 EPM7128多功能系统的设计思路Xilinx公司的FPGA与Altera公司的CPLD是在PAL和GAL等逻辑器件的基础之上发展起来的,同以往的PAL和GAL等相比, 它们除了具有ASIC的特点之外,还具有以下几个优点控制功能越来越强,亦可实现系统集成设计人员只需在实验室里就可通过相关的软硬件环境完成芯片的最终功能设计,节省了许多潜在的花费用户可反复地编程-擦除,可随时实现不同的控制功能; 软件包中有各种输入工具、仿真工具、版图设计工具和编程器等全线产品,电路设计人员在很短的时间内就可完成电路的输入、编译、优化、仿真,直至最后芯片的制作。这些优点使得硬件电路的设计过程大大简化,在实际应用中有着重要的作用。对于电子专业的学生是非常有必要学习可编程逻辑器件的设计流程与应用的。但是现在市场上有的实验板或试验箱的价格都很高,对学生学习来说并不合算,因此我们应用Altera公司推出的CPLD:Max7000S系列的EPM7128SLC84-15芯片为主控制器,设计完成一个简易的EPM7128多功能系统,其成本相对较低,系统完成后可用于学生对EDA技术的自主学习。2.2 EPM7128多功能系统的方案论证FPGA (现场可编程门阵列)与CPLD (复杂可编程逻辑器件)都是可编程逻辑器件,应用这两种芯片用户可以反复地编程、擦除、使用或者在外围电路不动的情况下用不同软件就可实现不同的功能。当电路有少量改动时,更能显示出FPGACPLD的优势。尽管FPGA和CPLD都是可编程ASIC器件,有很多共同特点,但由于CPLD和FPGA结构上的差异,具有各自的特点:CPLD更适合完成各种算法和组合逻辑, FPGA更适合于完成时序逻辑。换句话说,更适合于触发器丰富的结构,而CPLD更适合于触发器有限而乘积项丰富的结构。CPLD的连续式布线结构决定了它的时序延迟是均匀的和可预测的,而FPGA的分段式布线结构决定了其延迟的不可预测性。在编程上FPGA比CPLD具有更大的灵活性。CPLD通过修改具有固定内连电路的逻辑功能来编程,主要通过改变内部连线的布线来编程;FPGA可在逻辑门下编程,而CPLD是在逻辑块下编程。FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现。CPLD比FPGA使用起来更方便。CPLD的编程无需外部存储器芯片,使用简单。而FPGA的编程信息需存放在外部存储器上,使用方法复杂。CPLD的速度比FPGA快,并且具有较大的时间可预测性。这是由于FPGA是门级编程,并且CLB之间采用分布式互联,而CPLD是逻辑块级编程,并且其逻辑块之间的互联是集总式的。在编程方式上, CPLD主要是基于E2PROM或FLASH存储器编程,编程次数可达1万次,优点是系统断电时编程信息也不丢失。CPLD又可分为在编程器上编程和在系统编程两类。FPGA大部分是基于SRAM编程,编程信息在系统断电时丢失,每次上电时,需从器件外部将编程数据重新写入SRAM中。CPLD保密性好, FPGA保密性差。一般情况下, CPLD的功耗要比FPGA大,且集成度越高越明显。CPLD 的I/O数目多。 综上所述,通过比较我们采用CPLD芯片来完成设计。天津职业技术师范大学2010届本科生毕业设计3 EPM7128多功能系统的部分硬件设计EPM7128多功能系统包括EPM7128SLC84-15芯片的最小系统、LED与BEEP模块、直流电机与步进电机驱动模块、七段数码管显示模块、单独按键模块、红外通信模块、并行ADDA模块、RS232串口通信。硬件系统组成框图如图3-1。 LED显示模块BEEP声音提示单独按键输入直流电机和步进电机驱动模块MAX7000SEPM7128SLC84-15七段数码管显示模块并行AD/DA转换模块RS232串口通信红外通信模块图3-1硬件系统组成EPM7128多功能系统(一)中需要完成的部分硬件包括EPM7128SLC84-15芯片的最小系统、BEEP模块、七段数码管显示模块、按键及LED模块、并行AD模块。3.1 EPM7128SLC84-15芯片的最小系统EPM7128SLC84-15芯片的最小系统包括包括复位电路和时钟电路。在各个引脚都引出排针,根据程序的不同引脚功能设置,其I/O口可作为输入/输出端口。EPM7128SLC84-15芯片的管脚分布如图3-2。EPM7128SLC84-15芯片要工作需要给芯片提供电源,其与普通的芯片的供电方式不同。普通芯片的供电引脚只有一个正电源引脚和一个接地引脚。但EPM7128SLC84-15芯片的正电源引脚和接地引脚都不止一个,其接法如图3-2所示。芯片编程时与程序下载器的接口只有四个,接法十分简单。芯片总共有84个引脚,除去正电源和接地引脚以及下载接口引脚,剩下的引脚都可作为I/O口使用,所以芯片的I/O接口资源十分的丰富。在设计芯片正常工作所需要的最小系统时只需要将时钟电路输出的脉冲通过其中一个I/O口输入到芯片就可以了。系统简单易行,方便快捷。图3-2 EPM7128SLC84-15芯片的管脚分布3.1.1复位电路Max7000S系EPM7128SLC84-15芯片在断电后程序会自动复位,所以为了减少设计的时间和空间,我们用主控制芯片的电源电路兼做复位电路。图3-3是电源电路的实物图,图中的USB接口可连接计算机为电路提供5V的电压,而按键开关可以方便的断开电源:当按键按下时,电路导通,发光二极管点亮,在电路右边的VCC端口和GND端口输入的电压为整个系统提供+5V的电压;当按键抬起时,电路断开,发光二极管熄灭,整个系统处于掉电状态,可实现电路的复位。LED灯可以指示电源的通断状态,用于判断电路是否处于正常状态。在电路中的100uF的电解电容和0.22uF的无极性电容接在正电源和地之间,起到滤波作用,减少电源产生的脉冲对系统的误差影响。图3-3电源电路3.1.2时钟电路电路中采用的是16.384MHz的有源晶振。有源晶振有4只引脚,是一个完整的振荡器,其中除了石英晶体外,还有晶体管和阻容元件,为四角方形或矩形金属盒子,看着标称一面(顶),左下空脚,右下地,左上VCC(5V),右上输出。有源晶振通常的用法:一脚接电压,二脚悬空,三脚接地,四脚接输出。有源晶振不需要处理器的内部振荡器,信号质量好,比较稳定,而且连接方式相对简单,但是有源晶振的VCC端不要直接接VCC,要做好电源滤波。因此在设计电路时在电源正极和负极之间并入一个大容量电容和一个小容量电容,可以去除电源对有源晶振信号输出的干扰。晶振选用16.384MHz是由于在编程时要转为1S的时钟,需要将16.384MHz经过二进制数“111110100000000000000000”次分频得到1Hz的脉冲,这样脉冲的宽度为1S。此分频数十分的精确,所以我们得到的1S时间也十分的精确。图3-4为系统时钟电路图。图3-4时钟电路3.2 按键及LED电路主板上有8个独立的按键和8个独立的发光二极管,电路如图3-5所示。图3-5(a)是8个独立的按键都串接一个电阻后接在低电平上,电阻RP1和RP2为上拉电阻。系统正常工作后,按键未按下时,由于RP1、RP2上拉电阻的作用使得主控芯片上连接按键的I/O口都始终为高电平;当按键按下后,主控芯片上的I/O口相当于经过一个小电阻后直接接地,所以显示为低电平。所以电路中按键以低电平向主控芯片传递信号。电路中电阻RP3、RP4与主控制芯片EPM7128SLC84-15的I/O口相连,在电路中起到保护芯片的作用,即在主控制芯片EPM7128SLC84-15的IO设为输出且为高电平在按键按下时,由于电阻RP3、RP4的接入,避免了主控制芯片直接对地短路。在调试过程中,一旦发生主控芯片对地短路,将造成主控芯片的烧毁,加大设计成本,所以电阻RP3、RP4的正确焊接十分重要。图3-5(b)是8个独立的发光二极管电路,发光二极管的阳极都并联在电源正极上,阴极经过一个电阻后接在主控芯片的I/O口上。根据二极管的单向导电性,只有当发光二极管的阴极为低电平时可点亮发光二极管,因此在程序编译时,当与发光二极管相连的主控芯片I/O口上输出低电平时发光二极管正常发光,而输出为高电平时发光二极管熄灭。一般发光二极管的压降约为1.7V。其点亮时的电流ILED=(VDVLED)R=(51.7)V220=0.015A。电流在点亮LED灯的安全范围内,即可以将LED灯点亮又不会使其过流击穿。图3-5(a)8位独立按键电路图3-5(b)8位独立发光二极管电路3.3 蜂鸣器电路如图3-6所示,交流蜂鸣器用PNP三极管进行驱动控制。蜂鸣器接在PNP型三极管8550的集电极,而三极管的射极接高电平,要驱动蜂鸣器就要使三极管8550导通,此时三极管的基极要输入低电平。三极管8550的基极与主控芯片相连,所以在编译程序时只要在基极上写入低电平蜂鸣器响,写入高电平蜂鸣器停止工作。当输入一定频率的脉冲时,蜂鸣器蜂鸣,且输入频率不同,蜂鸣器的响声也不同。因此在设计过程中利用一个PWM(脉宽调制波)来控制蜂鸣器,通过改变PWM的频率来得到不同的声响。蜂鸣器的不同响声可以对应五线谱上的音符,由此可以做成简易电子琴,用于播放音乐。图3-6蜂鸣器电路3.4 七段数码管显示电路显示电路采用四位一体的共阳型LED七段数码管来显示。四位一体的数码管没有datasheet,掌握其管脚分布很重要。数码管内部单元单位红色的发光二极管,其内部段已连接好,引脚如图3-7 所示。a、b、c、d、e、f、g、dp为段引脚,1、2、3、4分别表示四个数码管的位。编程时,通过设置不同的a、b、c、d、e、f、g、dp点亮顺序,就可以得到不同的数字,而1、2、3、4脚上不同的值可以点亮相应个数的数码管。对于点亮多个数码管在显示时需要编程动态扫描1、2、3、4脚,才可以显示所需的数值。图3-7 四位一体共阳型数码管管脚分布一位数码管在使用超过一个管子时就需要用到译码器以及译码器驱动器,这样使得硬件电路的焊接变得很复杂,大大增加了硬件电路的制作时间。而四位一体的数码管的四个数码管的段应经连接好了,指引出八个段引脚,主控制器可直接对段引脚进行编程控制,同时四个位引脚可直接由8550三极管进行驱动,大大简化了硬件电路,也降低了编程的复杂度。主板上7段数码管显示电路如图3-8所示,R是段码上的限流电阻,位码由于电流较大,采用了三极管驱动。从电路可以看出,数码管是共阳极的,当位码驱动信号为0时,对应的数码管才能操作;当段码驱动信号为0时,对应的段码点亮。图3-8数码管显示电路3.5 并行AD电路ADC0809是带有AD转换器、8路多路开关的以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式AD转换器,可以和单片机直接接口。3.5.1 ADC0809的内部逻辑结构图ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。其工作过程为:假设模拟信号从通道IN0输入到ADC0809内,在地址选择端的使能信号ALE先置高电平,然后地址控制端A、B、C都为零时选择的通道才是IN0。定好模拟信号输入通道后,转换开始标志信号ST置高电平后开始进行模拟信号转换成数字信号。ADC0809芯片的转换频率大概在500K左右。标志转换结束的信号端口是EOC,当其输出高电平时,模数转换完毕。此时转换得到的数字数据全部被送到三态输出锁存器内,当输出使能端OE为高电平时才可以从三态输出锁存器中取走转换完的数据。ADC0809内部逻辑结构图如图3-9所示。8路模拟量开关8路A/D转换器三态输出锁存器地址锁存与译码器IN0IN1IN2IN3IN4IN5IN6IN7ABCALEVREF(+)VREF(-)OEEOCD0D1D2D3D4D5D6D7CLKST图3-9 ADC0809的内部逻辑结构3.5.2 引脚结构IN0IN7:8条模拟量输入通道。ADC0809对输入模拟量要求:信号单极性,电压范围是05V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。地址输入和控制线:4条。ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B和C为地址输入线,用于选通IN0IN7上的一路模拟量输入。通道选择表如下表所示。CBA选择的通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7数字量输出及控制线:11条。ST为转换启动信号。当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。EOC为转换结束信号。当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE1,输出转换得到的数据;OE0,输出数据线呈高阻状态。D7D0为数字量输出线。CLK为时钟输入信号线。因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ。VREF(),VREF()为参考电压输入。图3-10为管脚图。图3-10 ADC0809管脚分布3、使用说明ADC0809内部带有输出锁存器,可以与主控芯片EPM7128SLC84-15直接相连。初始化时,使ST和OE信号全为低电平。送要转换的哪一通道的地址到A,B,C端口上。在CLK端给出一个至少有100ns宽的正脉冲信号。是否转换完毕,我们根据EOC信号来判断。当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给主控芯片EPM7128SLC84-15了。图3-11为AD0809电路连接图。图3-11 AD0809电路连接在对硬件的调试过程中,通过调节电位器R19来改变输入IN0通道的模拟电压值,其他模拟信号输入通道都没有用到都悬空。同时,地址选择控制端A、B、C都接地,实现对IN0通道的选择。D0到D7可以向主控芯片的I/O口传递经模数转换后的数字电压信号,经主控芯片处理后由发光二极管对应的显示出所转换出的数字信号值。3.6 下载器USB BlasterQuartusII软件可直接下载程序,但其用到的下载线接口是计算机上的并口,并口在现在的计算机中已经较少使用,所以不是十分方便。在本设计中我们选用USB接口的下载器USB Blaster。在首次使用USB Blaster时,由于它不是经过windows检测通过的硬件,所以通过自动搜索硬件驱动的途径是没有办法使用USB Blaster。驱动安装过程如下:1、USB Blaster驱动安装USB Blaster首次与PC机相连时会弹出硬件安装向导,此时选择“从列表或指定位置安装(高级)”会进入所需驱动所在文件的选择窗口如图3-12。选择“在搜索中包括这个位置”然后点击浏览选择Altera安装目录下的驱动文件:D:alteraquartus7.2quartusdriversusb-Blaster32bit,点击下一步。由于其未通过windows的检测,所以计算机会给出警示,此时选择仍然继续安装。经过等待后安装完成,点击确定退出。图3-122、QuartusII软件设置打开 QuartusII 软件,新建一个工程并生成配置文件或打开现有工程,点击工具栏的下载图标,出现程序数据下载界面如下,由于没有选择下载线,所以显示“No Hardware”,点击Hardware Setup。如图3-13所示。图3-13安装过 USB Blaster 驱动程序后可在以上Hardware Setup 窗口中的Available Hardware items:栏中看到USB Blaster 下载线的信息,此时用鼠标双击栏中的USB Blaster 字符以选中该下载线。在Curentlyselected hardware 显示的是被选中的下载线, 此时应该显示“USB-BlasterUSB-0”表示当前使用的是USB Blaster 类型下载线。点击 Close 完成下载线配置。回到下载界面可看到USB-Blaster 下载线已被启用,见图3-14。至此下载器安装完成。图3-14天津职业技术师范大学2010届本科生毕业设计4 EPM7128多功能系统的部分软件设计4.1 软件平台该系统的软件部分我们使用QuartusII设计软件进行程序设计,Altera QuartusII 设计软件提供完整的多平台设计环境,它可以轻易满足特定设计的需要。它是可编程片上系统 (SOPC) 设计的综合性环境。Quartus II软件拥有 FPGA 和 CPLD 设计的所有阶段的解决方案。有关 Quartus II 设计流程的图示说明,请参见图4-1。图4-1 Quartus II 设计流程硬件描述语言是EDA技术的重要组成部分,VHDL是作为电子设计主流硬件的描述语言,该多功能系统采用的就是VHDL语言来编写各功能模块的程序。VHDL的英文全名是VHSIC(Very High Speed Integrated Circuit)HardWare Description Language,于1983年由美国国防部发起常见,由IEEE进一步发展并在1987年作为“IEEE标准1076”发布。从此,VHDL成为硬件描述语言的业界标准之一。VHDL作为一个规范语言和建模语言,随着VHDL的标准化,出现了一些支持该语言的行为仿真器。由于创建VHDL的最初目标是用于标准文档的建立和电路功能的模拟,其基本想法是在高层次上描述系统和元件的行为。但到了20世纪90年代初,人们发现VHDL不仅可以作为系统模拟的建模工具,而且可以作为电路系统的的设计工具;可以利用软件工具将VHDL源码自动的转化为文本方式表达的基本逻辑元件连接图,即网表文件。这种方法显然对于电路自动设计是一个极大的推进。很快电子设计领域出现了第一个软件设计工具,即VHDL逻辑综合器,它把标准VHDL的部分语句描述转化为具体电路实现的网表文件。现在VHDL作为IEEE的工业标准硬件描述语言,得到了众多EDA公司的支持,在电子工程领域,已成为实际上的通用硬件描述语言。VHDL语言具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。VHDL具有与具体硬件电路无关和与设计平台无关的的特性,并且具有良好的电路行为描述和系统描述能力,并在语言易读性和层次化结构化设计方面,表现了强大的生命力和应用潜力。因此,VHDL在支持各种模式的设计方法,自顶向下与自底向上或混合方法方面,在面对当今许多电子产品生命周期的缩短,需要多次重新设计以溶入最新技术,改变工艺等方面都表现了良好的适应性。用VHDL进行电子系统设计的一个很大的优点是设计者可以专心致力于其功能的实现,而不需要对不影响功能的与工艺有关的因素花费过多的时间和精力。本文主要完成完成的是BEEP模块、七段数码管显示模块、按键及LED模块、AD模数转换等模块的软件调试以及各部分及主控制器的电路制作。具体程序见部分程序清单。4.2 程序整体控制本文介绍的硬件电路包括BEEP模块、七段数码管显示模块、按键及LED模块、AD模数转换模块,对每个模块的功能进行测试的程序主要有汽车尾灯模拟、数字定时器、电子琴和ADC0809的模拟信号到数字信号的转换控制。这些程序的主要控制关系如图4-2所示。在汽车尾灯模拟实验中,主控制器主要检测的是代表leftside、rightside和shache的三个按键的电平变化,当leftside按键按下输出高电平,则相应的控制左边的发光二极管顺序亮灭;同理可推知另外两个键的电平状态改变时发光二极管的显示结果。 在数字定时器实验中,主控制器的主要检测的是代表dingshi、choose和queding的三个按键的电平变化。当dingshi按键输出低电平,定时器正常计时,相当于一个普通的计时器;当dingshi按键按下输出高电平,定时器将处于定时状态。 在电子琴实验中,主控芯片要对系统时钟进行多次分频,得到所需的所有数据才可以使蜂鸣器发出优美的旋律。在AD模数转换实验中主控芯片根据ADC0809芯片的时序要求,利用VHDL语言编译ADC0809的控制器,然后将转换后的8位数字信号通过8位独立的发光二极管显示。图4-2 程序整体控制关系图4.3 程序仿真结果分析4.3.1 按键与发光二极管测试(车尾灯模拟)按键与发光二极管测试(车尾灯模拟)程序仿真图如图4-2。由图可知,当reset为高电平1时,左边和右边的三盏灯的状态为全亮,即leftlight=”111”和rightlight=”111”;当reset为低电平0且左边三盏灯的控制信号left_side为高电平时,右边的灯依然全亮,而左边的灯在依次循环亮灭;当reset为低电平0且右边三盏灯的控制信号right_side为高电平时,左边的灯依然全亮,而右边的灯在依次循环亮灭;当reset为低电平0、左/右两边的控制信号right_side和left_side都为低电平且刹车的控制信号shache为高电平时,左右两边的灯将同时亮同时灭,说明此时车处于刹车状态,起到警示作用。图4-2按键与发光二极管测试(车尾灯模拟)程序仿真图4.3.2 beep测试(电子琴)电子琴利用的是给交流蜂鸣器加以不同频率的脉冲,由此发出不同的音调。音高与频率的对应关系如下表:|1 | 2 | 3 | 4|5 | 6 | 7 |低音 |261.6Hz |293.7Hz |329.6Hz |349.2Hz | 392Hz | 440Hz |493.9Hz | |中音 |523.3Hz |587.3Hz |659.3Hz |698.5Hz | 784Hz | 880Hz |987.8Hz |高音 |1045.5Hz|1174.7Hz|1318.5Hz|1396.9Hz| 1568Hz | 1760Hz |1975.5Hz|根据音高与频率的对应关系,可得到乐谱的参数:D=F/2K,其中D:参数;F:时钟频率;K:音高频率。程序所选的乐谱所用到的音高有低音5、低音6、中音1、中音2、中音3、中音5、中音6、高音1,利用乐谱参数的计算公式以及系统时钟的频率值可计算出每个音高所对应频率的分频数。在整个乐谱中,我们将每个音的长度设为250ms。部分程序仿真图如图4-3所示。图4-3 beep测试(电子琴歌)部分程序仿真图4.3.3 数码管测试(定时器)程序的思路是利用分频将系统时钟分为1Hz的脉冲,则在计数过程中每加1时间为1S。由于硬件电路中只选用一个4位一体的数码管,所以在显示的过程中最多只能显示分和秒。而分和秒的计数都是记到59就要进位,而且技术用的是十六进制数,所以,当数值为1001、01011001及100101011001时都要加上一个可以满足十六进制进位条件的数:0111、10100111及011010100111。对于dingshi变量的变化可以实现定时状态与正常计时状态的改变。dingshi为低电平正常计时状否则定时状态。当处于定时状态时,queding变量可以选择定时分或者定时秒,而choose变量为上跳沿时选择分或者秒所要定的值,即在59个中进行选择。通过动态扫描来显示数字时钟的值。仿真结果如图4-4所示。图4-4数码管测试(定时器)程序仿真图4.3.4 ADC0809模数转换在硬件电路设计中,我们将模拟信号锁定在IN0通道输入,根据ADC0809的转换要求,芯片要进行正常的转换,需要主控制器给ADC0809的clock端口输入500K左右的脉冲,然后将ale置高,允许进行模数转换,开始转换的标志是star为高。当模数转换进行完毕后,芯片的EOC端将向主控制器输送一个高电平,标志着模数转换的结束。对于转换结果要显示出来,就需要将ADC0809的EN输出使能端置高,否则即使成功的完成模数转换,我们也无法观察到结果。程序的部分仿真结果如图4-5所示。图4-5 ADC0809模数转换程序仿真图天津职业技术师范大学2010届本科生毕业设计结 论本次设计由我与同组成员陈富殷共同完成。我们设计完成的EPM7128多功能系统是一个可用于学生自主学习EDA技术的实验开发板。该系统集多种功能于一体,采用核心板加主板的结构,更换核心板即可实现不同功能,例如将EPM7128的最小系统换成AT89S52单片机的最小系统即可实现单片机的功能,用户也可根据开放的接口来设计自己的核心板,是进行EDA教学实验和科研开发的最佳选择。该系统可实现的基本功能有:蜂鸣器、直流电机与步进电机驱动、七段数码管显示、按键及LED显示、红外通信、串行ADDA转换、RS232串口通信。用户可以根据这些基本功能通过编写相应的程序实现其他一些相对复杂的功能。在EPM7128多功能系统(一)中根据部分硬件的功能设计编写的部分程序(见附录三),经下载调试可以完成车尾灯模拟、电子琴、定时器和模数转换等几个实验。在实际应用中,学生可根据自己的需求完成更多的实验种类。该多功能系统结合了实用性、灵活性、低成本等几个显著优点,方便学生进行有效且有目的性的EDA实验。因此多功能系统电路种类较多,设计完成工作量较大,我们采用小组完成的方式进行分工合作,共同研究制定了具体实施方案后各自完成部分硬件和软件的设计。在此过程中,我们翻阅了大量相关资料,并且不断的对硬件部分进行调试以尽量减少误差,例如电子琴歌的试验中由于频率误差的原因,导致的音准问题。虽然该系统存在一些不足但是对其实用性的影响并不大。参考文献1 李超彪. 基于CPLD 的步进电机细分复合控制器J . 中国机械工程, 2005, 26 (18) : 1647 1650.2 潘松. EDA 技术实用教程第三版M . 北京: 科学出版社, 2006, 302 308.3 宋万杰. CPLD 技术及其应用M . 西安: 西安电子科技大学出版社, 2000, 171 185.4 廖裕评,陆瑞强CPLD数字电路设计M清华大学出版社,20025 李丽国,朱维勇,栾铭.EDA与数字系统设计M.北京:机械工业出版社,2004.6蔡明生.电子设计M.北京:高等教育出版社,2004.7 杨刚.现代电子技术VHDL与数字系统设计M. 北京:电子工业出版社,2004.8 余锡存 曹国华. 单片机原理及接口技术M. 陕西:西安电子科技大学出版社,2000.79 马淑华 王风文. 单片机原理与接口技术.北京邮电大学出版社10 李金平 沈明山. 电子系统设计.电子工业出版社.2000.11 阳昌汉. 高频电子线路. 哈尔滨工程大学出版社.2000.1112 付家才. 单片机控制工程实践技术M. 北京:化学工业出版社,2004.513 张怡典. 单片机应用技术.北京理工大学出版社14 李光飞 谢象佐. 单片机课程设计实例指导. 北京航空航天大学出版社.2004.315 康华光 . 电子技术基础模拟部分. 高等教育出版社. 1998.816 康华光. 电子技术基础数字部分. 高等教育出版社. 1998.8附录一: 元件清单名称数量名称数量电阻USB接口1个302个按键开关9个22024个有源晶振1个4701个 蜂鸣器 1个1K8个 芯片 2K1个 ADC0809 1个10K5个EPM7128SLC84-15 1个电容 排线 若干1041个 排针 若干0.22uF2个10uF1个100uF1个发光二极管 9个晶体三极管5个四位一体数码管1个附录二: 电路原理图附录三: 部分程序清单1、按键与发光二极管测试(车尾灯模拟)library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity deng isport(clk,reset:in std_logic; shache:in std_logic; right_side:in std_logic; left_side:in std_logic; rightlight:out std_logic_vector(2 downto 0); leftlight:out std_logic_vector(2 downto 0);end;architecture beh of deng istype state is (s0,s1,s2);signal current:state:=s0;signal clkk:std_logic;signal clkz:std_logic;beginprocess(clk)variable cnt:integer range 0 to 12000000;variable cnt1:integer range 0 to 1200;beginif rising_edge(clk) then -/分频if cnt=12000000 then clkk=1;cnt:=0;else cnt:=cnt+1;clkk=0;end if;if cnt1=1200 then clkz=not clkz;cnt1:=0;else cnt1:=cnt1+1;end if;end if;end process;process(clkk)beginif reset=1 then -/复位,使灯回到最初状态rightlight=111;leftlight=111;elsif rising_edge(clkk) thencurrentrightlight=110;current=s1;leftlightrightlight=101;current=s2;leftlightrightlight=011;current=s0;leftlightleftlight=110;current=s1;rightlightleftlight=101;current=s2;rightlightleftlight=011;current=s0;rightlight=111;end case;elsif shache=1 then -/刹车时clkz为高时灯全灭,否则全亮if clkz=1 then rightlight=000;leftlight=000;elsif clkz=0 then rightlight=111; leftlight=111;end if;end if;end if;end process;end;2、beep测试(电子琴歌)-/音高与频率的对应关系-/-/|1 | 2 | 3 | 4|5 | 6 | 7 |-/|低音 |261.6Hz |293.7Hz |329.6Hz |349.2Hz | 392Hz | 440Hz |493.9Hz | -/|中音 |523.3Hz |587.3Hz |659.3Hz |698.5Hz | 784Hz | 880Hz |987.8Hz |-/|高音 |1045.5Hz|1174.7Hz|1318.5Hz|1396.9Hz| 1568Hz | 1760Hz |1975.5Hz|-/-LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_Arith.ALL;USE IEEE.STD_LOGIC_Unsigned.ALL;USE IEEE.NUMERIC_STD.ALL;ENTITY beep2 ISGENERIC(-/乐谱参数:D=F/2K (D:参数,F:时钟频率,K:音高频率)L_5:Integer:=20898;-低音5L_6:Integer:=18618;-低音6M_1:Integer:=15655;-中音1M_2:Integer:=13947;-中音2M_3:Integer:=12425;-中音3M_5:Integer:=10448;-中音5M_6:Integer:=9308;-中音6H_1:Integer:=7835;-高音1TIME:Integer:=4096000-控制每一个音的长短(250ms);PORT(
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!