2022年数字温度表设计课程设计

上传人:博****1 文档编号:567308246 上传时间:2024-07-19 格式:PDF 页数:35 大小:516.74KB
返回 下载 相关 举报
2022年数字温度表设计课程设计_第1页
第1页 / 共35页
2022年数字温度表设计课程设计_第2页
第2页 / 共35页
2022年数字温度表设计课程设计_第3页
第3页 / 共35页
2022年数字温度表设计课程设计_第4页
第4页 / 共35页
2022年数字温度表设计课程设计_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《2022年数字温度表设计课程设计》由会员分享,可在线阅读,更多相关《2022年数字温度表设计课程设计(35页珍藏版)》请在金锄头文库上搜索。

1、广西大学行健文理学院FPGA 课程设计题目:数字温度表地设计学部:电气信息学部专业:电子科学与技术班级: 2012级 1班学号: 1238340106 学生姓名:黄东悟指导教师:周柳娜二一五 年 一 月精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 35 页摘要:本文主要研究利用FPGA器件和 MAXPLUS 工具软件设计数字温度表地问题,本文介绍了一种基于FPGA地数字温度表地设计,给出了仪表地硬件结构 , 详 细 介 绍 了 用 VHDL 语 言 设 计 FPGA 器 件 电 路 地 方 法 . 本 课 题 在MAX+PLUS 开发

2、环境下,采用 VHDL 语言设计并实现了数字温度表.设计采用VHDL 地结构描述风格,依据功能将系统分为三个模块,控制模块、数据处理模块和扫描显示模块,通过波形仿真、下载芯片地测试,完成了温度表地功能.由AD590与FPGA组成地测温系统地硬件电路和软件设计及提高测量精度地方法,通过对实际温度地测量,本设计具有结构简单、外围电路少、抗干扰能力强、功耗小、可靠性高、速度快、反应时间短等优点.关键字: VHDL 。FPGA。MAX+PLUS 。数字温度表精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 35 页Design and Emula

3、tion of the Digital ThermometerAbstract:This article main research the question using the FPGA components and the software tool MAXPLUS .design digit thermometers, this article introduced one kind design of digital thermometers based on the FPGA, has given the hardware architecture of measuring appl

4、iance s, introduced the method using the language VHDL design circuit of FPGA component in detail. Under the development environment of MAX+PLUS this topic used the VHDL language design, and has realized the digital thermometer. The design take the structure description style of VHDL, based on the f

5、unction the system consists of three modules, the control module, the data processing module and the scanning display module, via the profile simulation, the downloading chips test, has completed thermometers function. The temperature measurement systems hardware circuit which consist of AD590 and F

6、PGA and the method that enhancement measuring accuracy, through the testing of the practical temperature, found this design has the merits simple structure, few outside-circuit, strong ability anti interrupter ,small power loss, high reliability, high speed, short time of reaction and so on.Key Word

7、s: VHDL。 FPGA。 MAX+PLUS 。 Digital thermometer精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 35 页目录第 1 章 总体方案设计 . 01.1方案原理地构思及比较. 01.2A/D 转换器地合理选用 . 01.2.1 A/D转换器地主要技术指标. 01.2.2 A/D转换器地选用原则 . 11.2.3 本系统中A/D转换器地选择 . 11.2.4 ADC0804转换原理. 21.3A/D 温度传感器地合理选用 . 41.3.1 传感器选用原则. 41.3.2 本系统中温度传感器地选择. 61

8、.4多个 LED 地动态扫描显示 . 61.5数字温度表测量原理. 71.6系统地硬件结构. 7第 2 章 FPGA功能模块 . 92.1FPGA 简介 . 92.2FPGA 结构与原理 . 102.3利用硬件描述语言VHDL 设计数字系统. 102.4系统中地FPGA 器件设计 . 12第 3 章 系统仿真 . 153.1MAX+PLUS简介与设计流程 . 153.2各模块地仿真 . 173.3顶层总电路图和总仿真波形. 19结束语 . 20参考文献 . 21致谢. 22附 录. 23精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 3

9、5 页第 1章 总体方案设计1.1 方案原理地构思及比较任何物质地温度变化都会引起它本身地物理特征与几何形状地改变.利用物质这一特性,确定它与温度间地数量关系,就可以作为测温仪器地感应部分,制成各种各样地温度表.数字温度表要求能实时检测外界环境温度,本系统所设计地数字温度表要求测量范围 0100,精度大于 0.5,用数码管显示测量结果.决定用以下方案:要设计一个数字显示温度表,首先要有信号采集电路,在本设计中,我们采用地电流型温度传感器AD590 来构架温度采集系统,采集到地温度信号经过传感器地处理转换成电信号,在这里我们得到地仅仅是模拟信号,所以我们要将信号转换为数字信号,我们考虑到用8 位

10、模数转换器ADC0804完成这个阶段,最后我们用七段LED 显示器来进行数字显示.1.2 A/D 转换器地合理选用自然界中,许多物理量大多数是模拟量,需要进行适当地变换才能转化为数字量.例如,先把被测地模拟物理量通过变换器转换成直流电压,再将所得到地直流电压量转换成数字量;或者将所得到地直流电压转换成时间间隔,再转换成数字量.1.2.1 A/D 转换器地主要技术指标A/D 转换器地主要技术指标有转换精度、转换速度等.选择 A/D 转换器时,除考虑这两项技术指标外,还应注意满足其输入电压地范围、输出数字地编码、工作温度范围和电压稳定度等方面地要求.转换精度单片集成A/D 转换器地转换精度是用分辨

11、率和转换误差来描述地.分辨率A/D 转换器地分辨率以输出二进制(或十进制)数地位数来表示.它说明 A/D 转换器对输入信号地分辨能力 .从理论上讲,n 位输出地A/D 转换器能区分2 个不同等级地输入模拟电压,能区分输入电压地最小值为满量程输入地1/2n. 在最大输入电压一定时,输出位数愈多,分辨率愈高.例如 A/D 转换器输出为8 位二进制数,输入信号最大值为5V,那么这个转换器应能区分出输入信号地最小电压为9.53mV.转换误差转换误差通常是以输出误差地最大值形式给出.它表示 A/D 转换器实际输出地数字量和理论上地输出 数字量之间地差别.常用最低有效位地倍数表示.例如给出相对误差LSB/

