最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

ADC0804资料

来源:动视网 责编:小OO 时间:2025-09-26 23:54:27
文档

ADC0804资料

A/D0804转换器简介ADC0804的管脚图如下所示图1ADC0804架构图它的主要电气特性如下:●工作电压:+5V,即VCC=+5V。●模拟输入电压范围:0~+5V,即0≤Vin≤+5V。●分辨率:8位,即分辨率为1/28=1/256,转换值介于0~255之间。●转换时间:100us(fCK=0KHz时)。●转换误差:±1LSB。●参考电压:2.5V,即Vref=2.5V。1.ADC0804的转换原理ADC0804是属于连续渐进式(SuccessiveApproximationMeth
推荐度:
导读A/D0804转换器简介ADC0804的管脚图如下所示图1ADC0804架构图它的主要电气特性如下:●工作电压:+5V,即VCC=+5V。●模拟输入电压范围:0~+5V,即0≤Vin≤+5V。●分辨率:8位,即分辨率为1/28=1/256,转换值介于0~255之间。●转换时间:100us(fCK=0KHz时)。●转换误差:±1LSB。●参考电压:2.5V,即Vref=2.5V。1.ADC0804的转换原理ADC0804是属于连续渐进式(SuccessiveApproximationMeth
A/D 0804转换器简介

ADC0804的管脚图如下所示

图1 ADC0804架构图

它的主要电气特性如下:

●工作电压:+5V,即VCC=+5V。

●模拟输入电压范围:0~+5V,即0≤Vin≤+5V。

●分辨率:8位,即分辨率为1/28=1/256,转换值介于0~255之间。

●转换时间:100us(fCK=0KHz时)。

●转换误差:±1LSB。

●参考电压:2.5V,即Vref=2.5V。

1.ADC0804的转换原理

ADC0804是属于连续渐进式(Successive Approximation Method)的A/D转换器,这类型的A/D转换器除了转换速度快(几十至几百us)、分辨率高外,还有价钱便宜的优点,普遍被应用于微电脑的接口设计上。

以输出8位的ADC0804动作来说明“连续渐进式A/D转换器”的转换原理,动作步骤如下表示(原则上先从左侧最高位寻找起)。

第一次寻找结果:10000000 (若假设值≤输入值,则寻找位=假设位=1)

第二次寻找结果:11000000 (若假设值≤输入值,则寻找位=假设位=1)

第三次寻找结果:11000000 (若假设值>输入值,则寻找位=该假设位=0)

第四次寻找结果:11010000 (若假设值≤输入值,则寻找位=假设位=1)

第五次寻找结果:11010000 (若假设值>输入值,则寻找位=该假设位=0)

第六次寻找结果:11010100 (若假设值≤输入值,则寻找位=假设位=1)

第七次寻找结果:11010110 (若假设值≤输入值,则寻找位=假设位=1)

第八次寻找结果:11010110 (若假设值>输入值,则寻找位=该假设位=0)

    这样使用二分法的寻找方式,8位的A/D转换器只要8次寻找,12位的A/D转换器只要12次寻找,就能完成转换的动作,其中的输入值代表图1的模拟输入电压Vin。

2.分辨率与内部转换频率的计算

    对8位ADC0804而言,它的输出准位共有28=256种,即它的分辨率是1/256,假设输入信号Vin为0~5V电压范围,则它最小输出电压是5V/256=0.01953V,这代表ADC0804所能转换的最小电压值。

    表1列出的是8~12位A/D转换器的分辨率和最小电压转换值。

表1 A/D转换器的分辨率和最小电压值

位数目分辨率最小电压转换值
81/2560.01953V
101/10240.00488V
121/40960.00122V
    至于内部的转换频率fCK,是由图2的CLKR(19脚)、CLK IN(4脚)所连接的R()、C(150PF)来决定。

图2 ADC0804与CPLD&FPGA、8051单片机等典型连接图

频率计算方式是:fCK=1/(1.1×R×C)

若以图2的R=10KΩ、C=150PF为例,则内部的转换频率是

fCK=1/(1.1×10 KΩ×150PF)=606KHz

    更换不同的R、C值,会有不同的转换频率,而且频率愈高代表速度愈快。但是需要注意R、C的组合,务必使频率范围是在100KHz~1460KHz之间。

3.ADC0804的控制方法

    要求ADC0804进行模拟/数字的转换,其实可以直接由下面的时序图及图2信号的流向来配合了解。

图3 ADC0804控制信号时序图

    以图2、图3信号流向而言,控制ADC0804动作的信号应该只有CS、WR、RD。其中INTR由高电位转为低电位后,代表ADC0804完成这次的模拟/数字转换,而DB0~DB7代表是转换后的数字资料。

    图3的动作大概可分成4个步骤区间——S0、S1、S2、S3,每个步骤区间的动作方式如下:

●步骤S0:CS=0、WR=0、RD=1(由CPLD发出信号要求ADC0804开始进行模拟/数字信号的转换)。

●步骤S1:CS=1、WR=1、RD=1(ADC0804进行转换动作,转换完毕后INTR将高电位降至低电位,而转换时间>100us)。

●步骤S2:CS=0、WR=1、RD=0(由CPLD发出信号以读取ADC0804的转换资料)。

●步骤S3:CS=1、WR=1、RD=1(由CPLD读取DB0~DB7上的数字转换资料)。

由上述步骤说明,可以归纳出所要设计的CPLD动作功能有:

●负责在每个步骤送出所需的CS、WR、RD控制信号。

●在步骤S1时,监控INTR信号是否由低电位变高电位,如此以便了解ADC0804的转换动作结束与否。

●在步骤S3,读取转换的数字资料DB0~DB7。

下面是利用状态机控制ADC0804的程序代码:

-- ********************************************

LIBRARY IEEE;

USE IEEE.STD_LOGIC_11.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

--*********************************************

ENTITY Ch9_2_1 is

    PORT(

         Din        : IN    STD_LOGIC_VECTOR(7 Downto 0);    -- A/D Data In

         Dout        : OUT   STD_LOGIC_VECTOR(7 Downto 0);    -- A/D Data Out

         CP            : IN    STD_LOGIC;        -- CLOCK

         RST        : IN    STD_LOGIC;        -- System Reset

         nCS,nWR,nRD: OUT   STD_LOGIC;        -- O/P Signal

         nINTR        : IN    STD_LOGIC        -- I/P Signal    

        );

END Ch9_2_1;

--*********************************************

ARCHITECTURE a OF Ch9_2_1 IS

    TYPE     STATE_TYPE IS    (S0,S1,S2,S3);    --State Type Declare

    SIGNAL  State     : STATE_TYPE;             --(1)State Signal Declare

    SIGNAL  EC,nIN    : STD_LOGIC;        --Synchronous Control & A/D nINTR

    SIGNAL  D        : STD_LOGIC_VECTOR(7 Downto 0);    --Read A/D Data

BEGIN

SystemConnection: Block

Begin

    nIn <= nINTR;    

    Dout <= D;                -- A/D Data Out

End Block SystemConnection;

StateChange: Block

Begin

    PROCESS (CP,RST)                

    BEGIN

        IF RST = '1' Then            -- Reset State

                nCS <= '1';

                nWR <= '1';

                nRD <= '1';

                EC <= '0';

                State <= S0;

        ElsIF CP'Event And CP = '1' Then    

            CASE State IS

                WHEN S0 =>            --(2)STATE S0 & Write State

                    nCS <= '0';

                    nWR <= '0';

                    nRD <= '1';

                    EC <= '0';

                    State <= S1;

                WHEN S1 =>            --(3)STATE S1 & A/D Conversion State

                    nCS <= '1';

                    nWR <= '1';

                    nRD <= '1';

                    EC <= '0';

                    

                    If nIN = '0' Then    --nINTR = '0' ?

                        State <= S2;    --(7)

                    End if;

                WHEN S2 =>            --(4)STATE S2 & Read State

                    nCS <= '0';

                    nWR <= '1';

                    nRD <= '0';

                    EC <= '1';        --(9)

                    State <= S3;

            

                WHEN S3 =>            --(5)STATE S3

                    nCS <= '1';

                    nWR <= '1';

                    nRD <= '1';

                    EC <= '0';

                    State <= S0;

                    

                WHEN OTHERS =>        --(6)Initial State    

                    State <= S0;

                    

                 END CASE;

        ENd If;

    END PROCESS; 

End Block StateChange;

ReadData: Block

Begin

    PROCESS (CP)

    BEGIN     

        IF CP'Event AND CP = '1' THEN

            IF EC = '1' THEN            -- (8)Read State --> EC = '1'

                D <= Din;        -- Read A/D Convertor Data

            END IF;

        END IF;

    END PROCESS;

End Block ReadData;

END a;

程序说明:

(1)首先上述程序(1)处,我们先定义共有S0~S3,4个状态。

(2)程序(2)~(6)是一个Case-when语句所构成的状态机功能结构。

(3)在状态S1时,它是必须到ADC0804的INTR信号转为低电位时,才会通过程序(7)将状态由S1切换至下个状态S2。

(4)接着在状态S2的程序(9)处,将信号EC设定为高电位,这样下个脉冲信号CP正沿时,即程序(8)处,才开始读取ADC0804的DB0~DB7管脚沙国内的数字转换信号。

文档

ADC0804资料

A/D0804转换器简介ADC0804的管脚图如下所示图1ADC0804架构图它的主要电气特性如下:●工作电压:+5V,即VCC=+5V。●模拟输入电压范围:0~+5V,即0≤Vin≤+5V。●分辨率:8位,即分辨率为1/28=1/256,转换值介于0~255之间。●转换时间:100us(fCK=0KHz时)。●转换误差:±1LSB。●参考电压:2.5V,即Vref=2.5V。1.ADC0804的转换原理ADC0804是属于连续渐进式(SuccessiveApproximationMeth
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top