温度测量与控制电路

合集下载

pt100温度测量与控制电路设计实例

pt100温度测量与控制电路设计实例

C1
C2

1
2 R1 fc
1.592
(F)
(4)低通滤波器参数的确定
U1、R1、R2、R3、C1、C2等组成有源低通滤波器, 它们用于滤除工频信号的干扰,同时必须满足ADC 采样定理(即乃奎斯特采样定理)。由于称重信号 为直流信号,AD7798的采样率可设置为33.3Hz,考 虑到滤波效果,取低通滤波器的截止频率均为 fc=10Hz。令C1=C2,则有
C1
C2

1
2 R1 fc
1.592
(F)
取标称值C1=C2=2μF。
为了减少外界温度测温结果的影响,各电阻 (如R1、R2、R3、R4、R5、R6)的温度系数 必须很小。工程应用中,一般采用温度系数 为5ppm的塑封电阻,同时应选用温度系数小 的运算放大器。
(3)ADC与CPU电路

Au

1
2
R1 R2

R6 R4
由PT100的T-RT的关系(即温度与电阻的 关系)可知,当温度变化0.1℃时,RT的变化 值ΔRT约为0.04Ω,电桥测温电路输出电压变 化值ΔV0.1为
V1

(
RT RT RS1 (RT RT )

RS3 RS 2RS
3
)
VCC
注意事项
ADC的注意事项 MCU的注意事项
(4)测温电路的非线性校正
非线性校正的原因 非线性校正的原理

(4)测温电路的非线性校正
分段线性插值校正原理
步骤: 1)获取样本(T1, U1); (T2, U2);…; (Ti, Ui); 2) 利用分段线性插值公式,获得电压输出为 ux时,Pt100测的温度。

温度测量与控制电路

温度测量与控制电路

温度是一个与人们生活和生产密切相关的重要物理量。

温度的测量和控制技术应用十分广泛。

在工农业生产和科学研究中,时常需要对某一系统的温度进行测量,并能自动的控制、调节该系统的温度。

本设计主要结合摹拟电子技术和数字电子技术的基本知识来实现温度测量与控制,温度测量电路运用铂热电阻温度传感器,控制电路是通过两个电压比较电路来实现,声光报警装置采用 LED 和蜂鸣器构成。

工作原理主要是利用温度传感器把系统的温度通过A\D 转换电路将电信号转换成数字信号,并通过与之连接的译码电路中显示出来,译码显示部份应用有内置译码器的四输入数码管完成,而 8 位二进制数到 8421BCD 码的转换由 74185 来实现。

同时电压信号通过电压比较器与输入电压比较决定输出是高电平或者是低电平,进而控制下一个电路单元的工作状态。

调温控制电路中,测量温度大于设定温度时,控制电路接通降温设备对其降温,测量温度小于设定温度时,控制电路接通加热设备对其加热。

报警系统是将测量温度与上下限温度通过电压比较器比较。

温度传感器差动放大电路二阶低通有源滤波器 A/D 转换电压比较器控制温度声光报警1. 测量温度范围为 20℃~165℃,精度 0.50℃;2. 被测量温度与控制温度均可数字显示;3. 控制温度连续可调;4. 温度超过设定值时,产生声光报警。

1.方案比较方案一:系统方框图如图 1 所示, 温度传感器测量被测量的温度, 转换成电压信号后经过滤波消 除干扰信号, 放大电路将所测信号幅度与后续电路的工作范围做一匹配, 所得实用信号经过 A/D 转换专职转换成数字信号。

此数字信号经三条路径:其一,进入超限报警装置与所设定 的温度范围进行比较,若超限则发出声光报警;其二,经过码制转换后进入数码管显示当前 所测温度; 其三, 进入数字比较器与输入的控制温度进行比较, 产生温度控制机构的工作信 号, 同时显示输入的控制温度。

此系统可以对被测体的温度进行实时跟踪测量, 并进行有效 控制,总体上实现了温度的测量与控制。