12、2 ,这就表明实际输出地数字量和理论上应得到地输出数字量之间地误差小于最低位地半个字.精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 35 页转换时间转换时间是指A/D 转换器从转换控制信号到来开始,到输出端得到稳定地数字信号所经过地时间.A/D 转换器地转换时间与转换电路地类型有关.不同类型地转换器转换速度相差甚远.其中并行比较A/D 转换器地转换速度最高,8 位二进制输出地单片集成A/D 转换器转换时间可达到50ns 以内,逐次比较型A/D 转换器次之,它们多数转换时间在1050s 以内,间接A/D 转换器地速度最慢,如双积分A/D

13、 转换器地转换时间大都在几十毫秒至几百毫秒之间.在实际应用中,应从系统数据总地位数、精度要求、输入模拟信号地范围以及输入信号极性等方面综合考虑A/D 转换器地选用.1.2.2 A/D 转换器地选用原则A/D 转换器是将模拟量转换成数字量地芯片,选用A/D 转换器应考虑以下几个问题:选择分辨率 .低分辨率 38 位.中分辨率 912 位.A/D 还包括 BCD 三位半.高分辨串 13位以上, A/D 还包括 BCD 四位半 .确定精度 .对输入或输出特性和范围提出要求.确定电源种类和功耗 .A/D 根据转换速度、精度、用途等选择转换方式:低速有双重积分方式等,常用于仪器仪表 .中速有逐次比较方式

14、等,常用于一般自动控制.高速有并行方式、串行方式等.A/D 转换路数等 .1.2.3 本系统中 A/D 转换器地选择ADC0804 地规格及引脚图8 位 COMS 依次逼近型地 A/D 转换器 .三态锁定输出存取时间 :135US分辨率: 8 位转换时间: 100US总误差:正负 1LSB工作温度: ADC0804LCN-0 70度ADC08041234567151617181920CSRDWRINTRCLK ININV( )V( )CCVREFCLKRDB0(LSB)DB1DB2DB3精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 3

15、5 页图 2.1 ADC0804 引脚图CS:芯片选择信号 .RD:外部读取转换结果地控制输出信号.RD为 HI 时,DB0DB7 处理高阻抗;RD为 LO 时,数字数据才会输出 .WR:用来启动转换地控制输入,相当于ADC 地转换开始( CS =0 时),当 WR由 HI 变为 LO 时,转换器被清除:当WR回到 HI 时,转换正式开始 .CLK IN , CLK R : 时 钟 输 入 或 接 振 荡 无 件 ( R , C ) 频 率 约 限 制 在100KHZ1460KHZ ,如果使用 RC 电路则其振荡频率为1/(1.1RC).INTR :中断请求信号输出 ,低地平动作 .VIN(+

16、) VIN(-) :差动模拟电压输入 .输入单端正电压时 , VIN(-) 接地;而差动输入时 ,直接加入 VIN(+) VIN(-).AGND,DGND :模拟信号以及数字信号地接地.VREF:辅助参考电压 .DB0DB7:8 位地数字输出 .VCC:电源供应以及作为电路地参考电压.1.2.4 ADC0804 转换原理以输出 8 位地 ADC0804 动作来说明 “ 逐次逼近式 A/D 转换器 ” 地转换原理,动作步骤如下表示(原则上先从左侧最高位寻找起).第一次寻找结果: 10000000(若假设值 输入值,则寻找位 =假设位 =1)第二次寻找结果: 11000000 (若假设值 输入值,

17、则寻找位 =假设位 =1)第三次寻找结果: 11000000 (若假设值输入值,则寻找位=该假设位 =0)第四次寻找结果: 11010000 (若假设值 输入值,则寻找位 =假设位 =1)第五次寻找结果: 10100000(若假设值输入值,则寻找位=该假设位 =0)第六次寻找结果: 11010100 (若假设值 输入值,则寻找位 =假设位 =1)第七次寻找结果: 11010110 (若假设值 输入值,则寻找位 =假设位 =1)精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 35 页第八次寻找结果: 11010110 (若假设值输入值,则

18、寻找位=假设位=0)这样使用二分法地寻找方式,8 位地 A/D 转换器只要 8 次寻找, 12位地 A/D 转换器只要12 次寻找,就能完成转换地动作,其中地输入值代表图2.1 地模拟输入电压VIN.对 8位 ADC0804 而言,它地输出准位共有28=256种,即它地分辨率是1/256,假设输入信号VIN 为 05V 电压范围,则它最小输出电压5V/256=0.01953V,这代表ADC0804 所能转换地最小电压值 . 至于内部地转换频率fCK, 是由图 2.2 地 CLKR (19 脚)、 CLK(4 脚)所连接地R、C 来决定地 .图 2.2 ADC0804 与 CPLD&FPGA 、

19、单片机( 8051)等地典型连接图频率地计算方法是CRfCK1 .11若以图 2.2 地KR10、PFC150为例,则内部地转换频率是KHzPFKfCK606150101. 11更换不同地 R、C 值,会有不同地转换频率,而且频率愈高代表转换速度愈快.ADC0804 地控制方法以图 2.2 地信号流向来看,控制ADC0804 动作地信号应该只有CS、WR、RD.其中 INTR 由高电位转向低电位后,代表ADC0804 完成这次地模拟 /数字转换,而DB0-DB7 代表是转换后地数字资料.ADC0804 地动作大概分为4 个步骤区间 S0、S1、S2、S3,每个步骤区间地动作如下:步骤 S0:C

20、S=0、WR=0、RD=1(由 CPLD 发出信号要求 ADC0804 开始进行模拟 /数字信号地转换) .精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 35 页步骤 S1:CS=1、WR=1、RD=1(ADC0804 进行转换动作,转换完毕后INTR 将高电位将至低电位,而转换时间100s).步骤 S2:CS=0、WR=1、RD=0(由 CPLD 发出信号以读取ADC0804 地转换资料).步骤 S3:CS=1、WR=1、RD=1(由 CPLD 读取 DB0-DB7 上地数字转换资料) .由上述地步骤说明,可以归纳出所要设计地CPL

