单片机AD模数转换实验报告

合集下载

单片机ad实验报告

单片机ad实验报告

单片机ad实验报告
单片机AD实验报告
实验目的:
本次实验旨在通过单片机的AD(模拟-数字)转换功能,将模拟信号转换为数字信号,并通过单片机进行处理和显示,以加深对单片机AD转换原理和应用的理解。

实验器材:
1. 单片机开发板
2. 模拟信号发生器
3. 示波器
4. 连接线
5. 电脑
实验步骤:
1. 连接模拟信号发生器和单片机开发板,设置模拟信号发生器输出一个正弦波信号。

2. 在单片机开发板上编写程序,配置AD转换功能,将模拟信号转换为数字信号。

3. 将数字信号通过串口传输到电脑上,并用示波器观察数字信号的波形。

4. 在电脑上编写程序,对接收到的数字信号进行处理和显示。

实验结果:
经过实验,成功将模拟信号转换为数字信号,并通过单片机进行处理和显示。

在示波器上观察到了数字信号的波形,验证了AD转换的准确性和稳定性。


电脑上也成功对接收到的数字信号进行了处理和显示,进一步验证了单片机AD 转换功能的有效性。

实验总结:
通过本次实验,深入了解了单片机AD转换的原理和应用。

AD转换是单片机重要的功能之一,对于模拟信号的采集和处理具有重要意义。

在实际应用中,可以通过单片机AD转换功能,实现各种类型的模拟信号的数字化处理,为各种电子设备的控制和监测提供了技术支持。

通过本次实验,对单片机AD转换功能有了更深入的理解和掌握,为今后的电子技术应用奠定了坚实的基础。

单片机AD转换实验报告

单片机AD转换实验报告

单片机实验报告(五)实验名称:A/D转换姓名:张昊学号:110404247班级:通信2班时间:2013.12南京理工大学紫金学院电光系一、实验目的1、理解A/D转换的工作原理;2、理解掌握ADC0809的A/D转换原理和并行A/D转换器接口的编程方法;3、学习使用并行模/数转换芯片ADC0809进行电压信号的采集和数据处理。

二、 实验原理在设计A/D 转换器与单片机接口之前,往往要根据A/D 转换器的技术指标选择A/D 转换器。

A/D 转换器的主要技术指标-----量化间隔和量化误差是A/D 转换器的主要技术指标之一。

量化间隔可用下式表示,其中n 为A/D 转换器的位数:A/D 转换器芯片种类很多,按其转换原理可分为逐次比较式、双重积分式、量化反馈式和并行式A/D 转换器;按其分辨率可分为8~16位的A/D 转换器芯片。

目前最常用的是逐次逼近式和双重积分式。

A/D 转换器与单片机接口具有硬、软件相依性。

一般来说,A/D 转换器与单片机的接口主要考虑的是数字量输出线的连接、ADC 启动方式、转换结束信号处理方法以及时钟的连接等。

一个ADC 开始转换时,必须加一个启动转换信号,这一启动信号要由单片机提供。

不同型号的ADC ,对于启动转换信号的要求也不同,一般分为脉冲启动和电平启动两种:对于脉冲启动型ADC ,只要给其启动控制端上加一个符合要求的脉冲信号即可,如ADC0809、ADC574等。

通常用WR 和地址译码器的输出经一定的逻辑电路进行控制;对于电平启动型ADC ,当把符合要求的电平加到启动控制端上时,立即开始转换。

在转换过程中,必须保持这一电平,否则会终止转换的进行。

因此,在这种启动方式下,单片机的控制信号必须经过锁存器保持一段时间,一般采用D 触发器、锁存器或并行I/O 接口等来实现。

AD570、AD571等都属于电平启动型ADC 。

当ADC 转换结束时,ADC 输出一个转换结束标志信号,通知单片机读取转换结果。

模 数(A D)转换器(微机实验报告)

模 数(A D)转换器(微机实验报告)

模/数(A/D)转换器一、实验目的1、掌握ADC0809模数转换芯片与计算机的连接方法;2、了解ADC0809芯片的功能及编程方法;3、了解计算机如何进行数据采集。

二、实验设备1、PC机一台2、TPC-H微机接口实验系统实验箱一台3、连接导线若干三、实验内容1、实验电路原理图如图1。

