欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    数字电压表设计 (3).doc

    • 资源ID:829974       资源大小:736KB        全文页数:15页
    • 资源格式: DOC        下载积分:20积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要20积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数字电压表设计 (3).doc

    1、 目 录数字系统设计任务书I摘 要II目 录III第1章 数字电压表原理1第2章 FPGA模块的设计22.1 模数转换控制模块的设计22.2 数据处理模块的设计32.3 显示控制模块的设计6第3章 数字电压表综合仿真83.1 仿真波形83.1.1 ADC0804控制信号时序仿真83.1.2 显示数据仿真波形93.2 性能分析93.3 运行测试93.4 程序扩展9总 结10参 考 文 献11附 录12答辩记录及评分表13第1章 数字电压表原理标题1,四号,黑体,居中数字电压表是一种用数字显示的电压测量仪表。FPGA设计的数字电压表工作过程首先由模数转换器对模拟电压进行模数转换,接着FPGA对转换

    2、后的数字信号进行处理,再将结果用数字信号直接显示出来。所以系统结构框图如图1,系统由ADC0804数模转换、 FPGA信号处理和控制、显示电路三部分组成。ADC0804数模转换实现模拟量向数字量的转换,FPGA信号处理和控制,FPGA与ADC0804控制信号进行连接,控制ADC0804的模数转换过程,转换结束后,由FPGA对其进行数据处理并控制显示单元工作。显示电路由LED数码管接收FPGA信号,实现电压值的显示。 图1 系统结构框图正文字号小四,图形的图号及标题为五号,图形中的文字为五号或小五号【图形在WORD中用绘图绘制,最好用VISIO绘制】【中文字体为宋体四号,英文及数字用Times

    3、New Roman,字间距为1.5倍】第2章 FPGA模块的设计数字电压表设计核心为FPGA设计,FPGA负责ADC0804的启动以及转换数据的读取,再将读取的8位二进制数据进行变换,形成便于输出的3位LED段码送给LED数码管,显示被测电压值。FPGA的设计主要包括几个部分:ADC0804转换控制模块实现ADC0804的启动以及转换数据的读取;数据处理模块实现ADC0804数字量对应BCD码的变换和处理;显示控制模块实现LED段码和位码的产生。FPGA控制电路原理框图如图2所示。图2 FPGA控制电路原理框图2.1 模数转换控制模块的设计根据ADC0804工作时序,完成ADC0804的初始化

    4、、A/D转换的启动、转换状态的读取、数据的读取和数据锁存等功能。模数转换操作步骤,用4个状态完成:(1)状态s0:启动ADC0804进行模数转换操作,设置=0、=1。(2)状态s1:ADC0804进行数模转换,转换时间100us,设置=1,读取INIT是否有下降沿,有则表示转换完成,进入下一状态。(3)状态s2:向ADC0804发出读取转换数据的请求,设置=0、=1。 (4)状态s3:读取数据线D0D7上的数据,设置=1。模数转换控制模块的状态机设计:case sta iswhen s0=cs=0;wr=0;rd=1;stacs=1;wr=1;rd=1; -s1状态,ADC0804进行数模转换

    5、if qintevent and qint=0 then -等待转换结束信号qintsta=s2; -结束,进入下一状态else stacs=0;wr=1;rd=0;stacs=1;wr=1;rd=1;sta=s0;data=dati;-s3状态,读取转换数据end case;【这里给出关键程序段,完整的程序可以在附录中给出】2.2 数据处理模块的设计数据处理模块的设计采用查表法实现数据处理。查表法需存储器ROM、BCD码转换等功能模块。设计648bit的ROM,根据表1确定存储数据,每个电压值对应的BCD码占用2个ROM单元,低端地址00H1FH存储电压值对应的高四位BCD码,高端地址20H

    6、3FH存储电压值对应的低四位BCD码,ROM的初始化数据如图3所示。表1 ADC0804转换数据与实际电压值对应关系表地址输出高四位输入电压值高四位BCD码地址输出低四位输入电压值低四位BCD码00H00000.000000H20H00000.000000H02H00010.320032H22H00010.020002H04H00100.640064H24H00100.040004H06H00110.960096H26H00110.060006H08H01001.280128H28H01000.080008H0AH01011.600160H2AH01010.100010H0CH01101.92

    7、0192H2CH01100.120012H0EH01112.240224H2EH01110.140014H10H10002.560256H30H10000.160016H12H10012.880288H32H10010.180018H14H10103.200320H34H10100.200020H16H10113.520352H36H10110.220022H18H11003.840384H38H11000.240024H1AH11014.160416H3AH11010.260026H1CH11104.480448H3CH11100.280028H1EH11114.800480H3EH1111

    8、0.300030H【表格标号及表题用5号字体,表格中的字体为5号或小5号,表格居中】图3 ROM的初始化数据ROM设计实现,在QuartusII下调用megafunction/storage/LPM-ROM宏函数,生成一个648bit大小的ROM,在VHDL程序中采用元件例化调用该ROM。ROM模块的外部端口如下:component lpm_rom0 PORT(address: IN STD_LOGIC_VECTOR (5 DOWNTO 0);clock: IN STD_LOGIC ;q: OUT STD_LOGIC_VECTOR (7 DOWNTO 0);end component;ROM地

    9、址信号的产生:FPGA读取转换后的数字信号data(7 down to 0),其高四位data(7 down to 4)乘以2作为ROM地址address_h。VHDL描述如下:address_h=(00 & data(7 downto 4)+(00 & data(7 downto 4); 数字信号data(7 down to 0)的低四位data(3 down to 0)乘以2再加上偏移量20H作为ROM地址address_l。VHDL描述如下:address_laddress_l,clock=qclk,q=data_l(15 downto 8);u1: lpm_rom0 port map(

    10、address=address_l+1,clock=qclk,q=data_l(7 downto 0);u2: lpm_rom0 port map(address=address_h,clock=qclk,q=data_h(15 downto 8);u3: lpm_rom0 port map(address=address_h+1,clock=qclk,q=data_h(7 downto 0); 图4 BCD码调整设计流程2.3 显示控制模块的设计采用动态扫描显示:扫描时钟由系统时钟clk提供,频率大于100Hz,将数据处理模块得到的BCD码转换成能被数码管识别的段码。动态扫描显示状态控制:如

    11、图5所示,在100Hz时钟作用下,当扫描信号scan=001、010、100时,分别将个位、十位、百位数据送给hexd,再根据hexd的具体取值将对应的段码送LED数码管,实现数据的显示。图5 动态扫描显示状态控制第3章 数字电压表综合仿真数字电压表的输入信号:10KHz时钟频率clk、复位信号reset;从ADC读入的转换结束输入信号int、转换数据输入dati;控制ADC的写信号wr、读信号rd、片选信号cs;数字电压表的输出信号:控制LED的扫描信号scan、段数据输出dato。数字电压表的参考程序volmeter.vhd不在这里给出,请参考教材。3.1 仿真波形由于电路的设计涉及到对A

    12、DC0804的控制及读取外部数据等外部接口电路,这部分的程序调试必须将程序下载到FPGA中,再与ADC0804连接后才能进行。因此,仿真时可以将程序稍作改动,一方面检查ADC0804控制信号的时序是否正确;另一方面跳过ADC0804的数模控制模块,直接给模数转换后的数据,看显示数据是否正确。3.1.1 ADC0804控制信号时序仿真从仿真波形可以看出,ADC0804的控制信号的波形满足其工作时序要求:CS=WR=0,RD=1,启动ADC0804进行模数转换操作;CS=WR=RD=1,ADC0804进行转换动作,INIT下降沿表示转换完成,进入下一状态;CS=RD=0,WR=1,请求读取转换后数

    13、据;CS=WR=RD=1,读取数据线D0D7上的数据。图6 ADC0804控制信号时序仿真3.1.2 显示数据仿真波形当FPGA从AD0804上读取的数据为3AH时,输出的段码为01111101、00000110、10000110,分别对应字符6、1、1,个位数中的最高位为小数点,即1.16V,由表1可知,当ADC0804的转换数据为3AH时,对应的电压值应为0.96+0.2=1.16V,表示显示结果正确。图7 显示数据仿真波形3.2 性能分析如果选择目标芯片为EP1C12Q240C8,查表法设计的VHDL程序编译后239616位的存储单元占用了768位,存储空间的占用不足1%;12060个逻

    14、辑单元中占用了69个逻辑单元,逻辑资源占用不足1%。3.3 运行测试将程序下载到目标芯片中,观察数码管的输出,其输出随着输入电压的变化而变化,当输入电压变为0时,数码管的输出为0,输入为5 V时数码管输出也为5.00 V,运行结果正确。3.4 程序扩展该设计还可以进行相应的扩展,例如增加两个功能按键用于设定电压上下限值,当测量电压超出上下限值时,进行声音报警等,感兴趣的可以试着做数字电压表的各种扩展功能。总 结【本部分主要总结所采用的技术方案,达到的结果,以后要改进的地方等】参 考 文 献1 李心合.知识经济对传统会计的挑战J.财经研究,1998.12 2 刘朝英,宋哲英,宋雪玲.MATLAB在模糊控制系统中的应用J.计算机仿真,2001.18 3 辛希孟.信息技术与信息服务国际研讨会论文集:A集C.北京:中国社会科学出版社,1994.5 4 冯西桥. 核反应堆压力管道与压力容器的LBB分析R.北京:清华大学核能技术设计研究院,1997. 5郭路.XML数据传输的安全加密EB/OL. /xml/xmlb2b/index5.shtml, 2001-06-04/2001-10-04. 附 录此部分可以没有答辩记录及评分表 课题名称数字电压表设计答辩教师(职称)周珍艮(副教授) 答辩时间20112012学年第二学期 第14周信息班填第12周答辩记录 评 分 表学生姓名学号评分15


    注意事项

    本文(数字电压表设计 (3).doc)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922