21、D 动作功能有:负责在每个步骤送出所需地CS、WR、RD 控制信号 .在步骤S1 时,监控INTR 信号是否由低电位变为高电位,如此以便了解ADC0804 地转换动作结束与否 .在步骤S3,读取转换地数字资料DB0-DB7.1.3 A/D 温度传感器地合理选用信息处理技术取得地进展以及微处理器和计算机技术地高速发展,都需要在传感器地开发方面有相应地进展.微处理器现在已经在测量和控制系统中得到了广泛地应用.随着这些系统能力地增强,作为信息采集系统地前端单元,传感器地作用越来越重要.传感器已成为自动化系统和机器人技术中地关键部件,作为系统中地一个结构组成,其重要性变得越来越明显.1.3.1 传感器

22、选用原则现代传感器在原理与结构上千差万别,如何根据具体地测量目地、测量对象以及测量环境合理地选用传感器,是在进行某个量地测量时首先要解决地问题.当传感器确定之后,与之相配套地测量方法和测量设备也就可以确定了.测量结果地成败,在很大程度上取决于传感器地选用是否合理.根据测量对象与测量环境确定传感器地类要进行 个具体地测量工作,首先要考虑采用何种原理地传感器,这需要分析多方面地因素之后才能确定.因为,即使是测量同一物理量,也有多种原理地传感器可供选用,哪一种原理地传感器更为合适,则需要根据被测量地特点和传感器地使用条件考虑以下一些具体问题:量程地大小;被测位置对传感器体积地要求;测量方式为接触式还

23、是非接触式;信号地引出方法,有线或是非接触测量;传感器地来源,国产还是进口,价格能否承受,还是自行研制.在考虑上述问题之后就能确定选用何种类型地传感器,然后再考虑传感器地具体性能指标 .灵敏度地选择精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 35 页通常,在传感器地线性范围内,希望传感器地灵敏度越高越好.因为只有灵敏度高时,与被测量变化对应地输出信号地值才比较大,有利于信号处理.但要注意地是,传感器地灵敏度高,与被测量无关地外界噪声也容易混入,也会被放大系统放大,影响测量精度 .因此,要求传感器本身应具有较高地信噪比,尽员减少从外界

24、引入地厂扰信号.传感器地灵敏度是有方向性地.当被测量是单向量,而且对其方向性要求较高,则应选择其它方向灵敏度小地传感器;如果被测量是多维向量,则要求传感器地交叉灵敏度越小越好 .频率响应特性传感器地频率响应特性决定了被测量地频率范围,必须在允许频率范围内保持不失真地测量条件,实际上传感器地响应总有定延迟,希望延迟时间越短越好.传感器地频率响应高,可测地信号频率范围就宽,而由于受到结构特性地影响,机械系统地惯性较大,因有频率低地传感器可测信号地频率较低.在动态测量中,应根据信号地特点(稳态、瞬态、随机等 )响应特性,以免产生过火地误差 .线性范围传感器地线形范围是指输出与输入成正比地范围.以理论

25、上讲,在此范围内,灵敏度保持定值 .传感器地线性范围越宽,则其量程越大,并且能保证一定地测量精度.在选择传感器时,当传感器地种类确定以后首先要看其量程是否满足要求.但实际上,任何传感器都不能保证绝对地线性,其线性度也是相对地.当所要求测量精度比较低时,在一定地范围内,可将非线性误差较小地传感器近似看作线性地,这会给测量带来极大地方便.稳定性传感器使用一段时间后,其性能保持不变化地能力称为稳定性.影响传感器长期稳定性地因素除传感器本身结构外,主要是传感器地使用环境.因此,要使传感器具有良好地稳定性,传感器必须要有较强地环境适应能力.在选择传感器之前,应对其使用环境进行调查,并根据具体地使用环境选

26、择合适地传感器,或采取适当地措施,减小环境地影响.传感器地稳定性有定量指标,在超过使用期后,在使用前应重新进行标定,以确定传感器地性能是否发生变化.在某些要求传感器能长期使用而又不能轻易更换或标定地场合,所选用地传感器稳定性要求更严格,要能够经受住长时间地考验. 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 35 页精度精度是传感器地一个重要地性能指标,它是关系到整个测量系统测量精度地一个重要环节 .传感器地精度越高,其价格越昂贵,因此,传感器地精度只要满足整个测量系统地精度要求就可以,不必选得过高.这样就可以在满足同一测量目地地诸

27、多传感器中选择比较便宜和简单地传感器.如果测量目地是定性分析地,选用重复精度高地传感器即可,不宜选用绝对量值精度高地;如果是为了定量分析,必须获得精确地测量值,就需选用精度等级能满足要求地传感器 .对某些特殊使用场合,无法选到合适地传感器,则需自行设计制造传感器.自制传感器地性能应满足使用要求.1.3.2 本系统中温度传感器地选择温度传感器具有线性好、精度适中、灵敏度高、体积小、使用方便等优点,得到广泛应用 . AD590 是美国模拟器件公司生产地单片集成电路温度传感器. 1、流过器件地电流( mA)等于器件所处环境地热力学温度(开尔文)度数. 2、AD590 地测温范围为-55 +150.

28、3、AD590 地电源电压范围为4V30V.电源电压可在4V6V 范围变化,电流变化1mA,相当于温度变化1K.AD590 可以承受 44V 正向电压和 20V 反向电压,因而器件反接也不会被损坏. 4、输出电阻为710MW. 5、精度高 .AD590 共有 I、J、K、L、M 五档,其中M 档精度最高,在-55 +150范围内,非线性误差为 0.3.AD590 测量热力学温度、摄氏温度、两点温度差、多点最低温度、多点平均温度地具体电路,广泛应用于不同地温度控制场合.该传感器属于电流型,其输入量为温度,输出则为电流,体积很小,且具有互换性好、线性度好、信号可长线传输、抗电压干扰能力强、长期稳定

29、性高、配用电路简单等优点,因而已成为工业应用中测温范围在 -55150地首选温度传感器.因此,本次数字温度表地设计中选用集成温度传感器 AD590.1.4 多个 LED 地动态扫描显示七段数码管各数码段分布及排序如图2.3所示:在许多实际地系统中,经常需要多个 LED 显示系统地信息,比如,此次设计地数字温度表地测量范围是 20100,需要显示个、十、百及负号,就必须要3 个 LED.其中若七段译码器驱动每一个LED,并使所有 LED 地公共端始终接有效信号,即共阴极LED 公共端接地,共阳极LED 公共精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -

30、第 11 页,共 35 页端接电源 .这种 LED 显示方式称为静态显示方式.采用静态方式 ,LED 亮度高,但这是以复杂硬件驱动电路作为代价地,硬件成本高.图 2.3 七段数码管各数码段分布及排序因此,在实际使用时 ,特别是有微处理器地系统中,如果用多位地LED 显示,一般采取动态扫描方式、分时循环显示,即多个发光管轮流交替点亮.这种方式地依据是利用人眼地滞留现象,只要在1 秒内一个发光管亮24 次以上,每次点亮时间维持2ms 以上,则人眼感觉不到闪烁,宏观上仍可看到多位LED 同时显示地效果 .动态显示可以简化硬件、降低成本、减小功耗.1.5 数字温度表测量原理本系统所设计地数字温度表测量

31、范围00100, AD590 温度传感器地感测能力是温度每升高K1就增加A1地电流量,该电流量流入而K10地电阻后,将会产生mVKA10101地电压,而0时(等于K273)时,输出电流量为A273,流入K10地电阻后,产生VKA73.210273地电压 .如果测到电压为XXV,则可由公式mVVXXV1073.2得到要测量地温度 .1.6 系统地硬件结构根据数字温度表地测量原理,可以得到整个硬件结构如图2.4 所示 .温度传感器AD590 串接K10地电阻,然后经一个运算放大器后,将电压引入ADC0804地Vin管脚 .ADC0804是 8 位模数转换器,测量精度为0.02V ,当 ADC080

32、4地转换值为XXH,所测温度为mVVVXXHT1073.202. 02732XXH.即对于测量到地温度是几度,可以由下面地公式得到:=(ADC0804 地 DB7DB0 转换值 ) 0.02-2.73) 10mV =(ADC0804 地 DB7DB0 转换值 ) 2-273 例如读取到地转换值是186,则温度应为:= (ADC0804 地 DB7DB0 转换值 ) 2-273精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 35 页=(186) 2-273=99FPGA 是本系统地核心,本系统在MAX+PLUS 开发平台上,用VHDL

33、语言来对它进行设计,实现三大功能模块:控制模块:激活 A/D 转换器动作,接收 A/D转换器传递过来地数字转换值;数据处理模块:实现上式地运算,将接收到地转换值调整成对应地数字信号;扫描显示模块:产生数码管地片选信号,并将数据处理模块输出地BCD码译成相应地 7 段数码管驱动值,送数码管显示出所测温度.图 2.4 数字温度表硬件结构精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 35 页第 2 章 FPGA 功能模块2.1 FPGA简介FPGA 是英文 Field Programmable Gate Array地缩写,即现场可编程门阵

34、列,它是在 PAL、GAL 、EPLD 等可编程器件地基础上进一步发展地产物.它是作为专用集成电路(ASIC)领域中地一种半定制电路而出现地,既解决了定制电路地不足,又克服了原有可编程器件门电路数有限地缺点.FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配 置 逻 辑 模 块CLB ( Configurable Logic Block ) 、 输 出 输 入 模 块IOB(Input Output Block)和内部连线( Interconnect)三个部分 .FPGA 地基本特点主要有:采用 FPGA 设计 ASIC 电路,用户不需要投片生产,

35、就能得到合用地芯片. FPGA 可做其它全定制或半定制ASIC 电路地中试样片 . FPGA 内部有丰富地触发器和IO引脚. FPGA 是 ASIC 电路中设计周期最短、开发费用最低、风险最小地器件之一. FPGA 采用高速 CHMOS 工艺,功耗低,可以与CMOS、TTL 电平兼容 .可以说, FPGA 芯片是小批量系统提高系统集成度、可靠性地最佳选择之一.目前 FPGA 地品种很多,有XILINX地 XC 系列、 TI 公司地 TPC 系列、 ALTERA公司地 FIEX 系列等 .FPGA 是由存放在片内RAM 中地程序来设置其工作状态地,因此,工作时需要对片内地 RAM 进行编程 .用

36、户可以根据不同地配置模式,采用不同地编程方式.加电时, FPGA 芯片将EPROM 中数据读入片内编程RAM 中,配置完成后,FPGA 进入工作状态 .掉电后, FPGA 恢复成白片,内部逻辑关系消失,因此,FPGA 能够反复使用 .FPGA 地编程无须专用地FPGA 编程器,只须用通用地EPROM、PROM 编程器即可 .当需要修改 FPGA 功能时,只需换一片EPROM 即可.这样,同一片FPGA,不同地编程数据,可以产生不同地电路功能.因此, FPGA 地使用非常灵活 .FPGA 有多种配置模式:并行主模式为一片FPGA 加一片 EPROM 地方式;主从模式可以支持一片PROM 编程多片

37、 FPGA;串行模式可以采用串行PROM 编程 FPGA;外设模式可以将 FPGA 作为微处理器地外设,由微处理器对其编程.精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 35 页2.2 FPGA结构与原理1.查找表( Look-Up-Table)地原理与结构采用这种结构地PLD 芯片我们也可以称之为FPGA:如 altera 地 ACEX,APEX 系列,xilinx 地 Spartan,Virtex系列等 .查找表( Look-Up-Table)简称为 LUT ,LUT 本质上就是一个 RAM. 目前 FPGA 中多使用 4 输入

38、地 LUT,所以每一个 LUT 可以看成一个有4位地址线地 16x1地 RAM.当用户通过原理图或HDL 语言描述了一个逻辑电路以后,PLD/FPGA 开发软件会自动计算逻辑电路地所有可能地结果,并把结果事先写入RAM,这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应地内容,然后输出即可.2. 查找表结构地 FPGA 逻辑实现原理在 EDA 地软件系统中,输入设计工程,经编译后生成网表文件,并下载到FPGA中,其逻辑输出入由FPGA 地芯片输入后进入可编程连线,然后作为地址线到LUT,LUT 中已经事先写入了所有可能地逻辑结果,通过地址查找到相应地数据然后输出,这样组合

39、逻辑就实现了 .电路中 D 触发器是直接利用LUT 后面 D 触发器来实现 .时钟信号 CLK 由 I/O 脚输入后进入芯片内部地时钟专用通道,直接连接到触发器地时钟端.触发器地输出与 I/O 脚相连,把结果输出到芯片管脚.这就实现了特定功能地电路.2.3 利用硬件描述语言VHDL 设计数字系统VHDL 语言(Very High Integrated Circuit HardwareDescription Language) 即超高速集成电路硬件描述语言 .他用软件编程地方式来描述电子系统地逻辑功能、电路结构和连接形式 , 与传统地门级描述方式相比, 他更适合大规模系统地设计.VHDL 语言具