ADC0809是8位A/ D转换器,每采集一次一般需100 s。

由于ADC0809 A/ D转换器转换结束后会自动产生EOC信号(高电平有效)。

通过实验台左下角电位器RW1输出0~5V直流电压送入ADC0809通道0(IN0),利用debug的输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与转换后数字的关系。

启动IN0开始转换: O 298, 0读取转换结果: I 298图1 模数转换电路2、编程采集IN0输入的电压,在屏幕上显示出转换后的数据(用16进制数)。

3、将JP3的1、2短接,使IN1处于双极性工作方式,并给IN1输入一个低频交流信号(幅度为±5V),编程采集这个信号数据并在屏幕上显示波形。

四、编程提示1、ADC0809的IN0口地址为298H,IN1口地址为299H。

2、IN0单极性输入电压与转换后数字的关系为:其中Ui为输入电压,UREF为参考电压,这里的参考电压为PC机的+5V电源。

3、一次A/D转换的程序可以为MOV DX,口地址OUT DX,AL ;启动转换;延时IN AL,DX ;读取转换结果放在AL五、参考流程图图2 流程图1图3 流程图2六、实验源程序code segmentassume cs:codestart:mov dx,298h ;启动A/D转换器out dx,almov cx,0ffh ;延迟delay:loop delayin al,dx ;从A/D转换器输入数据mov bl,al ;将Al保存到BLmov cl,4shr al,cl ;将AL右移四位call disp ;将显示子程序显示其高四位 mov al,bland al,0fhcall disp ;调显示子程序显示其低四位mov ah,02mov dl,20h ;加回车符int 21hpush dxmov ah,06h ;判断是否有键按下mov dl,0ffhint 21hpop dxje start ;若没有转startmov ah,4ch ;退出int 21hdisp proc near ;显示子程序mov dl,alcmp dl,9 ;比较DL是否大于9jle ddd ;若不大于则为“0”-“9”,加30h为其ASCⅡ码 add al,7 ;否则为“A”-“F”,再加7ddd:add dl,30h ;显示mov ah,0hint 21hretdisp endpcode endsend七、实验总结通过实验,掌握ADC0809模数转换芯片与计算机的连接方法;了解ADC0809芯片的功能及编程方法;了解计算机如何进行数据采集。

单片机AD模数转换实验报告

单片机AD模数转换实验报告

单片机AD模数转换实验报告一、实验目的和要求1、掌握单片机与ADC0809的接口设计方法。

2、掌握Proteus软件与Keil软件的使用方法。

二、设计要求。

1、用Proteus软件画出电路原理图,在单片机的外部扩展片外三总线,并通过片外三总线与0809接口。

2、在0809的某一模拟量输入通道上接外部模拟量。

3、在单片机的外部扩展数码管显示器。

4、分别采用延时和查询的方法编写A/D 转换程序。

5、启动A/D转换,将输入模拟量的转换结果在显示器上显示。

三、电路原理图。

图1、电路仿真图四、实验程序流程框图和程序清单。