温控电路温度的设定原理

温控电路温度的设定原理

温控电路温度的设定原理温控电路用于控制设备或系统中的温度,它能够根据设定的温度值自动调节系统状态,以使温度保持在预定范围内。

温控电路的设定原理主要包括以下几个方面:1. 温度测量:温控电路首先需要通过传感器或其他温度测量设备来测量当前环境或系统的温度。

常用的温度测量传感器包括热敏电阻、热电偶和红外传感器等。

这些传感器在受到温度影响时会产生相应的电信号,温控电路可以通过接收和解析这些信号来获取当前的温度数值。

2. 温度设定:温控电路中需要设定一个或多个目标温度值,这些设定值用于指示系统需要保持的温度范围。

例如,在家用空调中,用户可以设定期望的室内温度为25摄氏度。

3. 温度比较:温控电路通过将当前温度数值和设定温度值进行比较,以确定系统是否需要进行调节。

当当前温度大于设定温度时,温控电路会判断系统需要降温,相反,当当前温度小于设定温度时,温控电路会认为系统需要加热。

4. 控制输出:根据比较结果,温控电路将做出相应的控制输出。

通常情况下,温控电路会输出一个开关信号,根据需要开启或关闭对应的控制设备,如冷却风扇、加热器、压缩机等。

比如在空调系统中,当室内温度高于设定温度时,温控电路会发送信号给压缩机,使其开始工作以降低温度。

5. 反馈控制:为了实现更精确的温度控制,温控电路通常还会采用反馈控制的方式。

通过不断地检测和调整温度,温控电路能够及时反馈温度的变化,并根据反馈信息调整控制输出,以使系统能够更快速和精确地达到设定的温度值。

温控电路的设定原理基于控制理论中的反馈控制原理,并结合具体的传感器、比较器、控制器等电子元件来实现。

其核心思想是根据温度测量值和设定值之间的差异来控制系统输出,使温度保持在合适的范围内。

其中,温度测量和设定是关键的输入,而比较和控制输出是温控电路实现系统控制的核心。

总结起来,温控电路的设定原理是通过温度测量、温度设定、温度比较和控制输出等步骤,以实现对系统温度的自动控制。

这一原理在诸多领域和设备中得到了广泛应用,从家电中的空调、电冰箱到工业设备中的热处理系统都需要使用温控电路来实现精确的温度控制。

NTC温度监测及控制电路

NTC温度监测及控制电路

大庆石油学院课程设计2009年 6 月 29 日大庆石油学院课程设计任务书课程电子技术课程设计题目 NTC温度监测及控制电路专业自动化姓名李连会学号0215 主要内容:运用双臂电桥、差动集成运放、滞回比较器设计温度监测及控制电路。

基本要求:(1)、检测电路采用热敏电阻Rt(NTC)作为测温元件。

(2)、用100Ω/2W的电阻元件作为加热装置。

(3)、设计温度检测电路和温度控制电路。

(4)、具有自动指示“加热”与“停止”功能。

(5)、写出完整的设计及实验调试总结报告。

参考资料:[1] 孙淑燕,张青.电子技术教学实践指导书[M].北京:中国电力出版社,.[2] 刘润华,刘立山.模拟电子技术[M].山东:石油大学出版社,2003.[3] 廖先芸,郝军.电子技术实践教程[M].北京:石油工业出版社,.[4] 汪学典.电子技术基础实验[M].武汉:华中科技大学出版社,.[5] 彭介华.电子技术课程设计指导[J].北京:高等教育出版社,1997.完成期限至指导教师专业负责人2009年 6 月 27 日目录1 设计要求...................................... 错误!未定义书签。

2方案设计...................................... 错误!未定义书签。

设计思路.................................... 错误!未定义书签。

总体方案方框图.............................. 错误!未定义书签。

基本原理.................................... 错误!未定义书签。

3总体方案的选择和设计.......................... 错误!未定义书签。