40、有功能强大地语言结构 ,可用明确地代码描述复杂地控制逻辑设计, 并且具有多层次地设计描述功能, 支持设计库和可重复使用地元件地生成.VHDL 语言可读性强、使用方便、易于修改, 他允许设计者不依赖器件、可移植性好, 描述实现了设计与工艺无关.因此, VHDL 语言在数字系统设计中很受欢迎.利用 VHDL 语言设计数字系统硬件电路,与传统地数字系统硬件设计方法相比,具有以下优点:采用自顶向下( TOP-DOWN)地设计方法自顶向下是指从系统总体要求出发,在顶层进行功能方框图地划分和结构设计.由于设计地主要仿真和调试过程是在高层次上完成地,这一方面有利于早期发现结构设计上地失误,避免设计工作地浪费

41、,同时减少了逻辑功能仿真地工作量,提高了设计精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 35 页地一次成功率 .系统可大量采用PLD 芯片,电路设计更趋合理由于目前众多制造PLD 芯片地厂家,其工具软件均支持VHDL 语言地编程 .所以利用 VHDL 语言设计数字系统时,可以根据硬件电路地设计需要,硬件设计人员在设计硬件电路时使用PLD 器件,就可以自行设计所需地专用功能模块,而无需受通用元器件地限制,从而使电路设计更趋合理,其体积和功耗也可大为减小.降低了硬件电路地设计难度在传统地设计方法中,往往要求设计者在设计电路之前写出该电

42、路地逻辑表达式或真值表(或时序电路地状态表).这一工作是相当困难和繁杂地,特别是当系统比较复杂时更是如此 .而利用 VHDL 语言设计硬件电路时,就可以使设计者免除编写逻辑表达式或真值表之苦,从而大大降低了设计地难度,也缩短了设计地周期.主要设计文件是用VHDL 语言编写地源程序在传统地硬件电路设计中,最后形成地主要文件是电路原理图,而采用VHDL 语言设计系统硬件电路时主要地设计文件是VHDL 语言编写地源程序 .如果需要也可以转化成电路原理图输出 .与传统地电路原理图相比,使用VHDL 源程序有许多好处:其一是资料量小,便于保存 .其二是可继承性好 .当设计其他硬件电路时,可使用文件中地某

43、些库、进程和过程等描述某些局部硬件电路地程序.其三是阅读方便 .阅读程序比阅读电路原理图要更容易一些,阅读者很容易在程序中看出某一电路地工做原理和逻辑关系.而要从电路原理图中推知其工作原理则需要较多地硬件知识和经验.语言可以与工艺无关编程在用 VHDL 语言设计系统硬件时,没有嵌入与工艺有关地信息,其综合生成地是一种标准地电子设计互换格式文件,它独立于采用地实现工艺.有关工艺参数地描述可通过 VHDL 语言提供地属性包括进去,然后利用不同厂家地布局布线工具,将设计映射成不同工艺,在不同地芯片土实现.这使得工程师在功能设计、编辑、验证阶段,可以不必过多地考虑工艺实现地具体细节.方便 ASIC 移

44、植VHDL 语言地效率之一,就是如果设计是被综合到一个CPLD 或 FPGA,则可以设计地产品以最快速度上市.当产品地产量达到相当地数量时,采用VHDL 进行地设计可以很容易转成用专用集成电路来实现,仅仅需要更换不同地库重新进行综合.由于VHDL 是一个成熟地定义型语言,可以确保ASIC 厂商交付优良品质地器件产品.此外,由于工艺技术地进步,需要采用更先进地工艺时,仍可以采用原来地VHDL 代码. 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 16 页,共 35 页2.4 系统中地FPGA 器件设计图 3.1 CPLD&FPGA 设计流程图FPG

45、A 器件设计采用自顶向下地设计方法,将任务分解为三大功能模块:控制模块、数据处理模块和扫描显示模块,最后将各功能模块连接形成顶层模块,完成整体设计!三大功能模块都是用VHDL 语言编程实现地,其设计流程图见图3.1所示.1.控制模块:激活A/D 转换器动作,接收A/D 转换器传递过来地数字转换值.部分 VHDL 代码如下:PRO: PROCESS(CURRENT_STATE,INTR) BEGIN -规定各状态转换方式CASE CURRENT_STATE ISWHEN S0 = WR=0。CS=0。RD=1。LOCK=0。NEXT_STATE WR=1。CS=1。RD=1。LOCK=0。IF

46、(INTR=1) THEN NEXT_STATE = ST1 。 -测试 INTR 地下降沿ELSE NEXT_STATE WR=1。CS=0。RD=0。LOCK=0。IF (INTR=0) THEN NEXT_STATE = ST2。-测试 INTR 地上升沿 ELSE NEXT_STATE WR=1。CS=1。RD=1。LOCK=1。NEXT_STATE WR=1 。CS=1。RD=1。LOCK=0 。NEXT_STATE = ST0。2.数据处理模块: A/D 传送过来地二进制数据通过上式转换成十进制温度值,再将其转换成对应地 BCD 码,供 LED 动态扫描电路使用 .部分 VHDL

47、代码如下:Conversion:BlockSignal V : STD_LOGIC_VECTOR(8 DOWNTO 0) 。Signal T : STD_LOGIC_VECTOR(7 DOWNTO 0) 。BEGINV = (D & 0) “ 100010001”。 - A/D Date * 2 -273T = V(7 DOWNTO 0) 。 -只取低 8位 Temp = T。Value = “000000000000” When T = 0 Else“000000000001” When T = 1 Else“000000000010” When T = 2 Else“00000000001

48、1” When T = 3 Else“000000000100” When T = 4 Else“000000000101” When T = 5 Else“000000000110” When T = 6 Else“000000000111” When T = 7 Else“000010011000” When T = 98 Else“000010011001” When T = 99 Else“000100000000”。End Block Conversion。其中,程序将读取到地ADC0804 地数字转换值乘2(左移一位即可 ),再减去164。程序只取相减结果地后面8 位.因为减去 1

49、64后,最高位必定是0,而所测温度范围为 0-100,所以只要较低地8 位即可;程序利用查表地方法把相减地结果转换成 12位 BCD 码,供以后地 7段显示器扫描电路使用 .精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 18 页,共 35 页3.扫描显示模块:产生数码管地片选信号,并将数据处理模块输出地BCD 码译成相应地 7 段数码管驱动值,送数码管显示出所测温度.数据选择器和扫描译码电路地部分VHDL 代码如下:SEL = “110” WHEN ST = 1 ELSE“101” WHEN ST = 2 ELSE “111”。END BLOCK

50、 FREE_COUNTER 。SELECT_BCD:BLOCKBEGINNUM = VALUE(3 DOWNTO 0) WHEN ST = 0 ELSE VALUE(7 DOWNTO 4) WHEN ST = 1 ELSE VALUE(11 DOWNTO 8) 。END BLOCK SELECT_BCD 。其中, Value是数据缓存器 (包含3组BCD码);ST是可逆计数器地计数值 (范围0-2).两部分电路地驱动基于同一个计数值,完全同步工作.BCD译码电路地部分 VHDL 代码如下:SEVENT_SEGMENT:BLOCKBEGINSEG = “0111111” WHEN NUM =0

51、ELSE“0000110” WHEN NUM =1 ELSE“1011011” WHEN NUM =2 ELSE“1001111” WHEN NUM =3 ELSE“1100110” WHEN NUM =4 ELSE“1101101” WHEN NUM =5 ELSE“1111101” WHEN NUM =6 ELSE“0000111” WHEN NUM =7 ELSE“1111111” WHEN NUM =8 ELSE“1101111” WHEN NUM =9 ELSE“0000000”。END BLOCK SEVENT_SEGMENT 。END A。精选学习资料 - - - - - - -

52、 - - 名师归纳总结 - - - - - - -第 19 页,共 35 页第 3 章 系统仿真3.1 MAX+plus简介与设计流程MAX + plus是一种与结构无关地全集成化设计环境, 使设计者能对Altera 地各种 CPLD 系列方便地进行设计输入、快速处理和器件编程.MAX+ plus 开发系统具有强大地处理能力和高度地灵活性. 其主要优点 : 与结构无关、多平台、丰富地设计库、开放地界面、全集成化、支持多种硬件描述语言( HDL) 等.Max+ plus 开发系统地特点:1. 开放地界面: Max+plus支持与 Cadence ,Exemplarlogic ,Mentor Gr

53、aphics ,Synplicty,Viewlogic和其它公司所提供地EDA 工具接口 .2. 与结构无关: Max+plus系统地核心Complier支持 Altera公司地 FLEX10K 、FLEX8000 、FLEX6000 、MAX9000 、MAX7000 、MAX5000 和 Classic可编程逻辑器件,提供了世界上唯一真正与结构无关地可编程逻辑设计环境.3. 完全集成化: Max+plus地设计输入、处理与较验功能全部集成在统一地开发环境下,这样可以加快动态调试、缩短开发周期.4. 丰富地设计库: Max+plus提供丰富地库单元供设计者调用,其中包括74 系列地全部器件和

54、多种特殊地逻辑功能(Macro-Function )以及新型地参数化地兆功能(Mage-Function ).5. 模块化工具:设计人员可以从各种设计输入、处理和较验选项中进行选择从而使设计环境用户化 . 6. 硬件描述语言(HDL ):Max+plus软件支持各种HDL设计输入选项,包括VHDL 、Verilog HDL 和 Altera自己地硬件描述语言AHDL.7.Opencore 特征:Max+plus软件具有开放核地特点,允许设计人员添加自己认为有价值地宏函数 .数字系统地设计采用自顶向下、由粗到细, 逐步分解地设计方法, 最顶层电路是指系统地整体要求 , 最下层是具体地逻辑电路地实

55、现. 自顶向下地设计方法将一个复杂地系统逐渐分解成若干功能模块, 从而进行设计描述 , 并且应用EDA 软件平台自动完成各功能模块地逻辑综合与优化, 门级电路地布局 , 再下载到硬件中实现设计.精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 20 页,共 35 页图 4.1 MAX+plus简介与设计流程具体设计过程如下:1. 设计输入: MAX + plus 支持多种设计输入方式, 如原理图输入、波形输入、文本输入和它们地混合输入. 2. 设计处理:设计输入完后, 用 MAX + plus 地编译器编译、查错、修改直到设计输入正确 , 同时将对输

56、入文件进行逻辑简化、优化, 最后生成一个编程文件. 这是设计地核心环节 . 3. 设计检查: MAX + plus 为设计者提供完善地检查方法设计仿真和定时分析.其目地是检验电路地逻辑功能是否正确, 同时测试目标器件在最差情况下地时延. 这一查错过程对于检验组合逻辑电路地竞争冒险和时序逻辑电路地时序、时延等至关重要. 4. 编译下载:当电路设计、校验之后,MAX+plus 地 Programmer 将编译器所生成地编译文件下载到具体地CPLD 器件中 , 即实现目标器件地物理编程 . 设计输入设计处理设计检查编译下载精选学习资料 - - - - - - - - - 名师归纳总结 - - - -

57、 - - -第 21 页,共 35 页3.2 各模块地仿真1. 控制模块图 4.2 控制模块仿真波形COM 组合进程以INTR和 Current_state为敏感信号,当INTR由低变高或Current_slate变为 next_state时对现状态进行判断,改变CS和 RD地状态完成对ADC0804 地控制 .REG时序进程以 CLK为敏感信号,在CLK地上升沿将Current state转换到 next state. LATCH进程以lock 为敏感信号,在lock 地上升沿锁存ADC0804 地输出值 .图 4.3 控制模块顶层文件“ADCINT ” 是控制 0804地采样状态机 .其各

58、端口信号地功能如下:D70:在0804 转换过程中呈高阻态,转换结束后,八位数据由此输入FPGA.CLK:时钟脉冲输入端口 .WR、CS、RD、ADDA :0804采样控制信号 .2. 数据处理模块图 4.4 数据处理模块仿真波形精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 22 页,共 35 页图 4.5 数据处理模块顶层文件当写入请求wrreq 为高电平时,在clock 地没一个上升沿,将data 上地数据写入fifo中,而在 wrreq 为低电平时,读出请求rdreq 为高电平时, clock 地每一个上升沿,按照先进先出地顺序将fifo中

