基于FPGA的数据采集系统电路设计毕业设计论文.docx
《基于FPGA的数据采集系统电路设计毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于FPGA的数据采集系统电路设计毕业设计论文.docx(29页珍藏版)》请在冰豆网上搜索。
基于FPGA的数据采集系统电路设计毕业设计论文
毕业论文(设计)
题目基于FPGA的数据采集系统电路设计
摘要
论文介绍了基于FPGA的数据采集系统电路的工作原理和设计过程。
根据数据采集技术原理,以Altera公司的EP2C8Q208C8N芯片为核心器件,通过ADC0809采集数据,并用DAC0832输出数据,在QuartusII平台上,通过VHDL语言编程完成数据采集系统电路的软件设计、编译、调试、仿真和下载,再与外围硬件电路相结合调试与设计,最终实现数据采集系统电路的完成。
【关键词】FPGAQuartusIIVHDL数据采集
第一章绪论
1.1引言
随着数字系统的发展,广泛应用于各种学科领域及日常生活,微型计算机就是一个典型的数学系统。
但是它只能对输入的数字信号进行处理,其输出信号也是数字信号。
而在工业检测控制和生活中的许多物理量都是连续变化的模拟量,如温度、压力、流量、速度等,这些模拟量可以通过传感器或换能器变成与之对应的电压、电流或频率等电模拟量。
为了实现数字系统对这些电模拟量进行检测、运算和控制,就需要一个模拟量与数字量之间的相互转换的过程。
即常常需要将模拟量转换成数字量,简称为AD转换,完成这种转换的电路称为模数转换器,简称ADC。
1.2EDA简介
EDA,即电子设计自动化(ElectronicDesignAutomation)的缩写。
它融合了大规模集成电路制造急速、ASIC测试和封装技术、FPGA/CPLD编程下载技术、自动测试技术、计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)设计的设计概念,为现代电子理论和设计的实现和发展提供了可能性[1]。
EDA技术是一种综合性学科,打破了软件和硬件见的壁垒,把计算机的软件技术与硬件技术、设计效率和产品性能结合在一起,它代表了电子设计技术和应用技术的发展方向。
EDA技术一般包括以下内容:
1.大规模可编程逻辑器件;2.硬件描述语言;3.软件开发工具;4.实验开发系统[2]。
1.3FPGA简介
FPGA,即现场可编程门阵列(Field-ProgrammableGateArray)的缩写。
它是一种集成度较高的器件,属于复杂PLD。
FPGA具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点,在产品研发和开发中具有很大的优势。
用FPGA做一些协议实现和逻辑控制,如果协议理解错误或者逻辑需要更改,不需要动PCB。
另外,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
目前FPGA的品种很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。
本设计用的是Altera公司的EP2C8Q208C8N芯片,里面有68416个逻辑单元,并提供了622个可用的输入/输出引脚和1.1M比特的嵌入式寄存器。
它提高了百分之六十的性能和降低了一半的功耗,而低成本和优化特征使它为各种各样的汽车、消费、通讯、视频处理、测试与测量、和其他最终市场提供理想的解决方案[3]。
1.4VHDL语言简介
诞生于1983年的VHDL,是Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage的简称,1987年底,VHDL被作为“IEEE标准1076”发布。
VHDL不仅可以作为系统模拟的建模工具,而且可以作为电路系统的设计工具,能通过QuartusII把VHDL源码自动转化为基本逻辑元件连接图,这极大的推进了电路自动设计[4]。
VHDL能从多个层次对数字系统进行建模和描述,所以大大简化了电路设计的任务,提高了设计效率。
1.5QuartusII简介
由Altera提供的FPGA开发集成环境―QuartusII,因为其运行速度快,界面统一,功能集中,易学易用等特点,迅速占领了市场[5]。
QuartusII支持VHDL、Verilog的设计流程,提供了完整的多平台设计环境,能满足各种特定设计的需要,同时,它还具备仿真功能,因此给系统的软硬件设计和调试带来了很大的便利。
1.6数据采集技术简介
系统利用FPGA直接控制ADC0809对模拟信号进行采样,将转换好的8位二进制数据存储到存储器中,在完成对模拟信号一个或数个周期的采样后,通过DAC0832的输出端将数据读取出来。
第二章总体设计
2.1硬件设计
2.1.1线性电源模块
根据系统要求,需提供+12V、-12V、+5V的电源。
因此我采用了滤波电容、防自激电容、LED灯及固定式三端稳压器LM7905、LM7812和LM7912等器件搭建成能产生精度高、稳定度好的直流输出电压的线性电源电路。
系统的线性电源电路部分原理图如图2.1所示:
图2.1系统的线性电源模块电路
当电路接通后,如果LED灯亮起,则代表能产生出要求的电压。
为了实验的携带方便,我另外再加上电源变压器和整流电桥。
在画PCB的时候,用大面积覆铜,有助于美观和节约实验器材。
实物如图2.2所示:
图2.2系统的线性电源实物图
PCB图见附录一。
2.1.2数据采集模块
系统采用ADC0809进行数据采集,ADC0809是逐次逼近式A/D转化器,由8位A/D转换器、8路多路开关以及微处理机兼容组成的控制逻辑的CMOS组件。
ADC0809每进行一次比较,即决定数字码中的以为码的去留操作,需要8个时钟的脉冲,而它是8位A/D转换器,所以它完成一次转换需要8*8=64个时钟,这样它的转换时间为t=64*(1/f),f为时钟频率。
系统用的时钟为500KHz,所以ADC0809的转换时间为128us[6]。
因为采样时需要满足采样定理,即采样频率需要大于等于输入信号最高频率的2倍,所以ADC0809能采样的最高频率为3906.25Hz。
ADC0809的主要特性:
分辨率为8位,具有转换启停控制端,单个+5V电源供电,模拟输入电压范围0~+5V,不需要零点和满刻度校准,系统中由可调电位器提供,工作温度范围为-40~+85摄氏度,低功耗,约15mW。
它的内部逻辑结构如图2.3所示:
图2.3ADC0809内部逻辑结构
ADC0809引脚排列如图2.4所示:
图2.4ADC0809引脚排列
ADC0809为28引脚双列直插式封装,各引脚含义如下:
IN0-IN7:
8位模拟量输入引脚。
D0-D7:
8位数字输出量引脚。
START:
A/D转换启动信号输入端。
EOC:
转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。
OE:
输出允许控制端,用以打开三态数据输出锁存器。
CLK:
时钟信号输入端。
VCC:
+5V工作电压。
VREF(+):
参考电压正端。
GND:
地。
VREF(-):
参考电压负端。
ALE:
地址锁存允许信号输入端。
ABC:
地址输入线。
系统的数据采集模块部分电路原理图如图2.5所示:
图2.5系统数据采集模块电路
当ALE高电平有效时,因为ABC接的都是低电平,所以选择的是IN0通道。
当START为上跳沿时,所有内部寄存器清零;下跳沿时,开始A/D转换;在转换期间,START需保持低电平不变。
而当EOC为高电平时,表明A/D转换结束。
当OE=1时,输出转换得来的数据;否则,输出数据线呈高阻态。
PCB图见附录一。
2.1.3数据输出模块
系统采用的数据输出为DAC0832。
DAC0832是8分辨率的D/A转换集成芯片,由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。
它因为价格低廉、接口简单、转换控制容易等优点,而得到了广泛的应用[7]。
DAC0832的主要参数有:
1.分辨率为8位。
2.转换时间为1us。
3.满量程误差为±1LSB。
4.参考电压为-10~+10V。
5.供电电源为+5~+15V。
6.逻辑电平输入与TTL兼容。
它的内部逻辑结构如图2.6所示:
图2.6DAC0832内部逻辑结构
DAC0832引脚排列如图2.7所示:
图2.7DAC0832引脚排列
CS:
片选信号输入线(选通数据锁存器),低电平有效。
WR1:
数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。
AGND:
模拟信号地。
D0~D7:
8位数据输入线。
VREF:
基准电压输入线,范围为-10V~+10V。
Rfb:
反馈信号输入线,可通过改变Rfb端外接电阻值来调整转换满量程精度。
DGND:
数字信号地。
IOUT1:
电流输出端1,其值随DAC寄存器的内容线性变化。
IOUT2:
电流输出端2,其值与IOUT1值之和为一常数。
XFER:
数据传输控制信号输入线,低电平有效。
WR2:
DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。
ILE:
数据锁存允许控制信号输入线,高电平有效。
VCC:
电源输入端,范围为+5V~+15V。
本实验用的是+5V。
DAC0832的输出放大和滤波电路采用TL082芯片搭建。
TL082是一通用J-FET双运算放大器。
它的内部结构和引脚排列如图2.8所示[8]:
图2.8TL082内部结构和引脚排列
TL082为8引脚双列直插式封装,各引脚含义如下:
(1)Output1——输出1;
(2)Invertinginput1——反向输入1;
(3)Non-invertinginput1——正向输入1;
(4)Vcc-——电源-12V;
(5)Non-invertinginput2——正向输入2;
(6)Invertinginput2——反向输入2;
(7)Output2——输出2;
(8)Vcc+——电源+12V。
系统的数据输出电路部分原理图如图2.9所示:
图2.9系统数据输出模块电路
2.1.4按键控制模块
系统采用两个按键开关设计正/负电平输入信号电路,作按键控制模块。
一个按键控制CLR,另一个按键控制WREN。
两个按键开关电路如图2.10所示:
图2.10系统按键控制模块电路
系统实物如图2.11所示:
图2.11系统实物图
在画PCB的时候,用大面积覆铜,有助于美观和节约实验器材。
系统PCB图见附录一。
2.2软件设计
2.2.1ADCINT设计
ADCINT是控制0809的采样状态机。
由ADC0809驱动程序生成的原理图如图2.12所示:
图2.12ADCINT
ADCINT仿真图如图2.13所示:
图2.13ADCINT仿真图
2.2.2CNT10B设计
CNT10B中有一个用于RAM的9位地址计数器,它的工作时钟CLK0由WREN控制:
当WREN=‘1’时,CLK0=LOCK0,LOCK0来自于ADC0809采样控制器,这时处于采样允许阶段,RAM的地址锁存时钟inclock=CLKOUT=LOCK0;这样每当一个LOCK0的脉冲通过ADC0809时采到一个数据,并将它存入RAM中。
当WREN=‘0’时,采样禁止,允许读出RAM中的数据。
把示波器接到DAC0832的输出端就能看到波形。
CNT10B原理图如图2.14所示:
图2.14CNT10B
2.2.3RAM8设计
RAM8是LAM_RAM,它有8位数据线和9位地址线。
WREN是写时能,高电平有效。
RAM8原理图如图2.15所示:
图2.15RAM8
2.2.4时钟控制设计
由芯片EP2C8Q208C8N产生的20MHz的时钟做输入,经过分频以后,一路输出与芯片EP2C8Q208C8N的169引脚相连的500KHz的时钟,另一路则输出给ADC0809供电的10KHz的时钟。
时钟控制原理图如图2.16所示: