问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

单片机里面ADC0832和AD0832一样吗?是同一个概念吗

发布网友 发布时间:2022-04-19 20:21

我来回答

3个回答

热心网友 时间:2023-07-15 16:38

AD0832是8位逐次*近模数转换器,可支持两个单端输入通道和一个差分输入通道。是8位逐次*近模数转换器,可支持两个单端输入通道和一个差分输入通道。

当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,当要进行A/D转换时,

须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能, 

当此2位数据为“1”、“0”时,只对CH0进行单通道转换。 

当2位数据为“1”、“1”时,只对CH1进行单通道转换。 

当2位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。

当2位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1作为正输入端IN+进行输入。

在完成输入启动位、通道选择之后,就可以开始读出数据,转换得到的数据会被送出二次,一次高位在前传送,一次低位在前传送,连续送出。在程序读取二个数据后,我们可以加上检验来看看数据是否被正确读取。 

由于ADC0832是8位分辨率,返回的数值在0~255之间,对应模拟数值为0~5V,因此每一档对应的电压值约为0.0196V。大家可以在通道输入端引入模拟信号(0~5V)进行测试,比如可以在通道脚和地之间接入电池来测试电池电压值。为使两位数码管显示电压值大小,在写程序是可将对应比值改位0.196,同理,如果想要显示精度更高,可用三位或四位显示,那么响应的改一下比值为1.96或19.6,当然,需要注意你所得数据的大小是否超出数据类型的大小。

时序图

热心网友 时间:2023-07-15 16:39

串行AD转换器ADC0832的使用

单片机控制系统中通常要用到AD转换,根据输出格式,常用的AD转换方式可分为并行AD和串行AD。并行方式一般在转换后可直接接收,但芯片的引脚比较多;串行方式所用芯片引脚少,封装小,但需要软件处理才能得到所需要的数据。可是单片机I/O引脚本来就不多,使用串行器件可以节省I/O资源。

ADC0832是8位逐次*近模数转换器,可支持两个单端输入通道和一个差分输入通道。相同功能的器件还有ADC0834,ADC0838,ADC0831。所不同的是它们的输入通道数量不同。它们的通道选择和配置都是通过软件设置。AD0832的主要特点如下:

● 易于和微处理器接口或独立使用;

● 可满量程工作;

● 可用地址逻辑多路器选通各输入通道;

● 单5V供电,输入范围为0~5V;

● 输入和输出与TTL、CMOS电平兼容;

ADC0832通过内部多路器来控制选择通道,处理器的控制命令通过DI引脚输入。引脚图如右图所示,通道配置命令和通道选择命令如下:

输入配置可在多路器寻址时序中进行。多路器地址可通过DI端移入转换器。多路器地址选择模拟输入通道可决定输入是单端输入还是差分输入。当输入是差分时,应分配输入通道的极性,并应将差分输入分配到相邻的输入通道对中。例如通道0和通道1可被选为一对差分输入。另外,在选择差分输入方式时,极性也可以选择。一对输入通道的两个输入端的任何一个都可以作为正极或负极。通常ADC0832在输出以最高位(MSB)开头的数据流后,会以最低位(LSB)开头重输出一遍(前面的数据流)。(因此,编程时要发两轮脉冲,第一次取数据,第二次若不要从低到高的数据,也要发一轮8 个脉冲将0832中寄存器的数据移出。是的,)其工作时序如下所示:

ADC0832有8只引脚,CH0和CH1为模拟输入端,CS为片选引脚,只有CS置低才能对ADC0832进行配置和启动转换。CLK为ADC0832的时钟输入端。CS在整个转换过程中都必须为低,当CS为低时,在数据输入端DI(数据输入端)加一个高电平(这个高电平是否算在送到DI的一位之中?如果算,那么后面就只要再送两位。是的,这个高电平是作为起始标志),接着在CLK上加一个时钟,DI上的逻辑1就会使ADC0832的DI脱离高阻态,然后通道配置数据拌随着时钟通过DI端移入多路器,当最后一位数据移入多路器时(数据是三位吗?还是可以有更多位?是否因为是仅仅作状态设置,所以只须三位?数据是三位,前一位标志输入开始,后两位是用来作通道设置和选择),DI变为高阻态,在这以前DO(数据输出端)都为高阻态(这个“以前”的概念是什么?就是CS从高跳到低到现在)。在经过一个时钟(是指在最后一个数据从DI移入后,还要再经过一个时钟?是的,当最后一位数据移入DI,需要再加一个时钟使DO脱离高阻态),DO脱离高阻态并启动转换。接着从处理器接收时钟信号,每经过一个时钟,转换后的数据就会从高位到低位逐次从DO移出,经过8个时钟后,数据又以从低位到高位的形式从DO移出(也是每个时钟移一位)。当最后一位数据移出时转换完成。当CS从低变为高时,ADC0832内部所有寄存器清零。如想要进行下一次转换,CS必须做一个从高到低的跳变,后跟着地此配置数据重复上面的过程。