PTC温度控制电路........................... 错误!未定义书签。

NTC温度监测及控制电路..................... 错误!未定义书签。

基于测温三极管传感器的温度测控电路设计

基于测温三极管传感器的温度测控电路设计

扬州大学能源与动力工程学院课程设计报告题目:基于测温三极管传感器的温度测控电路设计课程:测控电路与传感器课程设计专业:测控技术与仪器班级:测控0902姓名:张健学号:091301222指导教师: 纪晓华杨鹏完成时间:总目录第一部分:任务书第二部分:课程设计报告第三部分:设计电路图第二部分课程设计报告目录1课题简介 (1)1.1 基于测温三极管的温度测控电路设计简介 (1)2设计要求及技术指标 (1)2.1课程设计的目的和设计的任务 (1)2.2课程设计的要求及技术指标 (1)3总方案及原理框图 (1)3.1设计的原理框图 (1)3.2 设计的总方案 (2)4各组成部分的工作原理 (2)4.1 电路的设计 (2)4.2 总原理图 (3)4.3 电路工作原理 (3)4.4仪器的选择与计算 (3)4.5制作与调试 (4)5实验结果分析 (4)6改进意见、收获、体会、设计总结 (5)6.1改进意见 (5)6.2收获、体会、设计总结 (5)6.3成果展示 (6)7仪器仪表清单 (7)8参考文献 (8)1、课题简介1.1基于测温三极管的温度测控电路设计简介应用C1815三极管集电极与基极相连构成二极管温度传感器,温度测量范围为-55℃~l25℃度。

三极管温度传感器与电阻组成温度电桥电路,在发酵与食品加工过程中用于监测、控制恒温箱中的温度,此温控电路可实现恒温控制和超温报警指示功能。

工作电路输出二值输出;另外可用毫安表模拟显示温控器温度2、设计要求及技术指标2.1 课程设计的目的和设计的任务通过设计了解如何运用电子技术来实现温度测量和控制任务,完成温度测量和控制电路的连接和调试,学会对电子电路的检测和排除电路故障,进一步熟悉常用电子仪器的使用,提高分析电路设计、调试方面问题和解决问题的能力。

1、掌握传感器选择的一般设计方法;2、掌握模拟IC器件的应用;3、掌握测量电路的设计方法;4、培养综合应用所学知识来指导实践的能力。

pt100温度测量电路图(电子发烧友)

pt100温度测量电路图(电子发烧友)

PT100与热敏电阻相反,热敏电阻温度越高电阻值越小pt100温度测量电路,温度传感器PT100是一种稳定性和线性都比较好的铂丝热电阻传感器,可以工作在 -200℃ 至650℃ 的范围.本电路选择其工作在 -19℃ 至500℃ 范围.整个电路分为两部分,一是传感器前置放大电路,一是单片机 A/D 转换和显示,控制,软件非线性校正等部分.前置放大部分原理图如下:工作原理:传感器的接入非常简单,从系统的 5V 供电端仅仅通过一支 3K92 的电阻就连接到 PT100 了.这种接法通常会引起严重的非线性问题,但是.由于有了单片机的软件校正作为后盾,因此就简化了传感器的接入方式.按照 PT100 的参数,其在0℃ 到500℃ 的区间内,电阻值为 100 至280.9Ω,我们按照其串联分压的揭发,使用公式:Vcc/(PT100+3K92)* PT100 = 输出电压(mV),可以计算出其在整百℃时的输出电压,见下面的表格:温度℃PT100 阻值Ω传感两端电压 mV0 100.00 124.381 100.39 124.850 119.40 147.79100 138.51 170.64150 157.33 192.93200 175.86 214.68250 194.10 235.90300 212.05 256.59350 229.72 276.79400 247.09 296.48450 264.18 315.69单片机的 10 位 A/D 在满度量程下,最大显示为 1023 字,为了得到 PT100 传感器输出电压在显示 500 字时的单片机 A/D 转换输入电压,必须对传感器的原始输出电压进行放大,计算公式为:(500/1023 * Vcc)/传感器两端电压( mV/℃ ) ,(Vcc=系统供电=5V),可以得到放大倍数为 10.466 。

