实验报告课程名称:单片机原理及应用实验项目:A/D转换实验专业班级:姓名:学号:实验室号:实验组号:实验时间:批阅时间:指导教师:成绩:1沈阳工业大学实验报告(适用计算机程序设计类)专业班级:学号:姓名:实验名称:A/D转换实验1.实验目的:1、掌握A/D转换与单片机的接口方法。2、了解A/D芯片ADC0809转换性能及编程方法。2.实验内容:利用实验台上的ADC0809做A/D转换器,实验箱上的电位器提供模拟电压信号输入,编制程序,将模拟量转换成数字量,用数码管显示模拟量转换的结果。3.实验方案(程序设计说明)4.实验步骤或程序(经调试后正确的源程序)(见附件A)5.程序运行结果(见附件A)6.出现的问题及解决方法无2附件A沈阳工业大学实验报告(适用计算机程序设计类)专业班级:学号:姓名:实验步骤或程序:实验原理:A/D转换器大致有三类:一是双积分A/D转换器,优点是精度高,抗干扰性好,价格便宜,但速度慢;二是逐次逼近法A/D转换器,精度、速度、价格适中;三是并行A/D转换器,速度快,价格也昂贵。实验用的ADC0809属第二类,是八位A/D转换器。每采集一次需100us。ADC0809START端为A/D转换启动信号,ALE端为通道选择地址的锁存信号。实验电路中将其相连,以便同时锁存通道地址并开始A/D采样转换,故启动A/D转换只需如下两条指令:MOVDPTR,#PORTMOVX@DPTR,AA中为何内容并不重要,这是一次虚拟写。在中断方式下,A/D转换结束后会自动产生EOC信号,将其与8031CPU板上的INT0相连接。在中断处理程序中,使用如下指令即可读取A/D转换的结果:MOVDPTR,#PORTMOVXA,@DPTR实验步骤:1、0809的片选信号CS0809接CS0。2、电位器的输出信号AN0接0809的ADIN0。3、EOC接CPU板的INT0.程序框图:3参考程序:NAMET15;0809实验PORTEQU0CFA0HCSEGAT0000HLJMPSTARTCSEGAT4100HSTART:MOVDPTR,#PORT;启动通道0MOVX@DPTR,AMOVR0,#0FFHLOOP1:DJNZR0,LOOP1;等待中断MOVXA,@DPTRMOVR1,ADISP:MOVA,R1;从R1中取转换结果SWAPA;分离高四位和低四位ANLA,#0FH;并依次存放在50H到51H中MOV50H,AMOVA,R1ANLA,#0FHMOV51H,ALOOP:MOVDPTR,#0CFE9H;写显示RAM命令字MOVA,#90HMOVX@DPTR,AMOVR0,#50H;存放转换结果地址初值送R0MOVR1,#02HMOVDPTR,#0CFE8H;8279数据口地址DL0:MOVA,@R0ACALLTABLE;转换为显码MOVX@DPTR,A;送显码输出INCR0DJNZR1,DL04SJMPDEL1TABLE:INCAMOVCA,@A+PCRETDB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB7FH,6FH,77H,7CH,39H,5EH,79H,71HDEL1:MOVR6,#255;延时一段时间使显示更稳定DEL2:MOVR5,#255DEL3:DJNZR5,DEL3DJNZR6,DEL2LJMPSTART;循环END运行结果程序调试运行后,手调电位器,随着电位器的变化,看到数码管显示的数字电压值也在随之变化。