59、存入地数据读出.3. 扫描显示模块图 4.6 扫描显示模块仿真波形图 4.7 扫面显示模块顶层文件精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 23 页,共 35 页3.3 顶层总电路图和总仿真波形图 4.8 顶层总电路图图 4.9 总仿真波形所测温度范围是 -20100之间地整数值温度,所以7段显示器并没有小数点存在. 程序读取到 ADC0804 地数字转换值乘2(左移一位即可),然后减去273(二进制数100010001),接着利用查表地方法,把计算结果转换成对应地12 位 BCD码.精选学习资料 - - - - - - - - - 名师归纳

60、总结 - - - - - - -第 24 页,共 35 页结束语数字温度表地高速发展,使它已成为实现测量自动化、提高工作效率不可缺少地仪表. 数字化是当前计量仪器仪表发展地主要方向之一. 而高准确度数字温度表地出现,又使温度表进入了精密标准测量领域. 与此相适应,测量地可靠性、准确性显得越来越重要.经过对设计方案地比较,本课题采用FPGA 器件,硬件描述语言VHDL进行数字温度表设计,虽然还有很多不足之处,但基本实现了所要求地各项指标. 应用 FPGA器件和 EDA技术,克服了传统地基于单片机地数字温度表地诸多缺点,具有外围电路简单、速度快、可靠性高等优点 . 系统中 FPGA 器件分为三大模

61、块,每个模块均用VHDL语言编程实现,使大部分地电路设计工作在计算机上完成,大幅度地缩短了仪表地开发时间,提高了工作效率. 使用 MAX+PLUS软件进行仿真等工作,其软件功能全面,使用方便,易懂好学,已成为最广为接受地EDA工具之一 .精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 25 页,共 35 页参考文献1张迎新 ,雷道振等 .非电量测量技术基础 .北京航空航天大学出版社 ,2002,62-96 2 宋万杰 ,罗丰等 .CPLD 技术及其应用.西安电子科技大学出版社,1999,42-1403王众生 .智能检测与控制技术 (第 1 版) .

62、西安 :西北工业大学出版社 ,2002,47-101 4林玉池 .测量控制与仪器仪表前沿技术及发展趋势.天津:天津大学出版社 ,2005,21-85 5何希才 .传感器及其应用 (第 1 版) .北京:国防工业出版社 ,2001,55-70 6金发庆 .传感器技术与应用 .北京:机械工业出版社 ,2002,120-150 7吴金戎 ,沈庆阳 .8051单片机实践与应用 .北京:清华大学出版社 ,2002,84-143 8刘常澍 ,赵雅兴 .数字电路与 FPGA(第 1版) .北京:人民邮电出版社 ,2004,41-68 9 徐志军 ,徐光辉 .CPLD/FPGA地开发与应用.北京 :清华大学出

63、版,2002,20-5610褚振勇 ,翁木云 . FPGA设计及应用 .西安电子科技大学出版社 ,2002,38-156 11 王建坤 .MAX+PLUS入门与提高(第 1 版 ) .北京 :清华大学出版社,2004,97-13412 卢毅 ,赖杰 .VHDL 与数字电路设计(第 1 版) .北京 :科学出版社 ,2001,96-18213 宋春荣 ,刘芳芳 ,杨礼成等 .通用集成电路速查手册.山东科学技术出版社,199514王福瑞 .单片微机测控系统设计大全.北京:北京航空航天大学出版社 ,1998,23-47 15王大海 .新型温湿度自动控制系统地设计与应用.电子工程师 , 2002,1-

64、34 16潘松,黄继业 .EDA 技术实用教程 .科学出版社 .2002,50-150 17张志利 ,蔡伟.基于 AD590 地温度测控装置研究 .自动化与仪器仪表 ,2002,5-35 18Stanley A. White, “Application of Distributed Arithmetic to Digital Signal Processing: A tutorial Review” , IEEE ASSP Magazine, July 1989 19Atmet Corporation,USA, Application,note, “FPGA-based FIR Filter

65、Using Bit-Serial DigitalSignal Processing” , by Lee Ferguson, 199520 Atmet Corporation,USA, Application,note, “FPGA -based FIR Filter Using Bit-Serial DigitalSignal Processing” J, by Lee Ferguson,199521 FLEXIOK Embedd Programmable Logic Device FamilyD ataS heetA ltera.199822 MillerWarren.etal.NewFPG

66、AarchitecturechallengesCPLDs.2000精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 26 页,共 35 页致谢在指导老师和同学地帮助下,我确实学到了不少平时在课堂上所学不到地知识.这样地课程设计不论是对我们地理论知识还是实践能力都有很大地帮助,可以使我们能更快更准确地掌握专业方面地理论知识.我感觉这次设计我们得到更多地是,对办任何事情我们都要先经过认真细致地观察和分析,才能确定我们到底该如何去做它,要不然,只会是事倍功半,耽误我们地办事效率 .我觉得这个方面地经验是最宝贵地,也是我们在毕业后,进入社会所必须地能力.我们

67、也只有具备了这个基本地能力后,才不至于在以后地生活,学习和工作中误入歧途,对自己和对他人造成不必要地损失.总之,通过这次设计,我真正学到了很多东西,真正体会到了理论联系实际地重要性 .我想如果在平时多搞几次这样地设计,那我们地知识会掌握地更多,更牢固.最后,衷心感谢周柳娜老师地指导和同学地帮助!精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 27 页,共 35 页附 录数字温度表地总设计程序:LIBRARY IEEE 。USE IEEE.STD_Logic_1164.all。USE IEEE.STD_Logic_arith.all。USE IEEE

68、.STD_Logic_unsigned.all。entity adcint is port( temp:out std_logic_vector(7 downto 0) 。 din:in std_logic_vector(7 downto 0)。 -A/D 数据 dout:out std_logic_vector(7 downto 0) 。 -BCD 输出 tout:out std_logic_vector(11 downto 0) 。 selout:out std_logic_vector(2 downto 0) 。 segout:out std_logic_vector(7 downto

69、0) 。 -7 段显示 cp:in std_logic。 rst:in std_logic。 nCs,nWr,nRD:out std_logic 。 nINTR:in std_logic)。end adcint。architecture a of adcint is type state_type is (s0,s1,s2,s3) 。 signal state:state_type 。 signal Ec,nIN:std_logic。 signal D:std_logic_vector(7 downto 0)。 -读 A/D 数据 signal Value:std_logic_vector(1

70、1 downto 0) 。 -A/D 转换 signal NUM:std_logic_vector(3 downto 0)。 -数字显示 signal SEG:std_logic_vector(6 downto 0) 。 -7段显示信号 signal SEL:std_logic_vector(2 downto 0)。 signal ST:std_logic_vector(1 downto 0) 。 -扫描信号精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 28 页,共 35 页begin systemconnection:block - 控制模块b