关于放大倍数的说明:有热心的用户朋友询问,按照 (500/1023 * Vcc)/传感器两端电压不能得到 10.466 的结果,而是得到 11.635的结果。

pt100温度测量电路图(电子发烧友)

pt100温度测量电路图(电子发烧友)

PT100与热敏电阻相反,热敏电阻温度越高电阻值越小pt100温度测量电路,温度传感器PT100是一种稳定性和线性都比较好的铂丝热电阻传感器,可以工作在 -200℃ 至650℃ 的范围.本电路选择其工作在 -19℃ 至500℃ 范围.整个电路分为两部分,一是传感器前置放大电路,一是单片机 A/D 转换和显示,控制,软件非线性校正等部分.前置放大部分原理图如下:工作原理:传感器的接入非常简单,从系统的 5V 供电端仅仅通过一支 3K92 的电阻就连接到 PT100 了.这种接法通常会引起严重的非线性问题,但是.由于有了单片机的软件校正作为后盾,因此就简化了传感器的接入方式.按照 PT100 的参数,其在0℃ 到500℃ 的区间内,电阻值为 100 至280.9Ω,我们按照其串联分压的揭发,使用公式:Vcc/(PT100+3K92)* PT100 = 输出电压(mV),可以计算出其在整百℃时的输出电压,见下面的表格:温度℃PT100 阻值Ω传感两端电压 mV0 100.00 124.381 100.39 124.850 119.40 147.79100 138.51 170.64150 157.33 192.93200 175.86 214.68250 194.10 235.90300 212.05 256.59350 229.72 276.79400 247.09 296.48450 264.18 315.69单片机的 10 位 A/D 在满度量程下,最大显示为 1023 字,为了得到 PT100 传感器输出电压在显示 500 字时的单片机 A/D 转换输入电压,必须对传感器的原始输出电压进行放大,计算公式为:(500/1023 * Vcc)/传感器两端电压( mV/℃ ) ,(Vcc=系统供电=5V),可以得到放大倍数为 10.466 。

关于放大倍数的说明:有热心的用户朋友询问,按照 (500/1023 * Vcc)/传感器两端电压不能得到 10.466 的结果,而是得到 11.635的结果。

温度测量与控制电路创新实验设计

温度测量与控制电路创新实验设计
器 与预 先设定 的 电压 ( 控制 温 度 ) 行 比较 , 进 由比较 器
基金项目: 华南理工大学 电气信 息与控制 国家级教学 实验示 范中心创
新 项 目(d —9 9 0 w) x xy 0 0 3
作 者 简 介 : 锋 ( 9 6 ) 男 , 东 汕 头 , 士 , 程 师 , 校 区 电 工 电 张廷 1 6一 , 广 硕 工 南
I S 1 02 S N 0
- . . . . . . . . . . . . . . . . . . . . .
4 5 9 6








...............................—
第2 8卷
第1 2期
21 年 1 01 2月
CN1 —2 3 / 1 04T
Ex rme t lTe h l g n a a e e t pe i n a c no o y a d M n g m n
路实验 内容 涵盖 了 电工 电子 技术 中的受 控源 、 电流/ 电
压 变换 、 电压 跟 随器 、 号放 大 、 信 电压 比较 器 、 电接触 继
收稿 日期 :0 1 0 — 5 2 1 — 2 2
置、 温度显示 、 功率 输 出等组成 。温 度传感 器 的作用是
把温 度值转 换成 电流或 电压信 号 , 一 变换 器 是 将 绝 K℃ 对温 度 ( 转 换 成摄 氏温 度 ( , K) ℃) 经放 大 后 送 入 比较
E mal t h n @ s u . d . n . i: z a g c t e u c f
2 .华 南理 工大 学 电力 学院 ,广 东 广 州 5 00 ) 1 0 6
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《电子技术》课程设计报告题目温度测量与控制电路学院(部)电子与控制工程学院专业电子科学与技术班级 32050701学生姓名郭鹏学号 3205070113指导教师(签字)前言随着数字时代的到来,人们对于温度的测量与控制的要求越来越高,用传统的水银或酒精温度计来测量温度,不仅测量时间长、读数不方便、精度不够高而且功能单一,已经不能满足人们在数字化时代的要求。