在进行单片机和ADC0832的连接时,因为DI和DO并不是同时使用,所以DI和DO可以共用单片机的一条I/O线,再加上一条时钟线和一条片选线就可以实现单片机和ADC0832的连接,电路连接例子如下图所示:

ADC0832在51单片机上的AD转换程序的设计也不复杂,下面给出以上图为例的51单片机程序:

adc_0832_cs bit p2.2

adc_0832_clk bit p2.1

adc_0832_di bit p2.0

adc_0832_ch0 equ 38h ;buf of ch0

adc_0832_conv: push a

push psw

push 0

clr adc_0832_clk ;clear clok

clr adc_0832_di

setb adc_0832_cs ;set CS to enable converters

clr adc_0832_cs ; cs作一个从高到低的跳变。

setb adc_0832_di ;set start bit to enable data input

setb adc_0832_clk ; clk作一个从高到低的跳变,并不是从高到低跳变,而是一个上升脉冲,因为在这步以前clk处于低电平,现在是先高,然后又低,形成一个上升脉冲

clr adc_0832_clk ;上面指令中di的1进入寄存器。

setb adc_0832_di ;MSB address select CH0

setb adc_0832_clk ; clk第二个从高到低的跳变,

clr adc_0832_clk ;上面指令中di再进一个1到寄存器。

clr adc_0832_di ;LSB address

setb adc_0832_clk

clr adc_0832_clk ;上面指令中,di进入的数据为110。

setb adc_0832_clk ;设高位先行进入。

clr adc_0832_clk ;上面说的再进一个时钟就是最后的这个吧?是的,这个时钟使DO脱离高阻态

adc_conv: mov r0,#08h ;该段从0832取数。

adc_next_bit: mov c,adc_0832_di

rlc a

setb adc_0832_clk

clr adc_0832_clk

nop

djnz r0,adc_next_bit

mov r0,#08h ;该段就是所说的0832又从低位到高位再送一次数,

adc_skip_byte: setb adc_0832_clk ;但这里不作保存,只空操作8个时钟,

clr adc_0832_clk ;将0832从低位到高位的8个数据扔出去。

djnz r0,adc_skip_byte

setb adc_0832_clk

clr adc_0832_clk

setb adc_0832_cs ;完事后将cs置高。

mov r0,#adc_0832_ch0

mov @r0,a

pop 0

pop psw

pop a

ret

热心网友 时间:2023-07-15 16:39

这是8位的AD模数转换器,逐次比较式的,速度很快,抗干扰差。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
企业培训学到了什么 培训感悟简短 有关培训的感悟 通过培训学到什么 培训你学到了什么 领导问培训学到什么怎么回复 Linux系统安装FTP服务器 Linux系统的网络文件共享 建筑的七盏明灯的内容简介 面向对象设计七大原则 简单说 交互设计七大定律 百度贴吧无论发什么贴,都被系统秒删?怎么回事? ads1256idb是几位adc转换芯片 贴吧为什么我发什么都删除 芯片丝印ADC是什么芯片 为什么在贴吧发帖被秒删??试过好几个贴吧都是秒删是 下面这个ADC转换芯片的型号具体是什么 百度贴吧为什么最近总是秒删 音频ADC芯片选型 为什么我的百度贴吧 发帖被系统秒删 正常评论也被秒删 为什么我在百度贴吧里发的文章 ,没过几秒钟就被删... 百度贴吧无论在哪发什么贴都会被秒删怎么办 为什么在百度贴吧发帖秒删? 百度贴吧,无论我发什么贴都会被系统秒删 贴吧发帖为什么总是秒删??? 在百度贴吧里发帖老是被删是这么回事 为什么我百度贴吧账号发啥东西都被系统秒删呢? 为什么发帖总被秒删? 今天突然在贴吧发任何贴都被系统秒删是怎么回事?... 为什么贴吧发帖会被秒删? 为什么我在百度贴吧发帖,总是被瞬间秒删?? 贴吧回复老被系统秒删 16位adc芯片转化速度在10us以内有什么芯片啊? 为什么我在自己的帖子里发图片被系统直接自动删除 带16至24位ADC的单片机国产的有什么型号? 为什么在贴吧的帖子老是被删除啊? ADC0809与单片机接线,为什么ADC0809的地址是7FF8H? 是这样的,有三个32位的ADC芯片,430F149芯片能同... 两个51单片机串口通讯+ADC采集+LCD1602+按键控制+... 创新X-FI芯片有几种型号,哪个最好?麻烦告诉我 常用的几种类型的ADC基本原理及特点 有什么芯片具有ADC及DAC功能? 带有I2C接口的ADC芯片,要求至少有一路差分输入通道... ADC芯片,频率0.5M-2MHZ,8位,大概要多少钱? 多多是什么 多多这个小名打多少分? 小米8的小爱同学会无故唤醒,你们的会吗 小米手机怎么叫小爱 日立中央空调面板功能选择设定项目表 日立中央空调打开制冷但是制热还在那闪这是什么原... 日立的中央空调怎么样?