1、广西大学行健文理学院 FPGA 应用技术教程课程设计广西大学行健文理学院FPGA 课程设计题目:数字温度表的设计学 部: 电气信息学部 专 业: 电子科学与技术 班 级: 2012 级 1 班 学 号: 1238340106 学生姓名: 黄东悟 指导教师: 周柳娜 二一五 年 一 月广西大学行健文理学院 FPGA 应用技术教程课程设计摘要:本文主要研究利用FPGA器件和MAXPLUS工具软件设计数字温度表的问题,本文介绍了一种基于FPGA的数字温度表的设计,给出了仪表的硬件结构,详细介绍了用VHDL语言设计FPGA器件电路的方法。本课题在MAX+PLUS开发环境下,采用VHDL语言设计并实现了
2、数字温度表。设计采用VHDL的结构描述风格,依据功能将系统分为三个模块,控制模块、数据处理模块和扫描显示模块,通过波形仿真、下载芯片的测试,完成了温度表的功能。由AD590与FPGA组成的测温系统的硬件电路和软件设计及提高测量精度的方法,通过对实际温度的测量,本设计具有结构简单、外围电路少、抗干扰能力强、功耗小、可靠性高、速度快、反应时间短等优点。关键字:VHDL;FPGA;MAX +PLUS;数字温度表广西大学行健文理学院 FPGA 应用技术教程课程设计Design and Emulation of the Digital ThermometerAbstract:This article m
3、ain 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 appliances, introduced the method using the language VHDL d
4、esign 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 function the system consists of three modules, the contro
5、l 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 FPGA and the method that enhancement measuring accuracy,
6、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 Words: VHDL; FPGA; MAX+PLUS; Digital thermometer 广西大学行健文理学院
7、FPGA 应用技术教程课程设计目 录第 1 章 总体方案设计 .11.1 方案原理的构思及比较 .11.2 A/D 转换器的合理选用 .11.2.1 A/D 转换器的主要技术指标 .11.2.2 A/D 转换器的选用原则 .21.2.3 本系统中 A/D 转换器的选择 .21.2.4 ADC0804 转换原理 .31.3 A/D 温度传感器的合理选用 .51.3.1 传感器选用原则 .51.3.2 本系统中温度传感器的选择 .71.4 多个 LED 的动态扫描显示 .71.5 数字温度表测量原理 .81.6 系统的硬件结构 .8第 2 章 FPGA 功能模块 .102.1 FPGA 简介 .1
8、02.2 FPGA 结构与原理 .112.3 利用硬件描述语言 VHDL 设计数字系统 .112.4 系统中的 FPGA 器件设计 .13第 3 章 系统仿真 .163.1 MAX+PLUS简介与设计流程 .163.2 各模块的仿真 .183.3 顶层总电路图和总仿真波形 .20结束语 .21参考文献 .22致谢 .23附 录 .24数字温度表设计10第 1 章 总体方案设计1.1 方案原理的构思及比较任 何 物 质 的 温 度 变 化 都 会 引 起 它 本 身 的 物 理 特 征 与 几 何 形 状 的 改 变 。 利 用 物 质 这一 特 性 , 确 定 它 与 温 度 间 的 数 量
9、关 系 , 就 可 以 作 为 测 温 仪 器 的 感 应 部 分 , 制 成 各 种 各样 的 温 度 表 。数字温度表要求能实时检测外界环境温度,本系统所设计的数字温度表要求测量范围 0100,精度大于 0.5,用数码管显示测量结果。决 定 用 以 下 方 案 : 要 设 计 一 个 数 字 显 示 温 度 表 , 首 先 要 有 信 号 采 集 电 路 , 在 本 设计 中 , 我 们 采 用 的 电 流 型 温 度 传 感 器 AD590 来 构 架 温 度 采 集 系 统 , 采 集 到 的 温 度 信号 经 过 传 感 器 的 处 理 转 换 成 电 信 号 , 在 这 里 我 们
10、 得 到 的 仅 仅 是 模 拟 信 号 , 所 以 我 们 要将 信 号 转 换 为 数 字 信 号 , 我 们 考 虑 到 用 8 位 模 数 转 换 器 ADC0804 完 成 这 个 阶 段 , 最后 我 们 用 七 段 LED 显 示 器 来 进 行 数 字 显 示 。1.2 A/D 转换器的合理选用自 然 界 中 , 许 多 物 理 量 大 多 数 是 模 拟 量 , 需 要 进 行 适 当 的 变 换 才 能 转 化 为 数 字 量 。例 如 , 先 把 被 测 的 模 拟 物 理 量 通 过 变 换 器 转 换 成 直 流 电 压 , 再 将 所 得 到 的 直 流 电 压 量
11、转 换 成 数 字 量 ; 或 者 将 所 得 到 的 直 流 电 压 转 换 成 时 间 间 隔 , 再 转 换 成 数 字 量 。1.2.1 A/D 转换器的主要技术指标A/D 转 换 器 的 主 要 技 术 指 标 有 转 换 精 度 、 转 换 速 度 等 。 选 择 A/D 转 换 器 时 , 除考 虑 这 两 项 技 术 指 标 外 , 还 应 注 意 满 足 其 输 入 电 压 的 范 围 、 输 出 数 字 的 编 码 、 工 作 温度 范 围 和 电 压 稳 定 度 等 方 面 的 要 求 。 转 换 精 度单 片 集 成 A/D 转 换 器 的 转 换 精 度 是 用 分
12、辨 率 和 转 换 误 差 来 描 述 的 。 分 辨 率A/D 转 换 器 的 分 辨 率 以 输 出 二 进 制 ( 或 十 进 制 ) 数 的 位 数 来 表 示 。 它 说 明 A/D转 换 器 对 输 入 信 号 的 分 辨 能 力 。 从 理 论 上 讲 , n 位 输 出 的 A/D 转 换 器 能 区 分 2 个 不同 等 级 的 输 入 模 拟 电 压 , 能 区 分 输 入 电 压 的 最 小 值 为 满 量 程 输 入 的 1/2n。 在 最 大 输入 电 压 一 定 时 , 输 出 位 数 愈 多 , 分 辨 率 愈 高 。 例 如 A/D 转 换 器 输 出 为 8
13、位 二 进 制 数 ,输 入 信 号 最 大 值 为 5V,那 么 这 个 转 换 器 应 能 区 分 出 输 入 信 号 的 最 小 电 压 为 9.53mV。 转 换 误 差数字温度表设计1转 换 误 差 通 常 是 以 输 出 误 差 的 最 大 值 形 式 给 出 。 它 表 示 A/D 转 换 器 实 际 输 出 的数 字 量 和 理 论 上 的 输 出 数 字 量 之 间 的 差 别 。 常 用 最 低 有 效 位 的 倍 数 表 示 。 例 如 给 出相 对 误 差 LSB/2, 这 就 表 明 实 际 输 出 的 数 字 量 和 理 论 上 应 得 到 的 输 出 数 字 量
14、之 间的 误 差 小 于 最 低 位 的 半 个 字 。 转 换 时 间转 换 时 间 是 指 A/D 转 换 器 从 转 换 控 制 信 号 到 来 开 始 , 到 输 出 端 得 到 稳 定 的 数 字 信号 所 经 过 的 时 间 。 A/D 转 换 器 的 转 换 时 间 与 转 换 电 路 的 类 型 有 关 。 不 同 类 型 的 转 换 器转 换 速 度 相 差 甚 远 。 其 中 并 行 比 较 A/D 转 换 器 的 转 换 速 度 最 高 , 8 位 二 进 制 输 出 的单 片 集 成 A/D 转 换 器 转 换 时 间 可 达 到 50ns 以 内 , 逐 次 比 较
15、型 A/D 转 换 器 次 之 , 它 们多 数 转 换 时 间 在 10 50s 以 内 , 间 接 A/D 转 换 器 的 速 度 最 慢 , 如 双 积 分 A/D 转 换 器的 转 换 时 间 大 都 在 几 十 毫 秒 至 几 百 毫 秒 之 间 。 在 实 际 应 用 中 , 应 从 系 统 数 据 总 的 位 数 、精 度 要 求 、 输 入 模 拟 信 号 的 范 围 以 及 输 入 信 号 极 性 等 方 面 综 合 考 虑 A/D 转 换 器 的 选用 。1.2.2 A/D 转换器的选用原则A/D 转换器是将模拟量转换成数字量的芯片,选用 A/D 转换器应考虑以下几个问题:
16、选择分辨率。低分辨率 38 位。中分辨率 912 位。A/D 还包括 BCD 三位半。高分辨串 13 位以上,A/D 还包括 BCD 四位半。确定精度。对输入或输出特性和范围提出要求。确定电源种类和功耗。A/D 根据转换速度、精度、用途等选择转换方式:低速有双重积分方式等,常用于仪器仪表。中速有逐次比较方式等,常用于一般自动控制。高速有并行方式、串行方式等。A/D 转换路数等。1.2.3 本系统中 A/D 转换器的选择ADC0804 的规格及引脚图8 位 COMS 依次逼近型的 A/D 转换器。三态锁定输出存取时间:135US分辨率:8 位数字温度表设计12转换时间:100US总误差:正负 1
17、LSB工作温度:ADC0804LCN-070 度图 2.1 ADC0804 引脚图:芯片选择信号。CS:外部读取转换结果的控制输出信号。 为 HI 时,DB 0DB7 处理高阻抗;RDRD为 LO 时,数字数据才会输出。:用来启动转换的控制输入,相当于 ADC 的转换开始( =0 时) ,当 WCSWR由 HI 变为 LO 时,转换器被清除:当 回到 HI 时,转换正式开始。WCLK IN,CLK R:时钟输入或接振荡无件(R,C)频率约限制在100KHZ1460KHZ,如果使用 RC 电路则其振荡频率为 1/(1.1RC) 。:中断请求信号输出,低地平动作。INTRVIN(+) VIN(-)
18、:差动模拟电压输入。输入单端正电压时, VIN(-)接地;而差动输入时,直接加入 VIN(+) VIN(-)。AGND,DGND:模拟信号以及数字信号的接地。VREF:辅助参考电压。DB0DB7:8 位的数字输出。VCC:电源供应以及作为电路的参考电压。1.2.4 ADC0804 转换原理以输出 8 位的 ADC0804 动作来说明“逐次逼近式 A/D 转换器”的转换原理,动作步骤如下表示(原则上先从左侧最高位寻找起) 。第一次寻找结果:10000000(若假设值输入值,则寻找位=假设位=1)ADC0841234567891012131561781920CSRDWINTRCLK INV()I(
19、)A GDREFV/2 N CVREFLKDB0(S)12DB34B5D67(MS)数字温度表设计13第二次寻找结果:11000000(若假设值输入值,则寻找位=假设位=1)第三次寻找结果:11000000(若假设值输入值,则寻找位=该假设位=0)第四次寻找结果:11010000(若假设值输入值,则寻找位=假设位=1)第五次寻找结果:10100000(若假设值输入值,则寻找位=该假设位=0)第六次寻找结果:11010100(若假设值输入值,则寻找位=假设位=1)第七次寻找结果:11010110(若假设值输入值,则寻找位=假设位=1)第八次寻找结果:11010110(若假设值输入值,则寻找位=假
20、设位=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、
21、单片机(8051)等的典型连接图频率的计算方法是 CRfCK1.若以图 2.2 的 、 为例,则内部的转换频率是0PF150KHzf 6.更换不同的 R、C 值,会有不同的转换频率,而且频率愈高代表转换速度愈快。ADC0804 的控制方法以图 2.2 的信号流向来看,控制 ADC0804 动作的信号应该只有 CS、WR、RD。数字温度表设计14其中 INTR 由高电位转向低电位后,代表 ADC0804 完成这次的模拟/数字转换,而DB0-DB7 代表是转换后的数字资料。ADC0804 的动作大概分为 4 个步骤区间S0、S 1、S2、S3,每个步骤区间的动作如下:步骤 S0:CS=0、WR=0
22、、RD=1(由 CPLD 发出信号要求 ADC0804 开始进行模拟/数字信号的转换)。步骤 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 上的数字转换资料)。由上述的步骤说明,可以归纳出所要设计的 CPLD 动作功能有:负责在每个步骤送出所需的 CS、WR、RD 控制信号。在步骤 S1 时,监控 INTR 信号是否由低电位变为高电位
23、,如此以便了解ADC0804 的转换动作结束与否。 在 步 骤 S3, 读 取 转 换 的 数 字 资 料 DB0-DB7。1.3 A/D 温度传感器的合理选用信 息 处 理 技 术 取 得 的 进 展 以 及 微 处 理 器 和 计 算 机 技 术 的 高 速 发 展 , 都 需 要 在 传 感器 的 开 发 方 面 有 相 应 的 进 展 。 微 处 理 器 现 在 已 经 在 测 量 和 控 制 系 统 中 得 到 了 广 泛 的应 用 。 随 着 这 些 系 统 能 力 的 增 强 , 作 为 信 息 采 集 系 统 的 前 端 单 元 , 传 感 器 的 作 用 越 来越 重 要 。
24、 传 感 器 已 成 为 自 动 化 系 统 和 机 器 人 技 术 中 的 关 键 部 件 , 作 为 系 统 中 的 一 个 结构 组 成 , 其 重 要 性 变 得 越 来 越 明 显 。1.3.1 传感器选用原则现代传感器在原理与结构上千差万别,如何根据具体的测量目的、测量对象以及测量环境合理地选用传感器,是在进行某个量的测量时首先要解决的问题。当传感器确定之后,与之相配套的测量方法和测量设备也就可以确定了。测量结果的成败,在很大程度上取决于传感器的选用是否合理。根据测量对象与测量环境确定传感器的类要进行个具体的测量工作,首先要考虑采用何种原理的传感器,这需要分析多方面的因素之后才能确
25、定。因为,即使是测量同一物理量,也有多种原理的传感器可数字温度表设计15供选用,哪一种原理的传感器更为合适,则需要根据被测量的特点和传感器的使用条件考虑以下一些具体问题:量程的大小;被测位置对传感器体积的要求;测量方式为接触式还是非接触式;信号的引出方法,有线或是非接触测量;传感器的来源,国产还是进口,价格能否承受,还是自行研制。在考虑上述问题之后就能确定选用何种类型的传感器,然后再考虑传感器的具体性能指标。灵敏度的选择通常,在传感器的线性范围内,希望传感器的灵敏度越高越好。因为只有灵敏度高时,与被测量变化对应的输出信号的值才比较大,有利于信号处理。但要注意的是,传感器的灵敏度高,与被测量无关
26、的外界噪声也容易混入,也会被放大系统放大,影响测量精度。因此,要求传感器本身应具有较高的信噪比,尽员减少从外界引入的厂扰信号。传感器的灵敏度是有方向性的。当被测量是单向量,而且对其方向性要求较高,则应选择其它方向灵敏度小的传感器;如果被测量是多维向量,则要求传感器的交叉灵敏度越小越好。频率响应特性传感器的频率响应特性决定了被测量的频率范围,必须在允许频率范围内保持不失真的测量条件,实际上传感器的响应总有定延迟,希望延迟时间越短越好。传感器的频率响应高,可测的信号频率范围就宽,而由于受到结构特性的影响,机械系统的惯性较大,因有频率低的传感器可测信号的频率较低。在动态测量中,应根据信号的特点(稳态、瞬态、随机等)响应特性,以免产生过火的误差。线性范围传感器的线形范围是指输出与输入成正比的范围。以理论上讲,在此范围内,灵敏度保持定值。传感器的线性范围越宽,则其量程越大,并且能保证一定的测量精度。在选择传感器时,当传感器的种类确定以后首先要看其量程是否满足要求。但实际上,任何传感器都不能保证绝对的线性,其线性度也是相对的。当所要求测量精度比较低时,在一定的范围内,可将非线性误差较小的传感器近似看作线性的,这会给测量带来极大的方便。稳定性传感器使用一段时间后,其性能保持不变化的能力称为稳定性。影响传感器长期稳定性的因素除传感器本身结构外,主要是传感器的使用环境。因此,要使传感器具