ADC0804引脚及使用说明
数模转换ADC0804的应用实验

数模转换ADC0804的应用实验[实验任务]从ADC0804的通道IN+输入0-5V之间的模拟量,通过ADC0804转换成数字量在数码管上以十进制形成显示出来。
[实验原理]ADC0804是8位全MOS中速A/D转换器、它是逐次逼近式A/D转换器,片内有三态数据输出锁存器,可以和单片机直接接口。
单通道输入,转换时间大约为100us。
ADC0804转换时序是:当CS=0许可进行A/D转换。
WR由低到高时,A/D开始转换,一次转换一共需要66-73个时钟周期。
CS与WR同时有效时启动A/D转换,转换结束产生INTR信号(低电平有效),可供查询或者中断信号。
在CS和RD的控制下可以读取数据结果。
[C语言源程序]/*注意:程序下载到DPY-1实验板单片机后一定要使SW DIP1的开关脱离ON档。
或者直接将下载线从实验板上拔下。
因为下载线接在I/O口P1.5,P1.6,P1.7上,下载线的电平将会影响测量结果*/#include<reg52.h>code unsigned char seg7code[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//显示段码sbit int1=P3^3;//定义管脚功能sbit cs=P3^2;sbit wr=P3^6;sbit rd=P3^7;void Delay(unsigned int tc)//显示延时程序{while(tc!=0){unsigned int i;for(i=0;i<100;i++);tc--;}}unsigned char adc0804(void)//读AD0804子程序{unsigned char addata,i;rd=1;wr=1;int1=1;//读ADC0804前准备P1=0xff;//P1全部置一准备cs=0;wr=0;wr=1;//启动ADC0804开始测电压while(int1==1);//查询等待A/D转换完毕产生的INT(低电平有效)信号rd=0;//开始读转换后数据i=i;i=i;//无意义语句,用于延时等待ADC0804读数完毕addata=P1;//读出的数据赋与addaterd=1;cs=1;//读数完毕return(addata);//返回最后读出的数据}unsigned int datpro(void)//ADC0804读出的数据处理{unsigned char x;unsigned int dianyah,dianyal;//用于存储读出数据的高字节和低字节unsigned int dianya=0;//存储最后处理完的结果注意数据类型for(x=0;x<10;x++)//将10次测得的结果存储在dianya中{dianya=adc0804()+dianya;}dianya=dianya/10;//求平均值dianyah=dianya&0xf0;//屏蔽低四位dianyah=dianyah>>4;//右移四位取出高四位dianyal=dianya&0x0f;//屏蔽高四位取出低四位dianya=dianyal*20+dianyah*320;//最后的结果是一个四位数,便于显示return(dianya);//返回最后处理结果}void Led(){unsigned int date;date=datpro();//调用数据处理最后结果P2=P2&0xef;P0=seg7code[date/1000]|0x80;//输出个位数和小数点Delay(8);P2=P2|0xf0;P2=P2&0xdf;P0=seg7code[date%1000/100];//输出小数点后第一位Delay(8);P2=P2|0xf0;P2=P2&0xbf;P0=seg7code[date%100/10];//输出小数点后第二位Delay(8);P2=P2|0xf0;P2=P2&0x7f;P0=seg7code[date%10];//输出小数点后第三位Delay(8);P2=P2|0xf0;}main(){while(1){Led();//只需调用显示函数}}。
ADC08040

模拟/数字(A/D)转换器的原理与应用ADC08041、A/D转换就是将模拟信号输换成数字信号。
A/D转换器就是用来实现这一功能的器件。
信号输入端常常是传感器或相应电路的模拟输出,由ADC器件转换成数字信号再提供给微处理器,以便用作显示等后期信号处理。
2、ADC0804的规格及引脚图8位COMS依次逼近型的A/D转换器.三态锁定输出存取时间:135US分辨率:8位转换时间:100US总误差:正负1LSB工作温度:ADC0804LCN---0~70度引脚图及说明见下图3、引脚定义/CS芯片选择信号。
/RD外部读取转换结果的控制输出信号。
/RD为高时,DB0~DB7处理高阻抗:/RD为低时,数字数据才会输出。
/WR:用来启动转换的控制输入,相当于ADC的转换开始(/CS=0时),当/WR由高变为低时,转换器被清除:当/WR回到高时,转换正式开始。
CLK IN,CLK R:时钟输入或接振荡无件(R,C)频率约限制在100KHZ~1460KHZ,如果使用RC电路则其振荡频率为1/(1.1RC)/INTR:中断请求信号输出,低地平动作.VIN(+)VIN(-):差动模拟电压输入.输入单端正电压时,VIN(-)接地:而差动输入时,直接加入VIN(+)VIN(-).AGND,DGND:模拟信号以及数字信号的接地.VREF:辅助参考电压.DB0~DB7:8位的数字输出.VCC:电源供应以及作为电路的参考电压.ADC0804模拟转数字对照表十六进制二进制高四位低四位相对电压值(2.56V)分别与满刻度的比率高四位低四位F111115/1615/256 4.8000.300 E111014/1614/256 4.4800.280 D110113/1613/256 4.1600.260 C110012/1612/256 3.8400.240B 101111/1611/256 3.5200.220A 101010/1610/256 3.2000.200910019/169/256 2.8800.180810008/168/256 2.5600.160701117/167/256 2.2400.140601106/166/256 1.9200.120501015/165/256 1.6000.100401004/164/256 1.2800.080300113/163/2560.9600.060200102/162/2560.6400.040100011/161/2560.3200.020000000/160/256321234567891011121314151617181920ADC0804PP10PP11PP12PP13PP14PP15PP16PP17R24R25R27R26VCCC15VCC01VINPP37PP36PP20R成功一号A D 转换实验部分电路图数字输出接口模拟输入接口4、根据以上对照表,可以得出以下结论如果:输入模拟量VIN=4V,由上表可知 3.840+0.160=4V数字为11001000=C8H5、如何在成功一号实验板上实现这一想法了?实验步骤如下:a、理解并将ADC0804转换程序写入AT89S51;b、对照说明书上的图的18号位置分别插入可插电位器c、旋转输入可调电位器,使输入电压由0V调到5V;d、程序中已使转换得到的数字信号,送P0口显示以便观察;实验板的P1口的LED也可以看到现象。
AD转换芯片ADC0804

AD转换芯⽚ADC0804AD0804简介ADC0804的管脚图如下所⽰它的主要电⽓特性如下:●⼯作电压:+5V,即VCC=+5V。
●模拟输⼊电压范围:0~+5V,即0≤Vin≤+5V。
●分辨率:8位,即分辨率为1/28=1/256,转换值介于0~255之间。
●转换时间:100us(f CK=640KHz时)。
●转换误差:±1LSB。
●参考电压:2.5V,即V ref=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。
AD0804简介续1(2007-05-30 17:35:30)转载2.分辨率与内部转换频率的计算对8位ADC0804⽽⾔,它的输出准位共有28=256种,即它的分辨率是1/256,假设输⼊信号Vin为0~5V电压范围,则它最⼩输出电压是5V/256=0.01953V,这代表ADC0804所能转换的最⼩电压值。
8位模-数转换芯片ADC0804应用

ADC0804应用ADC0804为8位CMOS逐次比较型模数转换器。
也是初学者最常用的A/D转换器,电源电压为5V,它的转换分辨率为8位256级,即表现为输入电压分辨率为0.02V;也就是说输入电压每增加0.02V,转换输出的数据才加1.ADC0804的引脚功能如下:1、/CS(片选端)。
用来控制ADC0804是否被选取中,/CS=0时芯片被选中。
2、/RD(读控制端)。
/RD为1时,DB0-DB7处于高阻状态,/RD=0时,DB0-DB7才会输出电压数据。
3、/WR(写控制端)。
当/CS=0时,/WR由1变为0时,转换器被清除,/WR 再次回到1时,转换才重新开始。
4、CLK-IN(时钟输入端)。
5、INTR(中断输出端),低电平有效,接单片机外部中断。
6、Vin+(模拟电压同相输入端),输入电压在DC0-5.12V。
7、Vin-(模拟电压反相输入端),使用时一般接模拟地。
8、A-GND(模拟地)。
9、Vref/2(参考电压端),输入电压最高为5.12V时,应调整至2.56V;即此脚电压为输入最高电压的1/2。
10、DGND(数字地)。
11-18、(数据输出D7-D0)。
19、CLK-R(时钟外接电阻端)。
20、VCC(电源)。
ADC0804的使用分为直接控制和间接控制两种方式,直接控制就是把其当作单片机的一个外部存储器来使用,但其RD和WR端必须接单片机的RD和WR,这在硬件设计和PCB布线时有时会感到不方便;间接控制就是可用任何其它I/O 器来模拟它的控制时序,使其完成电压转换。
ADC0804直接控制方式的转换程序在其它不少资料上都有介绍,这里就不再重复,下面主要介绍间接控制方式的电压转换。
ADC0804间接控制方式转换程序:其中数据端接P0口,转换后的电压数据存入R1。
VOLT: MOV P0,#0FFHSETB INTCLR CSCLR WRSETB RDNOPNOPSETB WRCLR RDJB INT,$MOV R1,P0SETB CSRET转换后的电压数据十进制调整:DAVOL:MOV A,R1MOV B,#100DIV ABRL AMOV 3AH,A ;整数存入3AHMOV A,BMOV B,#10DIV ABRL ACLR CMOV 3BH,ASUBB A,#10JC DAV1INC 3AHMOV 3BH,A ;小数第一位存入3BHDAV1: MOV A,BRL ACLR CMOV 3CH,ASUBB A,#10JC DAV2INC 3BHMOV 3CH,A ;小数第二位存入3CHDAV2: RET电压转换完成及数据处理后,只要将3AH、3BH、3CH中的数据依次显示出来就可以了,注意显示完3AH后要接着显示小数点。
08ADC0804的应用