于是我们提出,测温电路利用温度传感器监测外界温度的变化,通过放大器将温度传感器接收到的信号进行放大,放大到比较有利于我们测量的温度范围,然后利用A/D转换器实现模拟信号到数字信号的转换,最后通过编程让FPGA实现8位二进制数与BCD码之间的转化,实现温度的显示;并利用比较器来实现对放大电压信号的控制,从而实现对温度的控制;再者还加载了报警装置,使它的功能更加完善,使用更加方便。

本设计是采用了温度的测量、信号放大、A/D转换、温度的显示、温度的控制、报警装置六部分来具体实现上述目的。

目录摘要与设计要求 (4)第一章:系统概述 (5)第二章:单元电路设计与分析 (5)1) 方案选择 (5)2)设计原理与参考电路 (6)1 放大电路 (6)2 低通滤波电路 (7)3 温度控制电路 (8)4 报警电路 (9)5 A/D转换器 (10)6 译码电路 (11)第三章:系统综述、总体电路图 (14)第四章:结束语 (15)参考文献 (15)元器件明细表 (15)收获与体会,存在的问题等 (16)温度测量与控制电路摘要:利用传感器对于外界的温度信号进行收集,收集到的信号通过集成运算放大器进行信号放大,放大后的信号经过A/D转换器实现模拟信号与数字信号间的转换,再通过FPGA编程所实现的功能将转换后的数字信号在数码管上显示出来,实现温度测量过程。

放大的信号可以与所预定的温度范围进行比较,如果超出预定范围,则自动实现声光报警功能,实现温度控制过程。

关键字:温度测量温度控制信号放大A/D转换声光报警设计要求:1. 测量温度范围为200C~1650C,精度 0.50C;2. 被测量温度与控制温度均可数字显示;3. 控制温度连续可调;4. 温度超过设定值时,产生声光报警。

第一章系统概述传感器两端的电压信号变化不大,经过放大电路和滤波电路之后就会形成一个比较大的模拟量。

这个模拟量有两个电路使用,一个是AD转换器,另一个就是控制温度电路。

当被测温度超过控制温度时控制温度电路就会产生报警信号,驱动报警电路达到报警要求。

当然,控制电压分别要接另外两个AD转换器和译码显示电路,达到数码显示的要求。

整个系统的设计思路是从A/D转换器出发的,由于A/D转换器的模拟电压输入量需要一个比较大的值,所以传感器的信号要经过放大电路,由于放大电路本身以及传感器外界的干扰因素,在放大电路之后要加一级低通滤波器。

经过滤波之后的信号就是我们需要的模拟信号。

这个模拟信号分别接两个输入端,一个是A/D转换器的输入端,另一个是控制温度输入端。

A/D转换器的数字输出接译码显示电路。

系统的硬件流程图如下图所示:第二章单元电路设计与分析1)、方案选择放大电路,低通滤波电路,报警电路以及控制电路相对比较容易实现,在数据采集的过程中,采集到得八位二进制数如何转换成十二位的BCD码,实现起来有些问题,有两种方案可供选择:1采用组合逻辑电路,用74系列的加法器283先形成BCD的一位加法器,再通过级联的方式译码。

2用FPGA芯片进行编程,输入为二进制数(并不一定是二进制自然码),输出为12位BCD码。

经过比较,第二种方案可行,并且简单,方便易懂。

第一种方案很难实现,并且某一个温度所对应的AD转换器的输出量,并不一定是这个温度对应的二进制数自然码。

