基于fpga数字电压表的设计

基于fpga数字电压表的设计

ID:31734347

大小:186.00 KB

页数:9页

时间:2019-01-17

基于fpga数字电压表的设计_第1页
基于fpga数字电压表的设计_第2页
基于fpga数字电压表的设计_第3页
基于fpga数字电压表的设计_第4页
基于fpga数字电压表的设计_第5页
资源描述:

《基于fpga数字电压表的设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.湖南科技学院课程设计任务书课题名称数字电压表设计系别电子工程系专业电子科学与技术班级电科1001班学号201006003118姓名安启祥指导老师梁晓琳2012年12月9日...基于FPGA数字电压表的设计一、前言EDA是电子设计自动化(ElectronicDesignAutomation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬

2、件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。本电压表的电路设计正是用VHDL语言完成的。此次设计采用的是Altera公司的QuartusII7.0软件。本次设计的参考电压为2.5V,精度为0.01V。此电压表的设计特点为通过软件编程下载到硬件实现,设计周期短,开发效率高。二、设计要求设计一个数字电压表,利用8位A/D转换器,将连续的模拟电信号转换成离散的数字电信号,并加以显示,要

3、求其量程为0-2.5V,分辨率约为0.01V,三位数码管显示。其中一位为整数,两位为小数能正确显示小数点。...三、整体设计1.数字电压表的基本原理数字电压表整体设计框图,如下图所示,数字电压表系统由A/D(TLC549)转换模块、FPGA控制模块、数码显示模块三部分构成。FPGA控制模块控制外部A/D转换器自动采样模拟信号,通过A/D芯片转换为数字信号,再由FPGA控制模块控制数码管动态扫描向外部数码管显示电路输出数据。数码显示TLC549FPGA控制控制A/D转换器负责采集模拟电压,转换成8位数

4、字信号送入FPGA转换控制模块,FPGA转换控制模块负责A/D转换的启动、地址锁存、输入通道选择、数据读取、转换等工作,数码显示模块负责显示当前的电压值。2.A/D(TLC549)转换模块TLC549是TI公司生产的一种低价位、高性能的8位A/D转换器,它以8位开关电容逐次逼近的方法实现A/D转换,其转换速度小于...17us,最大转换速率为40000HZ,4MHZ典型内部系统时钟,电源为3V至6V。它能方便地采用三线串行接口方式与各种微处理器连接,构成各种廉价的测控应用系统。TLC549各引脚功能

5、REF+:正基准电压输入2.5V≤REF+≤Vcc+0.1。REF-:负基准电压输入端,-0.1V≤REF-≤2.5V。且要求:(REF+)-(REF-)≥1V。VCC:系统电源3V≤Vcc≤6V。  GND:接地端。  /CS:芯片选择输入端,要求输入高电平VIN≥2V,输入低电平VIN≤0.8V。  DATAOUT:转换结果数据串行输出端,与TTL电平兼容,输出时高位在前,低位在后。  ANALOGIN:模拟信号输入端,0≤ANALOGIN≤Vcc,当ANALOGIN≥REF+电压时,转换结果为

6、全“1”(0FFH),ANALOGIN≤REF-电压时,转换结果为全“0”(00H)。  I/OCLOCK:外接输入/输出时钟输入端,同于同步芯片的输入输出操作,无需与芯片内部系统时钟同步。四、模块设计1、部分设计程序TLC549模块:...moduleTLC549(clk,reset,sdata,cs,dataout,clk_ad);inputclk;inputreset,sdata;output[7:0]dataout;outputclk_ad,cs;reg[7:0]dataout,dataou

7、t_r;regcs;regclk_ad_r,clk_r;reg[7:0]count;reg[2:0]temp;reg[3:0]cnt;regmark;regflag;parameter[2:0]s0=0,s1=1,s2=2;reg[2:0]c_st;//内部逻辑功能描述always@(posedgeclk)//分频电路beginif(count<119)count<=count+1;elsebegincount<=0;clk_r<=~clk_r;endendalways@(posedgeclk)//

8、时钟信号beginclk_ad_r<=~clk_r;endalways@(posedgeclk_rornegedgereset)//状态机beginif(!reset)c_st<=s0;elsecase(c_st)s0:begincs<=1;mark<=0;if(temp==3)begintemp<=0;c_st<=s1;endelsebegintemp<=temp+1;c_st<=s0;endends1:begincs<=0;mark<=1;c_st<=s2;end

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。