proteus——ADC0832应用实例

本文详细介绍了在Proteus环境中使用ADC0832模数转换器的实例,包括起始和通道配置的4个时钟阶段,以及A-D转换数据的串行输出过程。电路设计中,80C51P2.4通过TXD提供时钟信号,RXD连接DI和DO,实现数据交互。代码部分展示了配置和接收转换数据的实现。
摘要由CSDN通过智能技术生成

1·模数转换器ADC0832应用实例

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jtXaN9rj-1645175796387)(C:\Users\86156\AppData\Roaming\Typora\typora-user-images\image-20220218150534042.png)]

2.工作时序图

下图ADC0832串行A-D转换工作时序,从图中看出,其工作时序分为两和个阶段:第1阶段为起始和通道配置,由CPU发送,从ADC0832DI端输入;第2阶段为A-D转换数据输出,由ADC0832从DO端输出,CPU接收。

(1)起始和通道配置

该阶段由4个时钟组成。在片选CS满足条件(完成从高到低的跳变)后,第1个时钟脉冲的上升沿,测得DI=1,即启动ADC0832;

第2、3个时钟上升沿输入A-D通道地址选择:00和01为差分输入,10和11为单端输入,如表6-3所列;第3个时钟下降沿,DI关断;

第4个时钟是ADC0832使多路转换器选定的通道稳定,DO脱离高阻状态。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uLEX5XyP-1645175796390)(C:\Users\86156\AppData\Roaming\Typora\typora-user-images\image-20220218153020519.png)]

编码 CH0 CH1
00 + -
01 - +
10 +
11 +

(2)A-D转换数据串行输出
ADC0832输出的A-D转换数据分为两帧:第1帧从高位(MSB)到低位(LSB)第2帧从低位到高位,2帧数据合用一个最低位,共需要15个时钟。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q6ENXjqU-1645175796391)(C:\Users\86156\AppData\Roaming\Typora\typora-user-images\image-20220218152910985.png)]

电路图

在这里插入图片描述

(1)A-D转换电路

80C51P2.4片选0832CS;TXD发送时钟信号,与CLK端连接;RXD与DI、DO端连接在一起,发送A-D通道地址配置信号和接收串行A-D数据。根据ADC0832特点,DI端在接收主机起始和通道配置信号后关断,直至CS再次出现下跳变,DO端在DI端有效期间始终处于三态,因此DI端与DO端可与RXD端连接在一起,不会引起冲突。

代码

#include<reg51.h>
#include<intrins.h>
sbit CS=P2^4;//片选0832
sbit Dp=P1^3;//小数点驱动端
sbit E=P1^2;//定义E为P1.2(139译码允许端)
unsigned char a[2];//定义A-D转换值存储数组a[2]
unsigned char b[4];
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值