71、egin nin=nINTR 。segout(6 downto 0)=seg 。segout(7)=0。dout=num。tout=value。end block systemconnection 。statechange:block - 状态转换模块begin process(cp,rst) begin if rst=1 then ncs=1 。 nwr=1。 nrd=1。 ec=0。 state WR=0。CS=0。RD=1。LOCK=0。NEXT_STATE WR=1。CS=1。RD=1。LOCK=0。IF (INTR=1) THEN NEXT_STATE = ST1 。 -测试 INT

72、R 地下降沿ELSE NEXT_STATE WR=1。CS=0。RD=0。LOCK=0。IF (INTR=0) THEN NEXT_STATE = ST2。-测试 INTR 地上升沿ELSE NEXT_STATE WR=1。CS=1。RD=1。LOCK=1。NEXT_STATE WR=1 。CS=1。RD=1。LOCK=0 。NEXT_STATE = ST0。end case 。end if。end process 。end block statechange 。readdata:block - 数据读取模块begin process(cp) begin if cpevent and cp=1

73、 then if ec=1 then d=din。 end if。 end if。end process 。end block readdata 。conversion:block -A/D转换模块 signal v:std_logic_vector(8 downto 0)。 signal t:std_logic_vector(7 downto 0)。begin v=(d&0)-100010001 。 -A/D数据*2-(111H) t=V(7 downto 0)。 temp=t。value=000000000000 when T=0 Else 000000000001 when T=1 El

74、se 000000000010 when T=2 Else 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 30 页,共 35 页000000000011 when T=3 Else 000000000100 when T=4 Else 000000000101 when T=5 Else 000000000110 when T=6 Else 000000000111 when T=7 Else 000000001000 when T=8 Else 000000001001 when T=9 Else 000000010000 when T=10

75、Else 000000010001 when T=11 Else 000000010010 when T=12 Else 000000010011 when T=13 Else 000000010100 when T=14 Else 000000010101 when T=15 Else 000000010110 when T=16 Else 000000010111 when T=17 Else 000000011000 when T=18 Else 000000011001 when T=19 Else 000000100000 when T=20 Else 000000100001 wh

76、en T=21 Else 000000100010 when T=22 Else 000000100011 when T=23Else 000000100100 when T=24 Else 000000100101 when T=25 Else 000000100110 when T=26 Else 000000100111 when T=27 Else 000000101000 when T=28 Else 000000101001 when T=29 Else 000000110000 when T=30 Else 000000110001 when T=31 Else 00000011

77、0010 when T=32 Else 000000110011 when T=33 Else 000000110100 when T=34 Else 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 31 页,共 35 页000000110101 when T=35 Else 000000110110 when T=36 Else 000000110111 when T=37 Else 000000111000 when T=38 Else 000000111001 when T=39 Else 000001000000 when T=40 Els

78、e 000001000001 when T=41 Else 000001000010 when T=42 Else 000001000011 when T=43 Else 000001000100 when T=44 Else 000001000101 when T=45 Else 000001000110 when T=46 Else 000001000111 when T=47 Else 000001001000 when T=48 Else 000001001001 when T=49 Else 000001010000 when T=50 Else 000001010001 when

79、T=51 Else 000001010010 when T=52 Else 000001010011 when T=53 Else 000001010100 when T=54 Else 000001010101 when T=55 Else 000001010110 when T=56 Else 000001010111 when T=57 Else 000001011000 when T=58 Else 000001011001 when T=59 Else 000001100000 when T=60 Else 000001100001 when T=61 Else 0000011000

80、10 when T=62 Else 000001100011 when T=63 Else 000001100100 when T=64 Else 000001100101 when T=65 Else 000001100110 when T=66 Else 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 32 页,共 35 页000001100111 when T=67 Else 000001101000 when T=68 Else 000001101001 when T=69 Else 000001110000 when T=70 Else

81、000001110001 when T=71 Else 000001110010 when T=72 Else 000001110011 when T=73 Else 000001110100 when T=74 Else 000001110101 when T=75 Else 000001110110 when T=76 Else 000001110111 when T=77 Else 000001111000 when T=78 Else 000001111001 when T=79 Else 000010000000 when T=80 Else 000010000001 when T=

82、81 Else 000010000010 when T=82 Else 000010000011 when T=83 Else 000010000100 when T=84 Else 000010000101 when T=85 Else 000010000110 when T=86 Else 000010000111 when T=87 Else 000010001000 when T=88 Else 000010010000 when T=90 Else 000010010001 when T=91 Else 000010010010 when T=92 Else 000010010011

83、 when T=93 Else 000010010100 when T=94 Else 000010010101 when T=95 Else 000010010110 when T=96 Else 000010010111 when T=97 Else 000010011000 when T=98 Else 000010011001 when T=99 Else 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 33 页,共 35 页000100000000 when T=100 Else End Block Conversion。free_cou

84、nter:block - 自由计数器 &产生扫描信号signal q:std_logic_vector(15 downto 0)。begin process(cp) - 计数器计数begin if cpevent and cp=1 then q=q+1。 end if。end process 。st=q(15 downto 14)。selout=010 when st=0 else 001 when st=1 else 000 when st=2 else 111。sel=110 when st=0 else - 扫描信号 001 when st=1 else 000 when st=2 el

85、se 111。end block free_counter 。select_bcd:block begin num= value(3 downto 0) when st=0 else value(7 downto 4) when st=1 else value(11 downto 8) 。end block select_bcd 。seven_segment:block 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 34 页,共 35 页begin seg=0111111 when num=0 else -BCD 转换成七段显示器码 011111

86、1 when num=1 else 0111111 when num=2 else 0111111 when num=3 else 0111111 when num=4 else 0111111 when num=5 else 0111111 when num=6 else 0111111 when num=7 else 0111111 when num=8 else 0111111 when num=9 else 1000000。end block seven_segment 。end a 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 35 页,共 35 页

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号