单片机与AD的连接

上传人:功*** 文档编号:248597574 上传时间:2024-10-24 格式:PPT 页数:24 大小:688KB
返回 下载 相关 举报
单片机与AD的连接_第1页
第1页 / 共24页
单片机与AD的连接_第2页
第2页 / 共24页
单片机与AD的连接_第3页
第3页 / 共24页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第11章,MCS-51,与,A/D,转换器的接口,目的与要求:,1、了解,A/D,转换的原理,2、掌握0809的应用。,11.2.2,MCS-51,与,ADC 0809(,逐次比较型)的接口,1. ADC0809,引脚及功能,逐次比较式8路模拟输入、8位输出的,A/D,转换器。,引脚如图,。,共28脚,双列直插式封装。主要引脚功能如下:,(1),IN0,IN7,:,8路模拟信号输入端。,(2),D0,D7:,8位数字量输出端。,(3),C,、B,、A:,控制8路模拟通道的切换,,C、B、A=,000,111,分别对应,IN0,IN7,通道。,(4),OE、START、CLK,:,控制信号端,,OE,为输出允许端,,START,为启动信号输入端,,CLK,为时钟信号输入端。,V,R,(+),和,V,R,(-),:,参考电压输入端。,2.,ADC0809,结构及转换原理,结构如图11-15。,0809完成1次转换需100,s,左右,可对0,5,V,信号进,行转换。,2.MCS-51,与,ADC0809,的接口,单片机如何来控制,ADC,?,首先用指令选择0809的一个模拟输入通道,当执行,MOVX DPTR,A,时,单片机的,WR,*,信号有效,产生一个启动信号给0809的,START,脚,对选中通道转换。,转换结束后,0809发出转换结束,EOC,信号,该信号,可供查询,也可作为向单片机发出的中断请求信号;当,执行指令:,MOVX A,DPTR,,单片机发出,RD,*,信号,加到,OE,端高电平,把转换完毕的数字量读到,A,中。,查询和中断控制两种工作方式。,(1)查询方式,0809,与8031单片机的接口如图11-16。,ALE,信号经,D,触发器二分频作为时钟信号,如时钟,频率为6,MHz,,则,ALE,脚的输出频率为1,MHz,,二分频后为500,kHz,,符合,0809,对时钟频率的要求。,0809,具有输出三态锁存器,8位数据输出引脚可直,接与数据总线相连。,地址译码引脚,C、B、A,分别与地址总线,A2、A1、A0,相连,以选通,IN0,IN7,中的一个。,P2.7(A15),作为片,选信号,在启动,A/D,转换时,由,WR,*,和,P2.7,控制,ADC,的地,址锁存和转换启动,由于,ALE,和,START,连在一起,因此,0809,在锁存通道地址的同时,启动并进行转换。,在读取转换结果时,用低电平的读信号和,P2.7,脚,经,1,级或非门后,产生的正脉冲作为,OE,信号,用以打,开三态输出锁存器,。,下面程序采用软件延时的方式,对8路模拟信号轮,流采样一次,并依次把结果转储到数据存储区的转换,程序。,MAIN:MOV R1,#data;,置数据区首地址,MOV DPTR,#7FF8H;,端口地址送,DPTR,P2.7=0,,;,且指向通道,IN0,MOVR7,#08H;,置转换的通道个数,LOOP: MOVX DPTR,A ;,启动,A/D,转换,MOVR6,#0AH;,软件延时,等待转换结束,DELAY: NOP,NOP,NOP,DJNZR6,DELAY,MOVXA,DPTR;,读取转换结果,MOVR1,A;,存储转换结果,INCDPTR;,指向下一个通道,INCR1;,修改数据区指针,DJNZR7,LOOP;,8,个通道全采样完否?未完则继续,(2)中断方式,只需将图11-16中的,EOC,脚经一非门连接到8031的,INT1,*,脚即可。转换结束时,,EOC,发出一个脉冲向单片,机提出中断申请,单片机响应中断请求,由外部中断,1的中断服务程序读,A/D,结果,并启动0809的下一次转,换,外中断1采用跳沿触发。,程序如下:,INIT1: SETB IT1,;,外部中断1初始化编程,SETB EA,;,CPU,开中断,SETBEX1,;,选择外中断为跳沿触发方式,MOVDPTR,#7FF8H;,端口地址送,DPTR,MOVA,#00H ;,MOVXDPTR,A;,启动0809对,IN0,通道转换, ;,完成其他的工作,中断服务程序:,PINT1: MOV DPTR,#7FF8H ;,A/D,结果送内部,RAM,单元30,H,MOVXA,DPTR,MOV30H,A,MOVA,#00H;,启动0809对,IN0,的转换,MOVXDPTR,A;,RETI,3,、应用实例,例1,:,利用,ADC0809,作,A,D,转换器,电位器提供模拟量输入,编制程序,将模拟量转换成数字量,存入单片机内部,RAM 74H,单元中。,XTAL1,XTAL2,RST,Vcc,C1,C2,X,C3,1K,8.2K,+5V,+5V,AT89C51,GND,Vss,GND,EA,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,WR,ALE,RD,P2.6,图,2,:,8051,与,AD0809,的连线图( 0809查询方式),ADDA,OE,START,ALE,+,+,+,RD,WR,CS,EOC,EOC,CLOCK,CLOCK,ADDB,ADDC,IN0,IN7,A,B,C,图6 实验室,ADC,单元原理图,AD0809,D0,D7,D0,D1,D2,D3,D4,D5,D6,D7,D0,D1,D2,模入,系统板,0809地址为:,P2.6,为低电平,即,BFFFH,MOV DPTR , #0BFFFH,MOV A , #7,MOVX DPTR , A ;,启动0809的7#通道,LCALL DELAY1MS,MOVX A , DPTR ;,读取0809的7#通道转换结束的数据,MOV 74H , A ;,暂存读入的值,LJMP ADC1 ;,循环采样,DELAY1MS:MOV R7 , #0FFH,DJNZ R7 , $,RET,ADC1:,AD,转换程序( 查询方式),XTAL1,XTAL2,RST,Vcc,C1,C2,X,C3,1K,8.2K,+5V,+5V,AT89C51,GND,Vss,GND,EA,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,WR,ALE,RD,P2.6,图,2,:,8051,与,AD0809,的连线图( 0809中断方式,),ADDA,OE,START,ALE,+,+,+,RD,WR,CS,EOC,EOC,CLOCK,CLOCK,ADDB,ADDC,IN0,IN7,A,B,C,图6 实验室,ADC,单元原理图,AD0809,D0,D7,D0,D1,D2,D3,D4,D5,D6,D7,D0,D1,D2,模入,系统板,0809地址为:,P2.6,为低电平,即,BFFFH,INT0,主程序,ORG 0000H,LJMP CC1,ORG 0003H,LJMP CCC1,CC1:MOV DPTR , #0BFFFH,MOV A , #7,MOVX DPTR , A,;,启动0809的7#通道,AD,转换程序( 中断方式),外部中断0 ,中断程序,CCC1: MOV DPTR , #0BFFFH,MOVX A , DPTR,;,读取0809的7#通道转换结束的数据,MOV 74H , A ;,暂存读入的值,RET,应用实例,例3,:(,AD,与数码管动态显示综合),利用,ADC0809,作,A,D,转换器,电位器提供模拟量输入,编制程序,将模拟量转换成数字量,通过数码管显示出来。,要求数码管左,2,位一直显示,89两位数字,数码管右2位显示采样到的数字量。,XTAL1,XTAL2,RST,Vcc,C1,C2,X,C3,1K,8.2K,+5V,+5V,AT89C51,GND,Vss,GND,EA,P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,WR,ALE,RD,P2.6,图,2,:,8051,与,8255,的连线图,ADDA,OE,START,ALE,+,+,+,RD,WR,CS,EOC,EOC,CLOCK,CLOCK,ADDB,ADDC,IN0,IN7,A,B,C,实验室,ADC,单元原理图,AD0809,D0,D7,D0,D1,D2,D3,D4,D5,D6,D7,D0,D1,D2,模入,系统板,CS,RD,WR,A0,A1,锁存器,82,55,D0,D7,P2.7,A,B,C,D,E,F,G,DP,SN7407,4,个共,阴,极数码管,Y1,X1,5V,0,1,2,3,4,5,6,7,4.7K*4,(,2,片),8,9,A,B,C,D,E,F,SN7407,Y2,Y3,Y4,X2,X3,X4,5V,8255芯片与4个数码管接线图,4.7K*8,PA0,PA3,8255,PC0,PC3,0,1,2,3,0,2,3,1,PB0,PB7,ORG 0000H,START: MOV A,#81H,;8255,的,PB、 PA,口输出,PC,口输,入,方式0,MOV DPTR,#7FFFH,;8255,控制字地址,MOVX DPTR,A,;,PA,为输入状态,,PB、PC,为输出状态,MOV 70H,#8,MOV 71H,#9,MOV 72H,#10H,MOV 73H,#10H,MAIN:,LCALL DIR,;,显示程序,LCALL ADCON ; AD,转换子程序,LJMP MAIN,MOV DPTR , #0BFFFH,MOV A , #7,MOVX DPTR , A ;,启动0809的7#通道,DELAY1MS,MOVX A , DPTR ;,读取0809的7#通道转换结束的数据,MOV 74H, A ;,暂存读入的值,ANL A , #0FH,MOV 73H , A,MOV A , 74H,ANL A , #0F0H,SWAP A,MOV 72H , A,RET,把采样到的数据送入显示单元准备显示,ADCON:,AD,转换子程序,4,位数码管动态显示子程,序,:,DIR: MOV R0,70H;,置缓冲器指针初值,MOV R3,0FEH;,位选码的初值送,R3,MOV A,R3,LD0: MOV DPTR,7FFCH;,位选码,PA,口(,PA.0,位),;,最右边,LED,亮,MOVX DPTR,A,MOV A,R0 ;,显示数据,A,MOV DPTR,,,#DSEG,MOVC A,ADPTR ;,根据显示数据来查表取段码,DIR1:,MOV DPTR,,,#7FFDH,MOVX DPTR,A ;,段码8,255 PB,口,ACALL DL1ms ;,该位显示1,ms,INC R0 ;,指针指向下一个数据单元,MOV A,R3 ;,位选码送入,A,中,JNB Acc.3,LD1 ;,判断是否扫描到最左边的,;,LED,,如到最左边则返回,RL A ;,位选码向左移一位,准备让,; 左边的下一位,LED,亮,MOV R3,A ;,位选码,送,R3,中保存,LJMP LD0 ;,LD1: RET ;,DSEG: DB 3FH,06H,5BH,4FH,66H,6DH ;,共阴极段码表,DB 7DH,07H,7FH,6FH,77H,7CH,DB 39H,5EH,79H,71H,00H,END,DL1ms: MOV R7,02H;,延时1,ms,子程序,DL: MOV R6,248,DL6: DJNZ R6,DL6,DJNZ R7,DL,RET,NOP,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


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

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


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