第8章 AD转换器 单片机原理、接口及应用 课件

上传人:e****s 文档编号:243663011 上传时间:2024-09-28 格式:PPT 页数:40 大小:536KB
返回 下载 相关 举报
第8章 AD转换器 单片机原理、接口及应用 课件_第1页
第1页 / 共40页
第8章 AD转换器 单片机原理、接口及应用 课件_第2页
第2页 / 共40页
第8章 AD转换器 单片机原理、接口及应用 课件_第3页
第3页 / 共40页
点击查看更多>>
资源描述
标题,第二级,第三级,第四级,第五级,第8章 A/D转换器,*,泉州信息学院,第,*,页,第8章,A/D转换器,教学目的:,学习并行接口芯片,ADC0809,的使用与编程;,学习串行接口芯片,ADC0832,的使用与编程。,重点难点:,ADC0809,的时序及编程;,ADC0832,的时序及编程。,9/28/2024,1,A/D转换的功能是把模拟量电压转换为N位数字量。,设D为N位二进制数字量,UA为电压模拟量,UREF为参考电压,无论A/D或D/A,其转换关系为:,UA = DUREF / 2N,其中:D=D020+D121+ +DN-12N-1,A/D转换的根本概念,9/28/2024,2,A/D,转换器的主要性能指标,:,转换精度,。转换精度通常用分辨率和量化误差来描述。,分辨率,。分辨率,= UREF / 2,N,表示输出数字量变化一个相邻数码所需输入模拟电压的变化量。,N,为,A/D,转换的位数,,N,越大,分辨率越高,,习惯上分辨率常以,A/D,转换位数,N,表示。,量化误差,。量化误差是指零点和满度校准后,在整个转换范围内的最大误差。,转换时间,。指,A/D,转换器完成一次,A/D,转换所需时间。转换时间越短,适应输入信号快速变化能力越强。,9/28/2024,3,ADC0809是典型的8位8通道逐次逼近式A/D转换器,CMOS工艺。,8.1.1. ADC0809简介,内部逻辑结构,多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用一个A/D转换器进行转换。地址锁存与译码电路完成对A、B、C三个地址位进行锁存和译码,其译码输出用于通道选择,如表所示。,8.1 典型A/D转换器芯片ADC0809,9/28/2024,4,图,8-1 ADC0809,内部结构框图,9/28/2024,5,表通道选择表,C B A,选择的通道,0 0 0,0 0 1,0 1 0,0 1 1,1 0 0,1 0 1,1 1 0,1 1 1,IN0,IN1,IN2,IN3,IN4,IN5,IN6,IN7,8位A/D转换器是逐次逼近式,由控制与时序电路、逐次逼近存放器、树状开关以及256R电阻阶梯网络等组成。 输出锁存器用于存放和输出转换得到的数字量。,9/28/2024,6,1、根本特性参数,A/D转换的根本知识,转换时间和转换频率,A/D转换器完成一次模拟量变换为数字量所需时间,量化误差与分辨率,A/D转换器的分辨率是指转换器对输入电压微小变化响应能力的度量,习惯上以输出的二进制位或者BCD码位数表示。,转换精度,A/D转换器转换精度反映了一个实际A/D转换器在量化值上与一个理想A/D转换器进行模/数转换的差值,9/28/2024,7,图7.39 ADC0809 引脚图,2.,芯片引脚,9/28/2024,8,对ADC0809主要信号引脚的功能说明如下:,(1) IN7IN0:,8路模拟量输入通道。ADC0809对输入模拟量的要求主要有:信号单极性,电压范围05 V,假设信号过小还需进行放大。另外,在A/D转换过程中,模拟量输入的值不应变化太快,因此,对变化速度快的模拟量,在输入前应增加采样保持电路。,9/28/2024,9,(2) A、B、C:地址线。A为低位地址,C为高位地址,用于对模拟通道进行选择。,(3) ALE:地址锁存允许信号。在对应ALE上跳沿,A、B、C地址状态送入地址锁存器中。,(4)START:转换启动信号。START上跳沿时,所有内部存放器清0;START下跳沿时,开始进行A/D转换;在A/D转换期间,START应保持低电平。,(5)D7D0:数据输出线。其为三态缓冲输出形式,可以和单片机的数据线直接相连。,9/28/2024,10,(,6)OE:,输出允许信号,。其用于控制三态输出锁存器向单片机输出转换得到的数据。OE=0,输出数据线呈高电阻;OE=1,输出转换得到的数据。,(7)CLK:,时钟信号,。ADC0809的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚。通常使用频率为500kHz的时钟信号。,(8)EOC:,转换结束状态信号,。EOC=0,正在进行转换;EOC=1,转换结束。该状态信号既可作为查询的状态标志,又,可以作为中断请求信号使用。,9/28/2024,11,(9)VCC:+5 V电源。,(10)Vref:参考电源。参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准。其典型值为+5 VVref (+) =+5 V,Vref(-) =0 V,9/28/2024,12,8.1.2 ADC0809应用电路设计,9/28/2024,13,ADC0809,的工作流程,9/28/2024,14,ADC0809的工作流程如下图:,1输入3位地址,并使ALE=1,将地址存入地址锁存器中,经地址译码器译码从8路模拟通道中选通一路模拟量送到比较器。,2送START一高脉冲,START的上升沿使逐次逼近存放器复位,下降沿启动A/D转换,并使EOC信号为低电平。,3当转换结束时,转换的结果送入到输出三态锁存器,并使EOC信号回到高电平,通知CPU已转换结束。,4当CPU执行一读数据指令,使OE为高电平,那么从输出端D0D1读出数据。,9/28/2024,15,C语言编程:,#include ,#include ,/定义绝对地址访问,#define uchar unsigned char,#define IN0 XBYTE0x0000,/定义IN0为通道0的地址,static uchar data x8;,/定义8个单元的数组,存放结果,uchar xdata *ad_adr;,/定义指向通道的指针,uchar i=0;,9/28/2024,16,void main(void),IT0=1;,/初始化,EX0=1;,EA=1;,i=0;,ad_adr=,/指针指向通道0,*ad_adr=i;,/启动通道0转换,for (;) ;,/等待中断,9/28/2024,17,void int_adc(void) interrupt 0,/中断函数,xi=*ad_adr;,/接收当前通道转换结果,i+;,ad_adr+;,/指向下一个通道,if (i8),*ad_adr=i;,/8个通道未转换完,启动下一个通道返回,else,EA=0;EX0=0;,/8个通道转换完,关中断返回,9/28/2024,18,9/28/2024,19,补充 串行A/D,ADC0832及其接口电路,8位双输入串行A/D转换器;转换速度较高;单电源供电,功耗低15mw。,ADC0832 为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在05V之间。芯片转换时间仅为32S,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过DI 数据输入端,可以轻易的实现通道功能的选择。,9/28/2024,20,引脚及电,路接线,9/28/2024,21,1、引脚功能,VDD、VSS:电源接地端,VDD同时兼任UREF;,CS:片选端,低电平有效;,DI:数据信号输入端;,DO:数据信号输出端;,CLK:时钟信号输入端,要求低于600KHz;,CH0、CH1:模拟信号输入端双通道;,2、典型应用电路,P1.0片选CS;,TXD发送时钟信号输入ADC0832 CLK;,RXD与DI、DO端连接在一起。,9/28/2024,22,进行A/D转换,将CS使能端置于低电平并且保持低电平直到转换完全结束;,由处理器向芯片时钟输入端CLK 输入时钟脉冲;,DO/DI端那么使用DI端输入通道功能选择的数据信号。在第1 个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2 位数据用于选择通道功能,其功能项,见表1。,9/28/2024,23,编码,通道选择,CH0,CH1,00,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入,01,将CH0作为负输入端IN-,CH1 作,为正输入端IN+进行输入,10,只对CH0 进行单通道转换,11,只对CH1 进行单通道转换,9/28/2024,24,3、,串行A/D转换工作时序,9/28/2024,25,工作时序分为二个阶段:, 起始和通道配置,由CPU发送,从ADC0832 DI端输入;, A/D转换数据串行输出,由ADC 0832从DO端输出,CPU接收。,9/28/2024,26,程序范例,include #include intrins.h#define uint unsigned int#define uchar unsigned char,/ADC0832的引脚,sbit ADCS =P10;,/ADC0832 片选,sbit ADDI =P12;,/ADC0832 通道选择和初始化输入,sbit ADDO =P12;,/ADC0832 的数据输出,sbit ADCLK =P11;,/ADC0832 时钟信号,9/28/2024,27,unsigned char dispbitcode8=0xf7,0xfb,0xfd,/*0xfe,0xef,0xdf,0xbf,0x7f*/;,/位扫描,unsigned char dispcode11=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff;,/共阳数码管字段码,unsigned char dispbuf3;uint temp;uchar getdata;,/获取ADC转换回来的值,9/28/2024,28,void delayms(void),/12mhz delay 1.01ms, unsigned char x,y; x=10; while(x-) y=4; while(y-); ,9/28/2024,29,void display(void),/数码管显示函数, char k;for(k=0;k1),/拉低CLK端,形成下降沿3,ADDI=1;/,控制命令结束,_nop_(); _nop_(); dat=0;,9/28/2024,34,9/28/2024,35,for(i=0;i8;i+) dat|=ADDO;,/收数据,ADCLK=1; _nop_(); _nop_(); ADCLK=0;,/形成一次时钟脉冲,_nop_(); _nop_(); dat=1; if(i=7)dat|=ADDO; ,9/28/2024,36,for(i=0;i=1; ,9/28/2024,37,ADCS=“1;/拉低CS端 ADCLK=“0;/拉低CLK端 ADDO=“1;/拉高数据端,回到初始状态 dat=8; dat|=ndat; return(dat); /返回数据,9/28/2024,38,void main(void) while(1) getdata=Adc0832(0); temp=getdata*1.0/255*500;,/电压值转换,5V做为参考电压,分成256份,。 dispbuf0=temp%10;,/个位,dispbuf2=temp/10%10;,/十位,dispbuf1=temp/100;,/百位,display(); ,9/28/2024,39,THANK YOU VERY MUCH !,本章到此结束,,谢谢您的光临!,结束放映,返回本章首页,9/28/2024,40,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 幼儿教育


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!