单片机:模数转换

更新时间:2023-12-01 11:13:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

模数转换

一.单片机对ADC0809的控制过程

先选择一个模拟输入通道,本连接选择IN4。当执行MOVX @DPTR,A是,单片机WR有效,产生脉冲。脉冲给ADC0809的START,开始对模拟信号进行转换。当转换结束后EOC为高电平。一次转换结束。

二.单片机与ADC0809的连接

1.单片机P0.0-P0.7数据线接ADC0809的OUTI-OUT8.

2.单片机的地址线低8位接锁存器输出接ADC0809的三根地址线A,B,C.选通IN0-IN7通道。

3.START 为启动信号输入端,OE为输出允许端。由于ADC0809没有片选端,用P2.7与单片机的WR,RD进行控制。WR与P2.7接或非门控制START。RD与P2.7接或非控制OE。

因为START与ALE连在一起,所以ADC0809A在锁存通道地址的同时,启动并进行转换。

4.单片机的CLK输出是被6分频之后的1MHZ,接一个触发器之后降频到500K后与ADC0809连接使其正常运行。

三.单片机在读取ADC转换结果时有查询和中断两种方式

1.查询方式 程序如下

ORG 0000H

SJMP MAIN

EOC EQU P3.0

MAIN: MOV SP,#60H SP初值赋60H

MOV DPTR,#7FFCH IN4的地址7FFCH给DPTR LL: MOV A,#0

MOVX @DPTR,A A值给7FFCH.启动转换器,开始转换 LCALL DL 延时程序,跳过EOC的延时

JNB P3.0,$ MOVX A,@DPTR MOV P1,A

SJMP LL

DL: MOV R7,#10 DJNZ R7,$ RET

END

2.中断方式 程序如下 ORG 0000H SJMP MAIN

ORG 0003H

LJMP BB

MAIN: SETB EX0 SETB IT0

SETB EA 变低电平。当EOC变高电平是转换完成。 RD为低电平,OE为高电平,允许输出。 输出到P1口 打开外部中断子开关 选择边沿触发方式 打开中断总开关

EOC MOV DPTR,#7FFCH IN4地址给DPTR

MOV A,#0

MOVX @DPTR,A A值给7FFCH.启动转换器 SJMP $

中断程序

BB: MOVX A,@DPTR RD为低电平,OE为高电平,允许输出 MOV P1,A MOV A,#0

MOVX @DPTR,A A值给7FFCH.启动转换器

RETI 返回程序 END 四.示波器波形

本文来源:https://www.bwwdw.com/article/ouft.html

Top