当前位置:首页 > 基于FPGA的温度监控系统 - 图文
山东科技大学学士学位论文 总体方案的论证
对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。Altera的Quartus II可编程逻辑软件属于第四代 PLD开发平台。 该平台支持一个工作组环境下的设计要求,其中包括支持基于Internet的协作设计。Quartus平台与 Cadence、ExemplarLogic、 MentorGraphics、Synopsys 和 Synplicity等EDA供应商的开发工具相兼容。改进了软件的 LogicLock 模块设计功能,增添了FastFit 编译选项,推进了网络编辑性能,而且提升了调试能力。
Quartus II设计流程如图2.3所示。
图2.3 Quartus II设计流程
9
山东科技大学学士学位论文 系统的硬件设计
3. 系统的硬件设计
3.1 系统的总体结构设计
本次设计的数字温度计主要3部分构成,温度采集模块(DS18B20),数据处理模块(FPGA),数码管显示模块。系统硬件结构框图如图3.1。
DS18B20FPGALED数码管 图3.1 系统硬件结构框图
3.1.1 温度采集模块
鉴于要测量温度,而开发板没有测量温度的设备,所以最基本是要添加外设数字温度传感器DS18B20。DS18B20外形与三极管一样,一只脚传输数据,另外两只脚分别接地与高电平使之工作。DS18B20实时测得的室温将转化成9到12位的串行数据,对串行数据进行“翻译”就可以得出实时室温。
DS18B20主要由七部分组成:高速暂存器、8位CRC发生器、64位光刻ROM、寄生电源、温度传感器、高温触发器TH和低温触发器TL。64
10
山东科技大学学士学位论文 系统的硬件设计
位光刻ROM是温度敏感元件,其中包含了DS18B20唯一的序列号(唯一的名字)。 DS18B20共有3个引脚:GND、DQ和VDD[4]。其测得的数据与温度关系如表3.1所示。
表3.1 温度值对应的二进制温度数据
温度(℃) +125 +85 +25. 0625 +10.125 +0.5 0 -0.5 -10.125 -25.0625 -55 数据输出 (二进制) 0000 0111 1101 0000 0000 0101 0101 0000 0000 0001 1001 0001 0000 0000 1010 0010 0000 0000 0000 1000 0000 0000 0000 0000 1111 1111 1111 1000 1111 1111 0101 1110 1111 1110 0110 1111 1111 1100 1001 0000 数据输出(十六进制) 07D0h 0550h 0191h 00A2h 0008h 0000h FFF8h FF5Eh FE6Eh FC90h 图3.2是DS18B20的测温原理。从图中可以看出随着温度的变化,低温度系数晶振的振荡频率基本不会发生变化,减法计数器1接收到的信号是用于产生固定频率的脉冲信号;温度对高温度系数晶振的振荡频率的影响很大,因此,减法计数器2的脉冲输入就是其所产生的信号。图中实际上还隐含了一个计数门,DS18B20随着计数门的开启,对低温度系数振荡器产生的时钟脉冲计数,最终完成温度测量。实际上,高温度系数振荡器决定了计数门的开启时间。
减法计数器1对低温度系数振荡器产生的脉冲信号进行减法计数,如果这个计数器1的预置数为0,那么温度寄存器的值将会在此基础上加1,同时减法计数器1重新装入预置数,并对低温度系数振荡器产生的脉冲信
11
山东科技大学学士学位论文 系统的硬件设计
号进行计数,当减法计数器2计数变到0后,温度寄存器的值便停止累加,在这种情况下,所测温度值与温度寄存器中的数值一致。其中,斜率累加器的作用是修正预置值,只要计数器一直没有被关闭,那么就重复以上的过程,直到温度寄存器与被测温度值一致[5]。
图3.2 DS18B20测温原理
由于 DS18B20 是采用一根 I/ O 总线读写数据,因此DS18B20 对读写数据位有严格的时序要求。DS18B20 遵循相应的通信协议从而保证数据传输的正确性和完整性。该通信协议定义了多种信号时序:初始化时序、 写时序、 读时序。 3.1.1.1初始化时序
初始化时序中,控制器发送一个480us-960us的低电平的复位信号,然后释放总线,也就是总线为高电平,此时,控制器准备接收DS18B20的反应信号,当总线释放后,如果存在DS18B20,那么DS18B20将在15-60us内发送一个持续60-240us的反应信号,如图3.3所示。
12
共分享92篇相关文档