1、查询法:ORG 0000HSTART: LJMP MAINORG 0100HMAIN: MOV SP, #2FH NT: MOV DPTR, #0FF78H MOVX @DPTR, A LOOP: JB P3.3, LOOP MOVX A, @DPTR MOV B, #51 DIV AB MOV R0, A MOV A, B MOV B, #5 DIV AB MOV R1, A MOV R2, B LCALL DIR SJMP NT DIR: MOV R7, #0 SJMP LOOP1 BH: MOV A, R1 MOV R2, A LOOP1: MOV DPTR, #WK MOV A, R7 MOVC A, @A+DPTR MOV P2, A MOV DPTR, #DK MOV A, R2 MOVC A, @A+DPTR MOV P1, A LCALL DELAY INC R7 CJNE R7, #2, BH MOV DPTR, #WK MOV A, R7 MOVC A, @A+DPTR MOV P2, A MOV DPTR, #DK MOV A, R0 MOVC A, @A+DPTR ANL A, #7FH MOV P1, A LCALL DELAY RET DELAY: M OV R5, #01H DL1: MOV R4, #8EH DL0: MOV R3, #02H DJNZ R3, $ DJNZ R4, DL0 DJNZ R5, DL1 RET WK: DB 10H DB 20H DB 40H DK: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ENDdisplay 送百分位字符代码送位选信号延时1ms 送十分位字符代码送位选信号延时1ms 送个位及小数点字符代码送位选信号延时1ms 熄灭第四位数码管延时1ms 返回display 送百分位字符代码送位选信号延时1ms 送十分位字符代码送位选信号延时1ms 送个位及小数点字符代码送位选信号延时1ms 熄灭第四位数码管延时1ms 返回2、延时法:ORG 0000H START: LJMP MAIN ORG 0100H MAIN: MOV SP, #2FH LOOP: MOV DPTR, #0FF78H MOVX @DPTR, A LCALL DELAY MOVX A, @DPTR MOV B, #51 DIV AB MOV R0, A MOV A, B MOV B, #5 DIV AB MOV R1, A MOV R2, B LCALL DIR SJMP LOOP DIR: MOV R7, #0 SJMP LOOP1 BH: MOV A, R1 MOV R2, A LOOP1: MOV DPTR, #WK MOV A, R7 MOVC A, @A+DPTR MOV P2, A MOV DPTR, #DK MOV A, R2 MOVC A, @A+DPTR MOV P1, A LCALL DELAY INC R7 CJNE R7, #2, BH MOV DPTR, #WK MOV A, R7 MOVC A, @A+DPTR MOV P2, A MOV DPTR, #DK MOV A, R0 MOVC A, @A+DPTR ANL A, #7FH MOV P1, A LCALL DELAY RET DELAY: M OV R5, #01H DL1: MOV R4, #8EH DL0: MOV R3, #02H DJNZ R3, $ DJNZ R4, DL0 DJNZ R5, DL1 RET WK: DB 10H DB 20H DB 40H DK: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H开始启动AD 延时从AD中取数据数据处理结束调显示子函数END五、实验结果。

单片机ADC实验报告

单片机ADC实验报告

ADC实验报告1.实验任务利用单片机STC89C52与ADC0809设计一个数字电压表,能够测量0-5V之间的直流电压值,四位数码显示。

2.现有元件模数转换器ADC0804,STC89C52单片机,两个共阳极数码管。

3.硬件设计3.1模数转换器ADC0809与单片机STC89C52的连接(1)ADC0809规格及引脚分配图如下图3-1所示:(2)STC89C52各个引脚分布如下图3-2所示:图3-1 ADC0809引脚图图3-2 STC89C52引脚图(3) 硬件连线(a) 把“单片机系统”区域中的P3.0与”模数转换模块ADC0809“区域中的ST端子用导线相连接。

(b) 把“单片机系统”区域中的P3.1与”模数转换模块ADC0809“区域中的ALE端子用导线相连接。

(c) 把“单片机系统”区域中的P3.2与”模数转换模块ADC0809“区域中的OE端子用导线相连接。

(d) 把“单片机系统”区域中的P3.6与”模数转换模块ADC0809“区域中的EOC端子用导线相连接。

(e) 把“单片机系统”区域中的P3.7与”模数转换模块ADC0809“区域中的CLK端子用导线相连接。

(f) 把“模数转换模块ADC0809”区域中的ADDA、ADDB、ADDC端子用导线连接到单片机的VCC端子上。

把“模数转换模块ADC0809”区域中IN7与外接输入电压相连。

(g) 把“单片机系统”区域中的P2.0-P2.7连接到“模数转换模块ADC0809”区域中D0D1D2D3D4D5D6D7端子上。

(h) 把“单片机系统”区域中的P1.0-P1.7连接到“数码管”区域中ABCDEFG端子上。

把“单片机系统”区域中的P0.0-P0.1连接到“数码管”区域中12端口。

