基于基于FPGA的智能温度采集系统的设计和实现的智能温度采集系统的设计和实现
1引言 目前大多数温度采集系统都是利用智能温度传感器DS18B20和单片机来进行设计的。本课题尝试使用
FPGA芯片进行设计。FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、
GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制
电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。鉴于此,本课题使
用硬件描述语言设计FPGA控制器来实现传感器控制,同时用VC来实现用户控制界面。 现场可编程门阵列
(Field Programmable Gate Ar
1引言引言
目前大多数温度采集系统都是利用智能温度传感器DS18B20和单片机来进行设计的。本课题尝试使用FPGA芯片进行设计。
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一
步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原
有可编程器件门电路数有限的缺点。鉴于此,本课题使用硬件描述语言设计FPGA控制器来实现传感器控制,同时用VC来实
现用户控制界面。
现场可编程门阵列(Field Programmable Gate Array,FPGA)是当今应用最广泛的一类可编程专用集成电路(ASIC)。FPGA
作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有
限的缺点。电子设计工程师利用它可以在办公室或实验室里设计出所需的专用集成电路,从而大大缩短了产品上市时间,降低
了开发成本。此外,可编程逻辑器件还具有静态可重复编程和动态在系统重构的特性。这使得硬件的功能可以像软件一样通过
编程来修改,极大地提高了电子系统设计的灵活性和通用性。
本系统中温度传感器采用的MAXIM 公司的1-Wire 器件DS18B20 温度传感器由于其结构简单、安装方便、功耗低、测温范
围宽而被广泛的应用于化工、粮食、环境监测等需要实现多点测温的地方[3];1-Wire 技术采用一根信号线进行双向数据传
输,一个控制器可以控制一个或多个从机设备,与其他标准串行数据通信方式如SPI、I2C 相比,单总线具有节省系统I/O 口线
资源、结构简单、成本低廉、便于总线扩展和维护等诸多优点。
由于 1-Wire 总线只有一根信号线,所以要完成通信就要在一根信号线上实现数据的双向传输。1-Wire 通信协议对时序的要
求非常严格,协议中一共规定了五种类型的通信时序,分别为初始化(复位)时序、写“1”时序、写“0”时序、读“1”时序和
读“0”时序,如图1 所示。所有通信都由这五种典型时序组合完成,就是说要控制好这五种时序,才能实现对1-Wire 器件的控
制。
2智能温度采集器的设计智能温度采集器的设计
采用可编程逻辑器件通过对器件内部的设计来实现系统功能,是一种基于芯片的设计方法。设计者可以根据需要定义器件
的内部逻辑和管脚,将电路板设计的大部分工作放在芯片的设计中进行,通过对芯片设计实现数字系统的逻辑功能。灵活的内
部功能块组合、管脚定义等,可大大减轻电路设计和电路板设计的工作量和难度,有效地增强设计的灵活性,提高工作效率。
同时采用可编程逻辑器件,设计人员在实验室可反复编程,修改错误,以期尽快开发产品,迅速占领市场。
基于芯片的设计方法有很多有点,它可以减少芯片的数量,不必使用多个芯片,缩小系统体积,减少连线,降低出错几
率,降低能源消耗,提高系统的性能和可靠性。在FPGA的设计中常用的设计方法有两种:自下而上和自上而下。几乎所有的
复杂的数字系统的设计,都是可以按照层次进行细分的,将系统的层次按照功能逐步的进行细化,直到每一部分都有自己特定
的功能并且不容易再进行分割为止。自上而下的设计方法非常重要,因为只有在上面的层次上才能全面确定下面模块的输入输
出和功能行为的规格,并由此进行设计。自下而上的设计方法虽然并不太重要,但是有时也行得通,其原因是有些模块的规格
本身是就是事先确定的或者基本可以确定的。
针对温度采集控制器系统的特点,决定采用自上而下的设计方法,并且将整个系统分为Control Unit(控制模块)和Data
Path(数据传输)两部分来进行设计(如图1所示)。这样设计有以下优点:(1)Control Unit在内部FSM的控制下,在每一个状态
会有输出,控制Data Path中数据的传输,使其满足DS18B20的时序要求;(2)Data Path则完成了所有的数据流传输,并实时
的反馈给Control Unit一些输入,从而使其状态转换能够正确完成;(3)如果要有附加的控制流和数据流要添加进整个FPGA系
统,则只要在Control Unit中更改相应的状态和Data Path中做相应修改就可,不需要进行系统方案的修改。
图1、智能温度采集器的系统结构框图
评论0