8.3
ADC0804
ADC0804
ADC0804的引脚图
ADC0804 1 2 3 4 5 6 7 8 9 10 CS RD WR CLKIN INTR VIN(+) VIN(-) AGND VREF/2 DGND VCC(VREF) CLKR DB0(LSB) DB1 DB2 DB3 DB4 DB5 DB6 DB7(MSB) 20 19 18 17 16 15 14 13 12 11 18 17 16 15 14 13 12 11 19 4 DB0(LSB) DB1 DB2 DB3 DB4 DB5 DB6 DB7(MSB) CLKR CLKIN VCC(VREF) CS RD WR INTR VIN(+) VIN(-) VREF/2 AGND DGND 20 1 2 3 5 6 7 9 8 10
S1
S2
S3
G0
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
G1
GS S
G2
G3
G4 A2 G5 A1 G6
1 2 3
A0 A1 A2 74HC138
Y0 Y1 Y2 Y3 Y4
15 14 13 12 11 10 9 7
Y4 A2 A1 A0
Y5 A2 A1 A0 Y6 A2 A1 A0
10
4、满刻度误差:满刻度误差又称为增益误差。ADC的满 刻度误差是指满刻度输出数码所对应的实际输入电压与 理想输入电压之差。 5、线性度:线性度有时又称为非线性度,它是指转换器 实际的转换特性与理想直线的最大偏差。
6、绝对精度:在一个转换器中,任何数码所对应的实际 模拟量输入与理论模拟输入之差的最大值,称为绝对精 度。对于ADC而言,可以在每一个阶梯的水平中点进行 测量,它包括了所有的误差。 7、转换速率:ADC的转换速率是能够重复进行数据转换 的速度,即每秒转换的次数。而完成一次A/D转换所需 的时间(包括稳定时间),则是转换速率的倒数。
AD0804模数转换实验报告

FPGA实验报告题目:ADC0804并行A/D实验班级:姓名:张俊卿学号:指导教师:张文旭日期:2014.04.25ADC0804实验报告一.实验原理1.1 输入模拟量转数字量实验原理本实验要求利用ADC0804实现输入模拟量到数字量的转换,并将转换结果在数码管上输出。
由已知电路得ADC0804的输入模拟电压用一个滑动变阻器对电源分压得到,它的8位输出AD0~AD7与FPGA的8个管脚相连,即input [7:0] data。
而data就是数码管的动态显示数据。
通过循环扫描,使数码管正确的显示出data的十进制数形式。
以下为实验箱内ADC0804与FPGA的连接关系,图2.ADC0804与FPGA连接图二.实验应用的器件分析2.1 ADC0804原理ADC0804是8位全MOS中速逐次逼近式A/D转换器,片内有三态数据输出锁存器,可以和单片机直接接口。
单通道输入,转换时间大约100us。
ADC0804转换时序是:当CS=0许可进行A/D转换。
WR由低到高时,A/D开始转换,一次转换共需要66-73个时钟周期。
CS与WR同时有效时启动A/D转换,转换结束产生INTR信号(低电平有效),可供查询或者中断信号。
在CS和RD的控制下可以读取数据结果。
ADC0804 为一只具有20引脚8位CMOS 连续近似的A/D 转换器,其规格如下:(1) 高阻抗状态输出(2) 分辨率:8 位(0~255)(3) 存取时间:135 ms(4) 转换时间:100 ms(5) 总误差:-1~+1LSB(6) 工作温度:ADC0804C为0度~70度;ADC0804L为-40 度~85 度(7) 模拟输入电压范围:0V~5V(8) 参考电压:2.5V(9) 工作电压:5V(10) 输出为三态结构1. 接脚说明见图1:2. PIN1 (CS ):Chip Select,与RD、WR 接脚的输入电压高低一起判断读取或写入与否,当其为低位准(low) 时会active。
A D转换器ADC08