4. 电路原理图图4 电路原理图 5、程序设计流程图Y N开始 启动前准备初始化INTO=1?开始转换 延时 取转换后的数值 将数值送显示结束6. C语言源程序#include<reg52.h>sbit ALE = P3^1;sbit ST = P3^0;sbit EOC = P3^2;sbit OE = P3^6;sbit CLK = P3^7;sbit wexuan1=P0^0;sbit wexuan2=P0^1;//sbit IN1 = P0^5;//sbit IN2 = P0^6;//sbit IN3 = P0^7;unsigned int code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //段码表unsigned int n=0,flag1=1;flag=1,ad_data,num1=0,num2=0;void delay(xms){unsigned int x,y;for(x=xms;x>0;x--)for(y=110;y>0;y--);}void display()//2位数码管显示{float a;a=(float)ad_data/256*5*1000;num1=(int)a/1000;num2=(int)a/100-num1*10;P1=table[num1];wexuan1=0;delay(1);wexuan1=1;P1=0x00;P1=0x80; //小数点wexuan1=0;delay(1);wexuan1=1;P1=0x00;P1=table[num2];wexuan2=0;delay(1);wexuan2=1;P1=0x00;}void init(){ST = 0;ALE = 0;OE = 0;CLK = 0;// _EOC= 1;TMOD=0x12;IP=0x09;TH0=(65536-22)/256;TL0=(65536-22)%256;TH1=(65536-45872)/256;TL1=(65536-45872)%256;EA=1;ET0=1;ET1=1;TR0=1;TR1=1;EX0=1;//打开外部中断IT0=1;//从高到低的负跳变有效P0=0x00;}void start() //int a,int b,int c) //选择通道{// IN1 = a;IN2 = b;IN3 = c;ALE = 0;ALE = 1;ST = 0;ST = 1;ALE = 0;ST = 0;display();delay(10);}int read()unsigned int dat;P2 = 0xff;OE = 1;display();dat = P2;OE = 0;return (dat);}void main(){init();while(1){ ST = 0;ST = 1;ST = 0;if(n==20){flag=1;// display();// start();// while(EOC==0);//转换结束(EOC=1)读出数据后显示// _EOC=0;ad_data=read();flag=0;display();//n = 0;// display();// _EOC = 1;}display();//显示的是if中的电压值}}void INTR_0() interrupt 0while(1){ad_data = read();flag = 0;display();}}void timer0() interrupt 1 // 输出500kHz 方波{CLK=~CLK;}void timer1() interrupt 3{TH1=(65536-45872)/256;TL1=(65536-45872)%256;n++;flag1=0;}7、实验成果接线图。

试验五AD、DA转换实验

试验五AD、DA转换实验

试验五. A/D、D/A转换实验一、实验目的1. 学习理解模/数信号转换和数/模转换的基本原理。

2. 掌握模/数转换芯片ADC0804和数/模转换芯片DAC0832的使用方法。

二、实验设备TD-PITE实验装置(带面包板)一套,实验用转换芯片两片,±12V稳压电源一台、运放两片、温度传感器、电位器(5.1KΩ)一个、电阻若干,面包板用导线若干,排线若干,万用表一个。

三、实验内容(1)设计A/D转换电路,采集可调电阻的输出电压。

连+5V电源,调节后的输出电压作为ADC0804的模拟输入量,然后进行A/D转换,转换结果由发光二极管上显示。

请填写实验数据表格:(2)将LM35 精密摄氏度温度传感器连+5V电源,输出电压直接作为ADC0804 的模拟输入量,然后进行A/D转换,转换结果经过计算得到摄氏度值放在内存变量上。

(多数温度传感器是针对绝对温度的,且线形较差。

LM35的输出电压与摄氏温度值成正比例关系,每10 mV 为 1 摄氏度。

)(3)设计D/A 转换,要求产生锯齿波、三角波、脉冲波,并用示波器观察电压波形。

四、实验原理1. 模数转换器ADC0804 简介ADC0804是用CMOS集成工艺制成的逐次比较型模数转换芯片。

分辨率为8位,转换时间为100μs,输入参考电压范围为0~5V。

芯片内有输出数据锁存器,与计算机连接时,转换电路的输出可以直接连接在CPU数据总线上。

图5.1 ADC0804引脚图启动信号:当CS#有效时,WR#可作为A/D转换的启动信号。

WR#高电平变为低电平时,转换器被清除;当WR#回到高时,转换正式启动。

转换结束:INTR#跳转为低电平表示本次转换已经完成,可作为微处理器的中断或查询信号。

RD#用来读A/D转换的结果。

有效时输出数据锁存器三态门DB0~DB7各端上出现8位并行二进制数码。

