A\D接口技术

文章目录


前言

以ADC0809为例,它是逐次逼近型,内部有8路模拟开关,可以实现8路模拟电压的的分时转换。使用的是汇编语言。

一、ADC0809的应用

1)确定通道的地址

2)启动AD:MOVX @DPTR,A

3)转换是否结束?延时或者查询EOC或者中断方式

4)读取装换结果:MOVX A,@DPTR

注意:是单极性输出还是双极性输出

例1:如图接口电路,采用中断的方式巡回采样从IN0-IN7输入的模拟电压信号,检测数据依次放在60H开始的内存单元中。 

 解:分析,首先分析电路图,确定通道IN0-IN7的通道地址,这里用到的地址总线是P2.7,以及P0.0、P0.1、P0.2这三根线是确定选择哪个通道,000的时候是IN0通道,P2.7与WR\RD通过或非门连接在一起,控制着是有效还是有效,可以确定地址为7FF8H-7FFFH,这里没有用到的地址线都拉高了;

然后,分析其他引脚EOC跟外部中断INT1连接通过非门连接在一起,我们可以使用查询的方法,或者中断的方法来看是否转换结束。

P0经过锁存器使用地址总线的低8位,ALE控制着门控信号,同时也进行分频的作用,1/6分频。

使用中断的方式进行查询:

ORG 0000H
AJMP MAIN 
ORG 0013H
AIMP INTV1
ORG 0030H
MAIN:	
	
	MOV  R0,#60H
	MOV  R2,#08H
	SETB   EX1
	SETB   IT1
	SETB   EA
	MOV  DPTR,#7FF8H;通道0的地址
	MOVX @DRTR,A;启动AD转换
HE:
	MOV   A,R2
	JNZ     HE
INTV1:
	MOVX A,@DPTR
	MOV @R0,A
	INC R0
	INC DPTR
	DEC R2
	MOVX @DPTR,A
	RETI

对于单个通道IN0使用查询的方法进行查询:

ORG 0000H
AJMP MAIN
ORG 0030H
MAIN:
	MOV R0,#60H;存储的单元
	MOV R2,#20;通道采集20次
	MOV DPTR,#7FF8H;通道INT0的地址
START:
	MOVX @DPTR,A:启动装换
WAIT:
	JB P3.3,NEXT;判断是否按下
	AJMP WAIT
NEXT:
	MOVX A,@DPTR;读取转换结果
	MOV @R0,A;存储单元
	INC R0
	DJNZ R2,START

总结

学会分析电路接口图,分析每一个引脚是做什么的,起到什么作用,如何确定通道地址,使用查询的方法还是中断的方式进行查询。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值