所以想要实现第一种方案,还要另外在AD转换器的输出端加一个八位的加法器,这样会使电路更加复杂。

而第二种方案用VHDL编写程序,简单易懂,并且器件的执行速度快,还略去了组合逻辑电路的复杂性。

数据转换器的位数也有两种方案可供选择:1采用八位数据转换器。

因为测量电路的要求是:量程为20到165;精确到0.5,这样算下来需要至少产生290个二进制数来表示温度,也就是说AD转换器至少要9位才可以。

持这种意见的同学认为,八位AD转换器虽然少了一位,但是可以用比较器额外增加一位。

2采用16位的AD转换器。

采用16位AD转换器,可以省去数模混合电路的设计,这样电路就会更加简单。

所以决定用16位AD转换器,但是只取9位。

并且只有八位译码,另外一位控制小数点后面的0.5.这样即达到了设计要求,而且还简化了译码的程序。

2):设计原理与参考电路1、放大电路:采用三级集成运算放大电路,集成运算放大器型号为LM324,LM324系列器件为差动输入的四运算放大器。

与单电源应用场合的标准运算放大器相比,它们有一些显著优点。

该四放大器可以工作在低到3.0伏或者高到32伏的电源下,静态电流为MC1741的静态电流的五分之一。

共模输入范围包括负电源,因而消除了在许多应用场合中采用外部偏置元件的必要性。

在该放大电路中,我们将传感器收集到的信号定义为VEE,因为该信号过于微弱,所以需要经过集成运算放大器进行信号放大,放大到便于我们测量的电压值,该电路采用三级集成运算放大器,放大倍数约为1248倍,经过实际测量得到了放大后的电压值如下图所示:放大电路图如上图所示:在该电路图中,放大电路的2号引线为接收传感器信号的输入端(我们将VEE定义为传感器的输入信号),第三级放大器的9号引线为放大信号的输出端,它接的是滤波电路。

2、低通滤波器如图所示:因为传感器的输入和放大器本身不可避免的会带有一些高次谐波或高频干扰信号,这会对A/D转换器的数据采集造成干扰,为了削弱高次谐波或高频干扰的场合,提高测量的精度,所以要加一级或者多级低通滤波器(仿真中为一级)。

具体电路如上图所示。

由于同向比例放大电路的电压增益为Auf=A0+R2/R1,只要将R1的电阻值设置为远大于R2的电阻值,则电压增益可忽略不计,例如:当VCC=10V时,通过放大器后的输出电压为10.002,电压增益对于整体电路的电压输出并无决定性影响,在该电路中,电源VCC实际上是从上一级放大器接收到得放大信号,而放大器接电阻R3另一端接的是译码电路。

3、温度控制电路:控制温度电路主要由两个电压比较器组成,第一个电压比较器(上方)控制的是温度下限,第二个控制的是温度上限,当温度所对应的电压超过量程时,两个电压比较器会有一个输出高电平,比较器的电源电压控制的适当,这个高电平就可以和门电路(或门)连接。

仿真时,电源电压为5V,比较器输出电压为4V。

控制温度电路的输入端接电压跟随器,这个电压跟随器再和滤波电路的输出端连接。

控制温度电路的输出端(或门输出端)直接连接报警电路。

温度控制电路图如下图所示:4、控制报警电路:在设计报警电路时,我们采用了555多谐振荡器来实现报警功能,利用一个发光二极管来实现光报警,蜂鸣器来实现声音报警,具体电路图如下图所示:在该电路图中18接的是控制电路两个比较器出来的信号,当信号大于VDD2的电压预定值,或者小于VDD1的电压预定值时,该555报警电路会自动报警,发光二极管产生光报警信号,蜂鸣器产生声音报警信号。