转换时钟:见下图,震荡频率为f CLK ≈ 1 / 1.1RC。

其典型应用参数为:R = 10KΩ,C = 150pF,f CLK≈ 640KHz,8位逐次比较需8×8 = 64个时钟周期,转换速度为100μs。

单片机实验(AD转换)

单片机实验(AD转换)

实验三 A/D、D/A转换实验一、实验目的1.熟悉DAC0832并行接口数模转换器和TLC2543串行接口模数转换器的基本原理和编程方法。

2.进一步熟悉单片机应用系统开发步骤和方法。

二、实验电路实验所用元件清单如下表所示:1. 串行A/D转换器TLC25432.并行D/A转换器DA0832三、相关知识(一)串行A/D转换器TLC25431. TLC2543的特性与引脚TLC2543是TI公司的TLC2543 12位串行A/D转换器,使用开关电容逐次逼近技术完成A/D转换过程。

由于是串行输入结构,能够节省80C51系列单片机的I/O资源,而且价格适中。

主要特点如下:●12位分辨率A/D转换器。

●在工作温度范围内10 s转换时间。

●11个模拟输入通道。

●3路内置自测试方式。

●采样率为66kbps。

●线性误差+1LSB(max)。

●有转换结束(EOC)输出。

●具有单、双极性输出。

●可编程的MSB或LSB前导。

●可编程的输出数据长度。

2. TLC2543的工作过程TLC2543的工作过程分为两个周期:I/O 周期和实际转换周期。

1)I/O周期I/O周期由外部提供的I/O CLOCK定义,延续8、12或16个时钟周期,决定于选定的输出数据长度。

器件进入I/O周期后同时进行两种操作。

(1)在I/O CLOCK的前8个脉冲的上升沿,以MSB前导方式从DA TA INPUT端输入8位数据流到输入寄存器。

其中前4位为模拟通道地址,控制14通道模拟多路器从11个模拟输入和3个内部自测电压中,选通一路送到采样保持电路,该电路从第4个I/O CLOCK脉冲的下降沿开始,对所选信号进行采样,直到最后一个I/O CLOCK脉冲的下降沿。

I/O周期的时钟脉冲个数与输出数据长度(位数)有关,输出数据长度由输入数据的D3、D2选择为8、12或16位。

当工作于12或16位时,在前8个时钟脉冲之后,DATA INPUT无效。

(2)在DATA OUT端串行输出8、12或16位数据。

实验六ADC模数转换实验

实验六ADC模数转换实验

实验六、ADC0809模数转换实验一、实验目的1、掌握ADC0809模数转换芯片与单片机的连接方法及ADC0809的典型应用2、掌握用查询的方法、中断方法完成模数转换程序的编写方法二、实验说明本实验使用ADC0809模数转换器,ADC0809是8通道8位CMOS逐次逼近式AD转换芯片,片内有模拟量通道选择开关及相应的通道锁存、译码电路、AD转换后的数据由三态锁存器输出,由于片内没有时钟需外接时钟信号,下图为芯片的引脚图各引脚功能如下:(1)IN0-IN7:八路模拟信号输入端(2)ADDA、ADDB、ADDC:三位地址译码输入端,八路模拟信号选择由这三个端口控制(3)CLOCK:外部时钟输入端(4)D0-D7:数字量输出端(5)OE:AD转换结果输出允许控制端,当OE为高电平时,允许AD转换结果从D0~D7端输出。

(6)ALE:地址锁存允许信号输入端。

八路模拟通道地址由A、B、C输入,在ALE 信号有效时将八路地址锁存。

(7)START:启动AD转换信号输入端,当START端输入一个正脉冲时,将进行AD 转换(8)EOC:AD转换结束信号输出端,当AD转换结束以后,EOC输出高电平。

(9)VREF(+)、VREF(-):正负基准电压输入端,基准正电压为+5V。

(10)VCC、GND:芯片的电源端和接地端。

三、实验步骤1、单片机最小应用系统1的P0口接AD转换的D0~D7,单片机最小应用系统1的Q0~Q7接AD转换的A0~A7,单片机最小应用系统1的WR、RD、P2.0、ALE、INT1分别连接AD转换的WR、RD、P2.0、CLOCK、INT1,AD转换的IN接+5V,单片机最小应用系统的P1口接LED灯。

