数字万用表 单片机课程设计Word格式文档下载.docx

上传人:b****6 文档编号:18222657 上传时间:2022-12-14 格式:DOCX 页数:18 大小:476.26KB
下载 相关 举报
数字万用表 单片机课程设计Word格式文档下载.docx_第1页
第1页 / 共18页
数字万用表 单片机课程设计Word格式文档下载.docx_第2页
第2页 / 共18页
数字万用表 单片机课程设计Word格式文档下载.docx_第3页
第3页 / 共18页
数字万用表 单片机课程设计Word格式文档下载.docx_第4页
第4页 / 共18页
数字万用表 单片机课程设计Word格式文档下载.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数字万用表 单片机课程设计Word格式文档下载.docx

《数字万用表 单片机课程设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数字万用表 单片机课程设计Word格式文档下载.docx(18页珍藏版)》请在冰豆网上搜索。

数字万用表 单片机课程设计Word格式文档下载.docx

P3.7控制ADC0809的转换结束信号系统框图如图1-1所示

图1-1

硬件选择方案:

一、实验所需元器件

1.AT89S51芯片1块

2.AD0809芯片1块

3.74HC2452块

4.4位一体数码1个

5.6MHZ晶振1个

6.33pF电容2个

7.0.1μf滤波电容2个

8.10μf电解电容1个

9.按键开关1个

10.发光二极管1个

11.4.7KΩ精密电位器1个

12.510Ω电阻12个

13.8.2KΩ电阻1个

14.10KΩ电阻1个

15.导线若干

二、主要元器件的介绍

1、模数转换芯片ADC0809:

ADC0809是典型的8通8位通道逐次逼近式A/D转换器,它可以喝微型计算机直接接口。

(1)ADC0809内部逻辑框图

图1-2ADC0809内部逻辑框图及引脚图

ADC0809的内部逻辑框图如图1-2所示。

途中多路模拟开关可选通8路模拟通道,允许8位模拟量分时输入,并共用一个A/D转换器进行转换器,地址锁存器与译码电路完成对A、B、C三个地址位进行所存与译码

C(ADDC)

B(ADDB)

C(ADDA)

选择的通道

IN0

1

IN1

IN2

IN3

IN4

IN5

IN6

IN7

ADC0809通道选择表

(2)ADC0809的引脚

ADC0809芯片为28引脚双列直插式装置其引脚排列图为1-2所示。

(3)ADC0809的工作原理

首先输入3位地址,并使ALE=1,将地址存入地址锁存器中,此地址经译码选通8路模拟输入之一的比较器。

启动端上升沿逐次逼近寄存器复位,下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行,知道A/D转换完成。

EOC变为高电平,指示A/D转换结束,结果数据已经存入锁存器,这个信号可用作中断申请,当OE输入为高电平时,输出三态门打开,转换结果的数字量输出到输出总线上。

图1-3ADC0809信号的时序配合

2.数据处理及控制芯片AT89S51

AT89S51是低功耗,高性能CMOS8位单片机,图1-4为内部总体结构,AT89S51内部含4K字节闪速存储器,128字节RAM,32个I/O口线,两个数据指针,两个16位定时器、计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时S51可降至0HZ的静态逻辑操作,并支两种软件可选的节电工作模式,空闲方式停止CPU的工作,但允许RAM,定时、计数器,串行通信口及中断系统继续工作,直到下一个硬件复位,由于将多功能8位CPU和闪烁存储器组合在单个芯片中。

图1-489S51芯片内部总体结构

(1)主要性能参数

与MCS-51产品指令系列完全兼容

4K字节在系统编程闪速存储器

1000次擦写周期

4.0~5.5V的工作范围

全静态工作模式0HZ~33MHZ

三级程序加密码锁

128个字节内部RAM

32个可编程I/O口线

2个16位定时器/计数器

6个中断源

全双工串行UART通道

低功耗空闲和掉电模式

中断可从空闲模式唤醒系统

看门狗(WDT)及双数据指针

掉电标志和快速编程特性

灵活的系统编程

(2)AT89S51的引脚:

AT89S51芯片为40引脚双列直插式封装,其引脚排列图为1-5

图1-5AT89S51引脚图

(3)P2口:

P2口是一个内部提供上的拉电阻的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口被外部下拉电阻拉低时,将输出电流,这是由于内部上有上拉电阻的缘故,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-2

表1-2

5.RST:

复位输入,当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间

6.ALE/RPOG:

当访问外部存储器时,地址锁存器允许的输出电平用于锁存地址的地位字节,编程时此引脚用于输出编程脉冲,在平时ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6,因此它可用作对外部输出脉冲或用于定时目的。

每当用作外部存数据存储器时,将跳过一个ALE脉冲,如想禁止ALE的输出可在SFR8EH地址上置0,此时ALE只有执行MOVX,MOVC指令时ALE才起作用,该引脚被略微拉高,如果微处理器在外部执行状态ALE禁止,置为无效。

7.PSEN:

外部程序存储器的选通信号,在由外部程序存储器去指期间,每个机器周期两次/PSEN有效,在访问外部数据存储器时,这两次有效的信号,将不出现。

8.EA/VPP:

