欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    数字电压表设计.doc

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

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

    数字电压表设计.doc

    1、 单片机课程设计设计报告设计题目: 姓 名: 设计时间: 2010-12-28 备 注: 目录1引言22概述2 21实验要求 2 22实验目的 2 23 实验器材 23总体设计方案3 31系统的总体结构3 32芯片的选择4 33 ADC0809 的主要性能指标44硬件电路设计641 AT89S52 单片机最小系统 642 ADC0809 与AT89S52 单片机接口电路设计643显示电路与AT89S52 单片机接口电路设计65软件设计7 51 主程序图7 52 ADC0809 电压采集程序框图8 53显示程序框图96调试与测量结果分析10 61实验系统连线图11 62程序调试12 63 仿真结

    2、果13 64 实验结果分析147程序清单和系统原理图15 71程序清单15 72 系统原理图168实验总结和实验收获171 引言本次课程设计要求完成是数字电压表的设计,随着电子科学技术的发展,电子测量成为广大电子工作者必须掌握的手段,对测量的精度和功能的要求也越来越高,而电压的测量甚为突出,因为电压的测量最为普遍。本次课程设计我们小组xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    3、xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx该电路设计新颖、功能强大、可扩展性强。实验报告首先简要介绍了设计数字电压表的实验要求和目的;根据要求和目的设计出直流数字电压表的系统结构流程,以及硬件系统和软件系统的设计,并给出了硬件电路的设计细节,以及调试和仿真

    4、结果。最后进行了实验和心得体会的总结。通过完成一个包括电路设计和程序开发的完整过程,使自身了解开发单片机应用系统的全过程,强化巩固所学知识,为以后的学习和工作打下基础。2概述 21实验要求 采用ADC0809 和AT89S52 单片机及显示电路完成05V 直流电压的检测 22实验目的 (1) 进一步熟悉和掌握单片机的结构和工作原理; (2) 掌握单片机的借口技术及,ADC0809芯片的特性,控制方法; (3) 通过这次实训设计,掌握以单片机为核心的电路设计的基本方法和技术; (4) 通过实际程序设计和调试,逐步掌握模块化程序设计的方法和调试技术。23 实验器材主控CPU 部分 A/D 转换器件

    5、 数码管显示电路 所涉及的器件单元的信号连接端口: IN0 , AOUT1,CS4,FF80H,JX0,JX6,8MHZ,T3.总体设计方案3.1系统的总体结构AT89S52单片机ADC0809转换器数码显示模拟电压输入8255并行I/O接口扩展文字说明:(多路数字电压表的系统软件程序由主程序、A/D转换子程序和显示子程序组成。)多路数字电压表的系统软件程序由主程序、A/D转换子程序和显示子程序组成。主程序包含初始化部分、调用A/D转换子程序和调用显示程序,初始化部分包含存放通道数据缓冲区初始化和显示缓冲区初始化。另外,对于单路显示和循环显示,系统设置了一个标志位00H控制。初始化时00H位设

    6、置为0,默认为循环显示,当它为1时改变为单路显示。00H位通过单路/循环按键控制。A/D转换子程序用于对ADC0809的8路输入模拟电压进行A/D转换,并将转换的数值存入8个相应的存储单元中,如图14所示。A/D转换子程序每隔一定时间调用一次,即隔一段时间对输入电压采样一次。LED数码管采用软件译码动态扫描方式。在显示子程序中包含多路循环显示和单路显示程序。多路循环显示把8个存储单元的数值依次取出送到4位数码管上显示,每一路显示1秒。单路显示程序只对当前选中的一路数据进行显示。每路数据显示需经过转换变成十进制BCD码,放于4个数码管的显示缓冲区中。单路显示或多路循环显示通过标志位00H控制。在

    7、显示控制程序中加入了对单路或多路循环按键和通道选择按键的判断。32芯片的选择1)AT89S52是一种低功耗、高性能CMOS8位微控制器,具有 8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32位I/O 口线,2个数据指针,三个16位定时器/计数器,5个中断优先级2层中断嵌套中断,全双工串行口, 片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件,可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器

    8、、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。2)ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。3)8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。 其各口功能可由软件选择,使用灵活,通用性强。8255可作为单片机与多种外设连接时的中间接口电路。 8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线

    9、接口。同时必须具有与外设连接的接口A、B、C口。由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分 33ADC0809的主要性能指标 1)8路输入通道,8位AD转换器,即分辨率为8位。 2)具有转换起停控制端。 3)转换时间为100s(时钟为640kHz时),130s(时钟为500kHz时) 4)单个5V电源供电 5)模拟输入电压范围05V,不需零点和满刻度校准。 6)工作温度范围为-4085摄氏度 7)低功耗,约15mW。 2内部结构ADC0809是CMOS单片型逐次逼近式AD转换器,内部结构如图1322所示,它由8路模

    10、拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近 3外部特性(引脚功能)ADC0809芯片有28条引脚,采用双列直插式封装,如图1323所示。下面说明各引脚功能。 IN0IN7:8路模拟量输入端。 2-12-8:8位数字量输出端。 ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路 ALE:地址锁存允许信号,输入,高电平有效。 START: AD转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。 EOC: AD转换结束信号,输出,当AD转换结束时,此端输出一个高电平(转换期间一直为低电平

    11、)。 OE:数据输出允许信号,输入,高电平有效。当AD转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。 REF(+)、REF(-):基准电压。 Vcc:电源,单一5V。 GND:地。 ADC0809的工作过程首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 AD转换,之后EOC输出信号变低,指示转换正在进行。直到AD转换完成,EOC变为高电平,指示AD转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平

    12、 时,输出三态门打开,转换结果的数字量输出到数据总线上。 转换数据的传送 A/D转换后得到的数据应及时传送给单片机进行处理。数据传送的关键问题是如何确认A/D转换的完成,因为只有确认完成后,才能进行传送。为此可采用下述三种方式。 (1)定时传送方式 对于一种A/D转换其来说,转换时间作为一项技术指标是已知的和固定的。例如ADC0809转换时间为128s,相当于6MHz的MCS-51单片机共64个机器周期。可据此设计一个延时子程序,A/D转换启动后即调用此子程序,延迟时间一到,转换肯定已经完成了,接着就可进行数据传送。 (2)查询方式 A/D转换芯片由表明转换完成的状态信号,例如ADC0809的

    13、EOC端。因此可以用查询方式,测试EOC的状态,即可确认转换是否完成,并接着进行数据传送。 (3)中断方式 把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。 不管使用上述那种方式,只要一旦确定转换完成,即可通过指令进行数据传送。首先送出口地址并以信号有效时,OE信号即有效,把转换数据送上数据总线,供单片机接受。 4硬件系统的设计4.1 AT89S52 单片机最小系统51单片机最小系统电路介绍1.51单片机最小系统复位电路的极性电容C1的大小直接影响单片机的复位时间,一般采用1030uF,51单片机最小系统容值越大需要的复位时间越短。2.51单片机最小系统晶振Y1也可

    14、以采用6MHz或者11.0592MHz,在正常工作的情况下可以采用更高频率的晶振,51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。3.51单片机最小系统起振电容C2、C3一般采用1533pF,并且电容离晶振越近越好,晶振离单片机越近越好4.P0口为开漏输出,作为输出口时需加上拉电阻,阻值一般为10k。设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。计数值N乘以机器周期Tcy就是定时时间t。设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。在每个机器周期的S5P2期间采样T0、T

    15、1引脚电平。当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器。由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2 ms。 标识符号 地址 寄存器名称P3 0B0H I/O口3寄存器PCON 87H 电源控制及波特率选择寄存器SCON 98H 串行口控制寄存器SBUF 99H 串行数据缓冲寄存器TCON 88H 定时控制寄存器TMOD 89H 定时器方式选择寄存器TL0 8AH 定时器0低8位TH0

    16、8CH 定时器0高8位TL1 8BH 定时器1低8位TH1 8DH 定时器1高8位42 ADC0809 与AT89S52 单片机接口电路设计在连接时,ADC0809的数据线D0D7与AT89S52的P0口相连接,ADC0809的地址引脚、地址锁存端ALE、启动信号START、数据输出允许控制端OE分别与AT89S52的P2口相连接,转换结束信号EOC与AT89S52的P3.2相连接。时钟信号输入端CLOCK信号,由单片机的地址锁存信号ALE得到。43显示电路与AT89S52 单片机接口电路设计LED数码管采用动态扫描方式连接,通过AT89S52的P0口和P3.2口控制。8255的PA口为LED

    17、数码管的位选码输出端,PB口为LED数码管的字段码输出端,通过与非门反相。5软件设计51 主程序图NY开始初始化?延时等待显示数据结束转换结果存入(33H)(36H)启动A/D转换采集电压值并数据转换扫描数据并进行动态显示段选和位选 52 ADC0809 电压采集程序框图 53显示程序框图6调试与测量结果分析 61实验系统连线图(附页) 62程序调试连线T-8MHZ时钟 CS4-FF80H(片选)AOUT1-INT0电压输入 程序的改写 63 仿真结果(附页打印) 64 实验结果分析7实验总结和实验收获8附页 81程序清单;*;* 主程序和中断入口处 *;*ORG0000HLJMPSTARTO

    18、RG0003HRETIORG000BHRETIORG0013HRETIORG001BHRETIORG0023HRETIORG002BHRETISTART:LCALLCLEARMEM ;初始化MAIN:LCALLTEST ;电压测量及转换LCALLDISP ;电压显示NOPNOPNOPLJMPSTART;*;* 初始化子程序 *;*CLEARMEM:MOVR0,#31H;将31H36H单元内容清零MOVR2,#06HMOVA,#00HLOOPMEM:MOVR0,AINCR0DJNZR2,LOOPMEMMOVDPTR,#0FF23H;8255初始化MOVA,#80HMOVXDPTR,ARET;*;

    19、* 电压测量并转换为BCD码子程序 *;*TEST:MOVDPTR,#0FF80H;将地址FF80置0MOVA,#00HMOVXDPTR,A;启动A/D转换HERE:NOPMOVXA,DPTRMOVB,#51DIVAB ;商的整数部分存在A,余数部分存在BMOV31H,A;个位数存入31HMOVA,BCLRF0;清0用户标识位SUBBA,#1AH;余数是否大于19,若大于乘法溢出,结果加5MOVF0,CMOVA,#10MULAB ;低8位存入A,高8位存入BMOVB,#51DIVABJBF0,LOOPADDA,#5LOOP:MOV32H,A;小数后第1位放入32HMOVA,BADDA,#01H

    20、CLRF0SUBBA,#1AHMOVF0,CMOVA,#10MULAB MOVB,#51DIVABJBF0,LOOP1ADDA,#5LOOP1:MOV33H,A;小数后第2位放入33HRET;*;* 显示子程序 *;*DISP:MOVR1,#33HMOVR2,#03HMOVR0,#36HREP:MOVA,R1MOVDPTR,#TABMOVCA,A+DPTRMOVR0,ADECR1DECR0DJNZR2,REP MOVA,R0 ;显示小数点ANLA,#7FH MOVR0,AMOVR2,#0FFH;延时DISP2:LCALLDISP1DJNZR2,DISP2RETDISP1:MOVR0,#36H;

    21、扫描模式置初值MOVR3,#0FEHMOVA,R3DISP3:MOVDPTR,#0FF20H;动态显示位选MOVXDPTR,AINCDPTRMOVA,R0;动态显示段选MOVXDPTR,ALCALLDL1MSDECR0MOVA,R3JNBACC.2,EENDRLAMOVR3,ASJMPDISP3EEND:RETTAB:DB0C0H,0F9H,0A4H,0B0H,99HDB 92H,82H,0F8H,80H,98HDB 88H,83H,0C6H,0A1H,86H,8EHDL1MS:MOVR7,#02HDL1:MOVR6,#0FFHDL2:DJNZR6,DL2DJNZR7,DL1RETEND 82系统连线图 系统原理图表2.1七段LED段选码表 显示字符共阴极段显示字符共阴极段03FHC39H106HD5EH25BHE79H34FHF71H466HP73H56DHU3EH67DH31H707Hy6EH87FH8.FFH96FH“灭”00HA77H/B7CH/26


    注意事项

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

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开