2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。

3、打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加源程序,进行编译,直到编译无误。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、实验目的和要求
1、掌握单片机与ADC0809的接口设计方法。

2、掌握Proteus软件与Keil软件的使用方法。

二、设计要求。

1、用Proteus软件画出电路原理图,在单片机的外部扩展片外三总线,并通过片外三总线与0809接口。

2、在0809的某一模拟量输入通道上接外部模拟量。

3、在单片机的外部扩展数码管显示器。

4、分别采用延时和查询的方法编写A/D转换程序。

5、启动A/D转换,将输入模拟量的转换结果在显示器上显示。

三、电路原理图。

图1、电路仿真图
四、实验程序流程框图和程序清单。

1、 查询法:
ORG 0000H START: LJMP MAIN ORG 0100H MAIN: MOV SP, #2FH NT: MOV DPTR, #0FF78H MOVX @DPTR, A LOOP: JB P3.3, LOOP MOVX A, @DPTR MOV B, #51 DIV AB MOV R0, A MOV A, B MOV B, #5 DIV AB MOV R1, A MOV R2, B LCALL DIR SJMP NT DIR: MOV R7, #0 SJMP LOOP1 BH: MOV A, R1 MOV R2, A LOOP1: MOV DPTR, #WK MOV A, R7 MOVC A, @A+DPTR MOV P2, A MOV DPTR, #DK MOV A, R2 MOVC A, @A+DPTR MOV P1, A LCALL DELAY INC R7 CJNE R7, #2, BH MOV DPTR, #WK MOV A, R7 MOVC A, @A+DPTR MOV P2, A MOV DPTR, #DK MOV A, R0 MOVC A, @A+DPTR ANL A, #7FH MOV P1, A LCALL DELAY RET
DELAY: MOV R5, #01H
DL1: MOV R4, #8EH DL0: MOV R3, #02H DJNZ R3, $
DJNZ R4, DL0
DJNZ R5, DL1 RET WK: DB 10H DB 20H DB 40H DK: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
display 送百分位字符代码送位选信号延时1ms 送十分位字符代码送位选信号延时1ms 送个位及小数点字符代码
送位选信号延时1ms 熄灭第四位数码管
延时1ms 返回
DK: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
五、实验结果。

图2、仿真结果
六、实验总结。

由图4可知,设计要求2的内容已经成功完成;由图5可以看出要求3的内容已经成功完成。

通过这次实验,掌握了通过8255来扩展单片机的I/O口线,对8255已经有了充分的认识,以实践操作来验证理论知识,学到了很多东西。

七、思考题。

采用中断的方法编写A/D转换程序,完成实验要求
ORG 0000H
START: LJMP MAIN
ORG 0013H
LJMP INTT1
ORG 0100H
MAIN: MOV SP, #2FH
SETB EA
SETB EX1
MOV DPTR, #0FF78H
MOVX @DPTR, A
HERE: LJMP HERE
DISPLAY: MOV R7, #0
SJMP LOOP1
BH: MOV A, R1
MOV R2, A
LOOP1: MOV DPTR, #WK
MOV A, R7
MOVC A, @A+DPTR
MOV P2, A
MOV DPTR, #DK
MOV A, R2
MOVC A, @A+DPTR
MOV P1, A
LCALL DELAY
INC R7
CJNE R7, #2, BH
MOV DPTR, #WK
MOV A, R7
MOVC A, @A+DPTR
MOV P2, A
MOV DPTR, #DK
MOV A, R0
MOVC A, @A+DPTR
ANL A, #7FH
MOV P1, A
LCALL DELAY
RET
DELAY: MOV R5, #01H
DL1: MOV R4, #8EH
DL0: MOV R3, #02H
DJNZ R3, $
DJNZ R4, DL0
DJNZ R5, DL1
RET
INTT1: MOVX A, @DPTR
MOV B, #51
DIV AB
MOV R0, A
MOV A, B
MOV B, #5
DIV AB
MOV R1, A
MOV R2, B
LCALL DISPLAY
MOV DPTR, #0FF78H
MOVX @DPTR, A
RETI
WK: DB 10H,20H,40H
DK: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END
图3、思考题仿真结果。

相关文档
最新文档