A D转换器ADC0804如图,为单片机AD转换器的一种:ADC0804单片集成A/D转换器。
它采用CMOS工艺20引脚集成芯片,分辩率为8位,转换时间为100µs,输入电压范围为0~5V。
芯片内具有三态输出数据锁存器,可直接接在数据总线上。
各引脚名称及作用如下:VIN(+),VIN(-)——两模拟信号输入端,用以接收单极性、双极性和差模输入信号。
DB7~DB0——具有三态特性数字信号输出口。
AGND——模拟信号地。
DGND——数字信号地。
CLK——时钟信号输入端。
CLKR——内部时钟发生器的外接电阻端,与CLK端配合可由芯片自身产生时钟脉冲,其频率为1/(1.1RC)。
CS#---片选信号输入端,低电平有效,一旦CS#有效,表明A/D转换器被选中,可启动工作。
WR#---写信号输入,低电平启动A/D转换。
RD#---读信号输入,低电平输出端有效。
INTR#---A/D转换结束信号,低电平有效表示本次转换已完成。
VREF/2---参考电平输入,决定量化单位。
VCC---芯片电源5V输入。
打开ADC0804的数据手册,我们可以看到以下典型的电路接法:我们可以用仿真软件画出来:接下来,我们分析一下上图的工作原理:①ADC0804的片选端CS连接U2锁存哭的Q7输出端,我们可通过控制锁存器来控制CS,这样接的原因是TX-1C实验板扩展的外围太多,没有多余的I/O口独立控制ADC0804的CS 端,所以选择U2。
②VIN(+)接电位器的中间滑动端,VIN(-)接地,因为这两端可以输入差分电压,即它可测量VIN(+)与VIN(-)之间的电压,当VIN(-)接地时,VIN(+)端的电压即为ADC0804的模拟输入电压。
VIN(+)与电位器之间串联一个10kΩ电阻,目的是限制流入VIN(+)端的电流,防止电流过大而烧坏A/D芯片,当用短路帽短接插针ADIN后,电位器的中间滑动端便通过电阻R12与VIN(+)连接,此时调节电位器的旋钮,其中间滑动端的电压便在0~VCC变化,进而ADC0804的数字输出端也在0x00~0xFF 变化。
ADC0804最完整资料(内含驱动程序)

试验 模拟/数字转换芯片ADC0804的使用1、实验目的1.了解并测试模/数芯片ADC0804性能。
性能。
2.学习A/D 芯片ADC0804的接线和转换的基本原理。
2、试验内容2.1 模拟/数字转换的一些背景知识介绍模拟模拟//数字转换就是我们通常所说的A/D 转换,它将输入的模拟信号转换,它将输入的模拟信号((如电压如电压))转换成控制芯片转换成控制芯片((如单片机,如单片机,ARM)ARM)ARM)所能识别的二进制形式,然后经过运算,既可所能识别的二进制形式,然后经过运算,既可以还原出输入模拟信号的值。
以还原出输入模拟信号的值。
A/D 转换是一种非常重要的技术手段,是单片机等控制芯片与外界信号的接口部分,图1给出了一种常用的嵌入式设计模式。
A/D 转换芯片(如ADC0804)模拟电路处理器芯片(如51单片机) 显示(如八段数码管,LCD ,上位机软件)外界信号(如声音,血糖浓度,温度)电压值二进制形式控制信号传感器 电压值图1:一种常用的基于A/D 芯片的嵌入式设计模式由图1可见,这种设计模式包含以下几个环节。
可见,这种设计模式包含以下几个环节。
外界信号:外界信号的范围十分广泛,外界信号的范围十分广泛,自然界的一切信号,自然界的一切信号,自然界的一切信号,比如声音,比如声音,比如声音,温度甚至温度甚至是血糖浓度等都可以规类为外界信号。
是血糖浓度等都可以规类为外界信号。
传感器:因为大多数外界信号都不是电信号,因为大多数外界信号都不是电信号,因此需要通过各种传感器将这些外因此需要通过各种传感器将这些外界信号转换成电信号,例如:通过热电耦可以将温度转换成一个电压值。
模拟电路:设计模拟电路的原因主要有以下两点设计模拟电路的原因主要有以下两点1.由于外界信号的复杂性,使得传感器直接输出的电信号可能会存在一些问题(如不稳定),这些不稳定信号如果直接送到A/D 芯片进行采样,则最终结果可能使得最后的显示值来回乱跳,果可能使得最后的显示值来回乱跳,而无法确定待测的外界信号到底是多少。