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

    数字万用表 单片机课程设计.doc

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

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

    数字万用表 单片机课程设计.doc

    1、摘要本课题实验主采用AT89S51芯片和ADC0809芯片来完成一个简易的数字万用表,能够测量电压,对输入的05V模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示,测量误差为0.02V,该电压表的测量电路主要由三个模块组成:A/D转换模块,数据处理模块,及显示控制模块。A./D转换主要由芯片ADC0809来完成,它负责把采集到的模拟量转换为相应的数字量传送到数据处理模块,数据处理则由AT89S51来完成,其负责把ADC0809传送来的数字量经一定的数据处理,产生相应的显示码送到显示模块进行显示,另外它还控制着ADC0809芯片的工作,显示模块主要由7段数码管及相应的驱动芯片(

    2、74HC245)组成,显示测量到的电压值。关键词简易数字万用表,ADC0809,AT89S51。实现方案 本实验采用AT89S51单片机芯片配合ADC0809模/数转换芯片构成一个数字电压表。该电路通过ADC0809采样输入口IN0输入的05V的模拟电压,经过模/数转换,产生相应的数字量经过其输出通道D0D7传送到AT89S51芯片的P0口, AT89S51负责把接收到的数字量经过数据处理,产生正确的7段数码管的显示段码,并通过其P1口经驱动芯片74HC245驱动,再传送给数码管,同时还通过其三位I/O口P3.0,P3.1,P3.2,产生位选信号,控制数码管的亮灭,另外AT89S51还控制着A

    3、DC0809的工作,其ALE引脚为ADC0809提供了1MHZ工作的时钟脉冲,P2.3控制着ADC0809的地址锁存器(ALE):P2.4控制着ADC0809的启动端:P2.5控制着ADC0809的输出允许端:P3.7控制ADC0809的转换结束信号系统框图如图1-1所示 图 1-1硬件选择方案:一、实验所需元器件 1.AT89S51芯片 1块 2. AD0809芯片 1块 3. 74HC245 2块 4. 4位一体数码 1个 5. 6MHZ 晶振 1个 6. 33pF电容 2个 7. 0.1f滤波电容 2个 8. 10f电解电容 1个 9. 按键开关 1个 10. 发光二极管 1个 11.

    4、4.7K精密电位器 1个 12. 510电阻 12个 13. 8.2K电阻 1个 14. 10K电阻 1个15. 导线 若干二、主要元器件的介绍 1、模数转换芯片ADC0809: ADC0809是典型的8通8位通道逐次逼近式A/D转换器,它可以喝微型计算机直接接口。(1)ADC0809内部逻辑框图 图 1-2 ADC0809内部逻辑框图及引脚图 ADC0809的内部逻辑框图如图1-2所示。途中多路模拟开关可选通8路模拟通道,允许8位模拟量分时输入,并共用一个A/D转换器进行转换器,地址锁存器与译码电路完成对A、B、C三个地址位进行所存与译码C(ADDC)B(ADDB)C(ADDA)选择的通道0

    5、00IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7 ADC0809 通道选择表(2) ADC0809的引脚 ADC0809芯片为28引脚双列直插式装置其引脚排列图为1-2所示。(3) ADC0809的工作原理首先输入3位地址,并使ALE=1,将地址存入地址锁存器中,此地址经译码选通8路模拟输入之一的比较器。启动端上升沿逐次逼近寄存器复位,下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行,知道A/D转换完成。EOC变为高电平,指示A/D转换结束,结果数据已经存入锁存器,这个信号可用作中断申请,当OE输入为高电平时,输出三态门打开,转换结果

    6、的数字量输出到输出总线上。 图1-3 ADC0809信号的时序配合2.数据处理及控制芯片AT89S51 AT89S51是低功耗,高性能CMOS8位单片机,图1-4为内部总体结构,AT89S51内部含4K字节闪速存储器,128字节RAM,32个I/O口线,两个数据指针,两个16位定时器、计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时S51可降至0HZ的静态逻辑操作,并支两种软件可选的节电工作模式,空闲方式 停止CPU的工作,但允许RAM,定时、计数器,串行通信口及中断系统继续工作,直到下一个硬件复位,由于将多功能8位CPU和闪烁存储器组合在单个芯片中。 图1-4

    7、 89S51芯片内部总体结构 (1)主要性能参数 与MCS-51产品指令系列完全兼容 4K字节在系统编程闪速存储器 1000次擦写周期 4.05.5V的工作范围 全静态工作模式0HZ33MHZ 三级程序加密码锁 128个字节内部RAM 32个可编程I/O口线2个16位定时器/计数器6个中断源 全双工串行UART通道低功耗空闲和掉电模式中断可从空闲模式唤醒系统看门狗(WDT)及双数据指针掉电标志和快速编程特性灵活的系统编程 (2)AT89S51的引脚:AT89S51芯片为40引脚双列直插式封装,其引脚排列图为1-5 图1-5 AT89S51引脚图(3)P2口:P2口是一个内部提供上的拉电阻的8位

    8、双向I/O口,P2的输出缓冲器可驱动4个TTL逻辑门电路,对P2口管脚写入”1”后,被内部上拉电阻拉高,可作用输入。P2口被外部下拉为低电平时,将输出电流,这事由于内部有上拉电阻的缘故,P2口当用于外部程序或16位地址外部数据存储器进行存取时,P2口输出地址的高8位,在访问8位地址外部数据存储器时,P2口线上的内容,在访问整个期间不改变P2口在编程和校验时接收高8位地址信号和控制信号。(4)P3口:P3是一个内部提供上拉电阻的8位双向I/O口,P3口的输出缓冲器可驱动4个TTL逻辑门电路,对P3口写1后被内部上拉电阻拉高,可作用输入,P3口被外部下拉电阻拉低时,将输出电流,这是由于内部上有上拉

    9、电阻的缘故,P3口除了一般I/O口的功能外,还有重要的第二功,P3口同时为编程和校验接收一些控制信号。1. VCC:电源电压2. DND;接地3. P0口:P0口试一组8位漏极开路双向I/O口,每位引脚可驱动8个TTL逻辑门电路,对P0口写1时,被定义为高阻抗输入,在访问外部数据存储器或程序存储器时,它可以定义为地址总线和数据总线的低八位4. P1口:是一个内部提供上拉电阻的8位双向I/O口,它可驱动4个TTL逻辑门电路,对P1写1,被上拉电阻拉高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部有上拉电阻,在编程和校验时,P1口作为低8位地址接收,且具有第二功能。 如图表 1

    10、-2 表 1-25. RST:复位输入,当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间6. ALE/RPOG:当访问外部存储器时,地址锁存器允许的输出电平用于锁存地址的地位字节,编程时此引脚用于输出编程脉冲,在平时ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6,因此它可用作对外部输出脉冲或用于定时目的。每当用作外部存数据存储器时,将跳过一个ALE脉冲,如想禁止ALE的输出可在SFR8EH地址上置0,此时ALE只有执行MOVX,MOVC指令时ALE 才起作用,该引脚被略微拉高,如果微处理器在外部执行状态ALE禁止,置为无效。7. PSEN:外部程序存储器的选通信号

    11、,在由外部程序存储器去指期间,每个机器周期两次/PSEN有效,在访问外部数据存储器时,这两次有效的信号,将不出现。8. EA/VPP:当保持低电平时,则在此期间外部数据存储器,不管是否有内部数据存储器,注意加密方式为1时,/EA将内部锁定为RESET,当/EA保持高电平时,此间内部程序存储器,在编程期间此引脚用于12V编程电源(VPP)9. XTAL1:片内高增益反向放大器的的输入内部时钟工作的电路的输入10. XTAL2:片内高增益反向放大器的的输出端。(5)AT89S51的复位电路AT89S51的复位电路如图1-6,当单片机一上电,立即复位,另外,如果在运行中,外界干扰等因素使单片机的程序

    12、陷入死循环状态,就可以通过按键使它复位,复位也是使单片机退出低功耗工作方式而进入正常状态的一种操作。 图 1-6 复位电路电容C 和电阻R1实现上电自动复位,增加按键开关S和电阻R2,又可实现按键复位功能,R2的作用是在S按下的时候,防止电容C放电电流过大烧坏开关S 的触点,因保证R1/R210,一般去C=10f,R2=100,R1=8.2(6) AT89S51和ADC0809的连接AT89S51和ADC0809的连接电路图位1-7 它的三个问题1. 启动端送一个100ns宽的启动正脉冲2. 在获取EOC端上的状态信息,因为是A/D转换的结束标志。3. 给“三态输出锁存器”分配一个端口地址,也

    13、就是给OE端送一个地址译码器的输出信号。 1-7 AT89S51和ADC0809的连接电路图(7)驱动芯片74HC24574HC245为三态输出的8组总线收发器,在本实验中作为驱动芯片使用,用于驱动数码管的点亮, 1-8 为引脚图。 图1-8 74HC245引脚图1. A;A总线端2. B;B总线端3. /G:三态存储器(低电平有效)4. DIR:方向控制端5. VCC:电源6. GND:接地三、程序设计 1.主程序设计初始化中主要对AT89S51和ADC0809的管脚和数码管的为选及所用到的内存呢单元70H,78H,79H,7AH,进行初始化设置。准备工作做好后便启动ADC0809对IN0脚

    14、输入进的05V电压模拟信号进行数据采集并转换成相对应的0255十进制数字量在数据处理子程序中,运用标度变换知识,编写输入法0255十进制数字量转换成0.005.00V的数据,输出到显示主程序进行显示,整个主程序就是A/D转换,数据处理及显示程序循环执行,整个流程图如下图1-9 图 1-92.子程序设计 (1)A/D转换子程序 启动ADC0809对模拟量输入信号进行转换,通过判断EOC来确定转换是否完成,若EOC为0则继续等待,若EOC为1则把EOC=1,则把OE置位,将转换完成的数据存到70H中。子程序流程图 1-10 图1-10子程序流程图 (2)数据处理子程序数据处理子程序主要根据标度变换

    15、公示1-1程序流程图为1-11 图1-11 数据处理子程序流程图 (3)显示子程序采用动态扫描法实现三位数码管的数值显示,测量所得的A/D转换数据放在70H内存单元中,测量数据在显示时需要转成十进制BCD码放在78H7AH单元中,寄存器R1用作显示数据地址指针,程序流程图如图1-12 图1-12程序流程图源程序:ORG 0000HLJMP STARTORG 0003HRETIORG 000BHRETIORG 0013HRETIORG 001BHRETIORG 0023HRETIORG 002BHRETIORG0030H初始化参数:START CLR ASETB P3.7CLR P3.0CLR

    16、P3.1CLR P3.2MOV P2,AMOV 70H,AMOV 78H,AMOV 79H,AMOV 7AH,AMOV A #0FFHMOV P0,AMOV P1,A主程序:MAIN LCALLAD_SUB LCALL TURN_SUB0.005.00LCALL DISP_SUBLIMP MAINA/D转换子程序AD_SUB:CLR AMOV P2,AMOV R0,#70HLCALL AD_STWAIT:JB P3.7,DATASAVEAJMP WAITAD_ST:SETB P2.3NOPNOPCLR P2.3SETB P2.4NOPNOPCLR 2.4NOPNOPRET采样转换的数据储存DA

    17、TASAVE SETB P2.5MOV A,P0MOV R0,ACLR P2.5CLR AMOV P2,AMOV A,#0FFHMOV P0,AMOV P1,ARET将0!255转换为0.005.00TURN_SUB:MOV A,R0MOV B,#51DIV ABMOV 78H,AMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABJB F0,LOOP1ADD A,#5LOOP1 MOV 79H,AMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABMOV B,#51DIV ABJB F0,LOOP2ADD,A

    18、,#5LOOP2:MOV 7AH,ARET显示子程序DISP_SUB:MOV R1,#78HCLR AMOV P1 ,#0FFHANL P2,ALCALL PLAYCLR P1.7SETB P3.0LCALL DELAYCLR P3.0INC R1LCALL PLAYSETB P3.1LCALL DELAYCLR P3.1INC R1LCALL PLAYSETB P3.2LCALL DELAYCLR P3.2RET位码显示PLAY:MOV A,R1MOV DPDR,#TABMOVC A,A+DPTRMOV P1,ARET延时程序DELAY:MOV R6,#10HDL1:MOV R7,#10HDL2:DJNZ R7,DL2DJNZ R6,DL1RET心得与体会 .15


    注意事项

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




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

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

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

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