当保持低电平时,则在此期间外部数据存储器,不管是否有内部数据存储器,注意加密方式为1时,/EA将内部锁定为RESET,当/EA保持高电平时,此间内部程序存储器,在编程期间此引脚用于12V编程电源(VPP)

9.XTAL1:

片内高增益反向放大器的的输入内部时钟工作的电路的输入

10.XTAL2:

片内高增益反向放大器的的输出端。

(5)AT89S51的复位电路

AT89S51的复位电路如图1-6,当单片机一上电,立即复位,另外,如果在运行中,外界干扰等因素使单片机的程序陷入死循环状态,就可以通过按键使它复位,复位也是使单片机退出低功耗工作方式而进入正常状态的一种操作。

图1-6复位电路

电容C和电阻R1实现上电自动复位,增加按键开关S和电阻R2,又可实现按键复位功能,R2的作用是在S按下的时候,防止电容C放电电流过大烧坏开关S的触点,因保证R1/R2>

10,一般去C=10μf,R2=100Ω,R1=8.2Ω

(6)AT89S51和ADC0809的连接

AT89S51和ADC0809的连接电路图位1-7它的三个问题

1.启动端送一个100ns宽的启动正脉冲

2.在获取EOC端上的状态信息,因为是A/D转换的结束标志。

3.给“三态输出锁存器”分配一个端口地址,也就是给OE端送一个地址译码器的输出信号。

1-7AT89S51和ADC0809的连接电路图

(7)驱动芯片74HC245

74HC245为三态输出的8组总线收发器,在本实验中作为驱动芯片使用,用于驱动数码管的点亮,1-8为引脚图。

图1-874HC245引脚图

1.A;

A总线端

2.B;

B总线端

3./G:

三态存储器(低电平有效)

4.DIR:

方向控制端

5.VCC:

电源

6.GND:

三、程序设计

1.主程序设计

初始化中主要对AT89S51和ADC0809的管脚和数码管的为选及所用到的内存呢单元70H,78H,79H,7AH,进行初始化设置。

准备工作做好后便启动ADC0809对IN0脚输入进的0~5V电压模拟信号进行数据采集并转换成相对应的0~255十进制数字量

在数据处理子程序中,运用标度变换知识,编写输入法0~255十进制数字量转换成0.00~5.00V的数据,输出到显示主程序进行显示,

整个主程序就是A/D转换,数据处理及显示程序循环执行,整个流程图如下图1-9

图1-9

2.子程序设计

(1)A/D转换子程序

启动ADC0809对模拟量输入信号进行转换,通过判断EOC来确定转换是否完成,若EOC为0则继续等待,若EOC为1则把EOC=1,则把OE置位,将转换完成的数据存到70H中。

子程序流程图1-10

图1-10子程序流程图

(2)数据处理子程序

数据处理子程序主要根据标度变换公示1-1

程序流程图为1-11

图1-11数据处理子程序流程图

(3)显示子程序

采用动态扫描法实现三位数码管的数值显示,测量所得的A/D转换数据放在70H内存单元中,测量数据在显示时需要转成十进制BCD码放在78H~7AH单元中,寄存器R1用作显示数据地址指针,程序流程图如图1-12

图1-12程序流程图

源程序:

ORG0000H

LJMPSTART

ORG0003H

RETI

ORG000BH

ORG0013H

ORG001BH

ORG0023H

ORG002BH

ORG0030H

初始化参数:

STARTCLRA

SETBP3.7

CLRP3.0

CLRP3.1

CLRP3.2

MOVP2,A

MOV70H,A

MOV78H,A

MOV79H,A

MOV7AH,A

MOVA#0FFH

MOVP0,A

MOVP1,A

主程序:

MAINLCALLAD_SUB

LCALLTURN_SUB

0.00~5.00

LCALLDISP_SUB

LIMPMAIN

A/D转换子程序

AD_SUB:

CLRA

MOVR0,#70H

LCALLAD_ST

WAIT:

JBP3.7,DATASAVE

AJMPWAIT

AD_ST:

SETBP2.3

NOP

CLRP2.3

SETBP2.4

CLR2.4

RET

采样转换的数据储存

DATASAVESETBP2.5

MOVA,P0

MOV@R0,A

CLRP2.5

MOVA,#0FFH

将0!

255转换为0.00~5.00

TURN_SUB:

MOVA,@R0

MOVB,#51

DIVAB

MOVA,B

CLRF0

SUBBA,#1AH

MOVF0,C

MOVA,#10

MULAB

JBF0,LOOP1

ADDA,#5

LOOP1MOV79H,A

SUBBA,#1AH

MOVB,#51

JBF0,LOOP2

ADD,A,#5

LOOP2:

显示子程序

DISP_SUB:

MOVR1,#78H

MOVP1,#0FFH

ANLP2,A

LCALLPLAY

CLRP1.7

SETBP3.0

LCALLDELAY

INCR1

SETBP3.1

SETBP3.2

位码显示

PLAY:

MOVA,@R1

MOVDPDR,#TAB

MOVCA,@A+DPTR

延时程序

DELAY:

MOVR6,#10H

DL1:

MOVR7,#10H

DL2:

DJNZR7,DL2

DJNZR6,DL1

心得与体会

.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 育儿理论经验

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1