5、A/D转换器:采用十六位的A/D转换器,但是由于课程设计中要求的精度为0.5V,量程为20到165,也就是说小数点后面的数字不是0就是5,所以在译码时只需要将高8位译成BCD码,用第7位来控制小数0.5,当第7位为高电平时,小数部分为0.5,当第7位为低电平时,小数部分为0.而高位的8位二进制数并不一定是二进制自然码,这个问题会在译码电路中得到解决。

AD转换器的其他管脚悬空即可。

AD转换器的模拟量输入端在与放大电路连接之前要加电压跟随器,这样可以防止压降的变化,减小误差。

假设当温度为20摄氏度时,传感器的电压为0.5mV,当温度为165摄氏度时,假设温度为3.4mV(如果温度和电压值不能对应,可以改进桥式电路,或者加一个上拉电阻,使传感器的电压值增大)AD转换器如图所示:在该电路中,Vin接的是低通滤波器传过来的放大信号,D7到D15接的是译码电路,即PLD 芯片,Vref+和Vref-接的是一个电压范围,即在该范围内工作,SOC为输入的脉冲信号。

6、译码电路:由于经过A/D转换器输出的为二进制数,这些二进制数在数码管上并不能完全显示,为了能很好的再数码管上显示温度,本次的课程设计采用的译码电路为FPGA芯片,利用VHDL 编程来实现译码功能。

VHDL源程序如下:ibrary ieee;use ieee.std_logic_1164.all;entity BCD isport(reset: in std_logic;OE: in std_logic;Vin:in std_logic_vector(7 downto 0);Vout1: out std_logic_vector(3 downto 0);Vout2: out std_logic_vector(3 downto 0);Vout3: out std_logic_vector(3 downto 0));end entity;architecture behave of BCD issignal temp_q: integer range 0 to 199;signal temp_q0,temp_q1,temp_q2,temp_q3:integer range 0 to 99;FUNCTION vector_to_int(input :in std_logic_vector(7 downto 0))return integer isVARIABLE q,p:integer :=0;beginfor i in 7 downto 0 loopp:=0;if(input(i)='1') thenp:=2**(i-0);elsenull;end if;q:=q+p;end loop;return (q);end vector_to_int;beginprocess(reset,OE)beginif(OE='0')thenVout1<="0000";Vout2<="0000";Vout3<="0000";elsif(OE='1' and reset='1')thenVout1<="0000";Vout2<="0000";Vout3<="0000";elsetemp_q<=vector_to_int(Vin);if(temp_q>=100 )thentemp_q3<=1;temp_q0<=temp_q-100;temp_q1<=temp_q0 REM 10;temp_q2<=temp_q0-temp_q1;else if(temp_q<100 and temp_q>0)then temp_q3<=0;temp_q0<=temp_q;temp_q1<=temp_q0 REM 10;temp_q2<=temp_q0-temp_q1;end if;end if;end if;case temp_q1 iswhen 0=>Vout1<="0000";when 1=>Vout1<="0001";when 2=>Vout1<="0010";when 3=>Vout1<="0011";when 4=>Vout1<="0100";when 5=>Vout1<="0101";when 6=>Vout1<="0110";when 7=>Vout1<="0111";when 8=>Vout1<="1000";when 9=>Vout1<="1001";when others =>Vout1<="0000";end case;case temp_q2 iswhen 0=>Vout2<="0000";when 10=>Vout2<="0001";when 20=>Vout2<="0010";when 30=>Vout2<="0011";when 40=>Vout2<="0100";when 50=>Vout2<="0101";when 60=>Vout2<="0110";when 70=>Vout2<="0111";when 80=>Vout2<="1000";when 90=>Vout2<="1001";when others =>Vout2<="0000";end case;case temp_q3 iswhen 0=>Vout3<="0000";when 1=>Vout3<="0001";when others =>Vout3<="0000";end case;end process;end behave;分别定义FPGA的清零端reset,使能端OE,八个输入Vin0到Vin7和三个输出Vout3(3 downto 0)Vout2(3 downto 0)Vout1(3 downto 0)。

相关文档
最新文档