实验二模数和数模接口芯片应用 实验目的 1.了解MCS51系列单片机的中断系统 2.了解数模和模数转换电路的接口方法及相应程序设计方法; 3.了解数模和模数转换电路芯片的性能和工作时序; 4.掌握用示波器、信号源对单片机系统进行调试的方法 二、实验器材 PC机一台,爱迪克(AEDK)单片机在线仿真开发系统一台,MCS-51实验箱、 逻辑电路实验箱各一套,信号源、示波器、万用表各一台。 三、实验原理 1.Ms51单片机的中断系统 8031单片机有5个中断源:2个外部中断源INT0和INT1,分别由P32和P3.3引脚 输入:2个为片内定时器/计数器溢出中断TF0和TF1:1个为片内串行口的收/发中断RI。 与中断有关的专用寄存器有中断允许寄存器IE、中断优先级控制寄存器IP、控制寄 存器TCON等,它们的定义分别列于表2.1、2.2和2.5。 (1)中断允许寄存器IE 表2.1中断允许寄存器IE定义 DI EXI ETO EXO 串行通信定时器计外部中断定时器/计|外部中断 总中断 口中断数器1中断INT中断数器0中断INT0中断 允许位 允许位 允许位 允许位 允许位 允许位 其中,EA是总中断允许位。EA=0时,禁止一切中断;EA=1时,每个中断源是否被 允许取决于各自允许位设置:置1,表示允许该中断源中断;置0,表示屏蔽该中断。复 位后所有中断允许位均为0 (2)中断优先级寄存器IP 表22中断优先级寄存器IP定义 D7 D6 PTI PXI PTO PXO 串行口 定时器/计 外部中断1/定时器计 外部中断0 数器1
6 实验二 模数和数模接口芯片应用 一、 实验目的 1. 了解 MCS51 系列单片机的中断系统; 2. 了解数模和模数转换电路的接口方法及相应程序设计方法; 3. 了解数模和模数转换电路芯片的性能和工作时序; 4. 掌握用示波器、信号源对单片机系统进行调试的方法。 二、 实验器材 PC机一台,爱迪克(AEDK)单片机在线仿真开发系统一台,MCS-51实验箱、 逻辑电路实验箱各一套,信号源、示波器、万用表各一台。 三、 实验原理 1. MCS-51单片机的中断系统 8031 单片机有 5 个中断源:2 个外部中断源 INT0 和 INT1,分别由 P3.2 和 P3.3 引脚 输入;2 个为片内定时器/计数器溢出中断 TF0 和 TF1;1 个为片内串行口的收/发中断 RI。 与中断有关的专用寄存器有中断允许寄存器 IE、中断优先级控制寄存器 IP、控制寄 存器 TCON 等,它们的定义分别列于表 2.1、2.2 和 2.5。 (1)中断允许寄存器 IE 表 2.1 中断允许寄存器 IE 定义 D7 D6 D5 D4 D3 D2 D1 D0 EA / / ES ET1 EX1 ET0 EX0 总中断 允许位 串行通信 口中断 允许位 定时器/计 数器 1 中断 允许位 外部中断 INT1 中断 允许位 定时器/计 数器 0 中断 允许位 外部中断 INT0 中断 允许位 其中,EA 是总中断允许位。EA=0 时,禁止一切中断;EA=1 时,每个中断源是否被 允许取决于各自允许位设置:置 1,表示允许该中断源中断;置 0,表示屏蔽该中断。复 位后所有中断允许位均为 0。 (2)中断优先级寄存器 IP 表 2.2 中断优先级寄存器 IP 定义 D7 D6 D5 D4 D3 D2 D1 D0 / / / PS PT1 PX1 PT0 PX0 串行口 定时器/计 数器 1 外部中断 1 定时器/计 数器 0 外部中断 0
表22中标出与各中断源对应的优先级控制位,置1,表示该中断源是高优先级;置0 为低优先级。复位后各位均为0,所有中断的优先级是相同的。 8031的硬件结构仅支持一级中断嵌套,靠IP寄存器可以将中断优先级分为高、低两 级,它们遵从下面两条基本原则 1.低优先级中断可被高优先级中断所中断,反之不能。 2.一种中断(不论哪个优先级)一旦得到响应,与它同级的中断不能再中断它。 当同时收到几个同一优先级的中断请求时,哪一个请求得到服务,取决于内部的查询 顺序,相当于在每个优先级内,还存在另一辅助优先级结构。如表2.3。 表23同级优先级查询顺序 中断源 优先级 外部中断0 定时器汁计数器0溢出 外部中断1 定时器/计数器1溢出 串行口 低 在程序存储器中,各中断源的入口地址见表24 表24中断入口地址 中断源 口地址 外部中断INTO 0003H 定时器/计数器T0 000BH 外部中断INT1 0013H 定时器/计数器T1 001BH 串行口 0023H (3)控制寄存器TCON 表25TCON定义 定时器/计数器有关 外部中断有关 D7 TFI TRI TFO TRO EI ITI IEO ITO 定时器/定时器/定时器/定时器/外部沿触外部中断外部沿触|外部中断 计数器1计数器0计数器0发中断11触发类发中断00触发类 溢出标志运行控制溢出标志运行控制请求标志型控制请求标志型控制 TF1:当定时器/计数器1溢出时,由硬件置位,申请中断。进入中断服务程序 后被硬件自动清除。TF0类似于TF1 TR1:靠软件置位或淸除,置位时,启动定时器/计数器1工作,清除时,停止 工作。TR0类似于TR1 E1:检测到在INT1引脚上出现的外部中断信号的下降沿时,由硬件置位,请 求中断。进入中断服务程序后,被硬件自动清除。IE0类似于IE1
7 表 2.2 中标出与各中断源对应的优先级控制位,置 1,表示该中断源是高优先级;置 0, 为低优先级。复位后各位均为 0,所有中断的优先级是相同的。 8031 的硬件结构仅支持一级中断嵌套,靠 IP 寄存器可以将中断优先级分为高、低两 级,它们遵从下面两条基本原则: 1.低优先级中断可被高优先级中断所中断,反之不能。 2.一种中断(不论哪个优先级)一旦得到响应,与它同级的中断不能再中断它。 当同时收到几个同一优先级的中断请求时,哪一个请求得到服务,取决于内部的查询 顺序,相当于在每个优先级内,还存在另一辅助优先级结构。如表 2.3。 表 2.3 同级优先级查询顺序 中断源 优先级 外部中断 0 高 定时器/计数器 0 溢出 外部中断 1 定时器/计数器 1 溢出 串行口 低 在程序存储器中,各中断源的入口地址见表 2.4。 表 2.4 中断入口地址 中断源 入口地址 外部中断 INT0 0003H 定时器/计数器 T0 000BH 外部中断 INT1 0013H 定时器/计数器 T1 001BH 串行口 0023H (3)控制寄存器 TCON 表 2.5 TCON 定义 定时器/计数器有关 外部中断有关 D7 D6 D5 D4 D3 D2 D1 D0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 定时器/ 计数器 1 溢出标志 定时器/ 计数器 1 运行控制 定时器/ 计数器 0 溢出标志 定时器/ 计数器 0 运行控制 外部沿触 发中断 1 请求标志 外部中断 1 触发类 型控制 外部沿触 发中断 0 请求标志 外部中断 0 触发类 型控制 TF1:当定时器/计数器1溢出时,由硬件置位,申请中断。进入中断服务程序 后被硬件自动清除。TF0类似于TF1。 TR1:靠软件置位或清除,置位时,启动定时器/计数器1工作,清除时,停止 工作。TR0类似于TR1。 IE1:检测到在INT1引脚上出现的外部中断信号的下降沿时,由硬件置位,请 求中断。进入中断服务程序后,被硬件自动清除。IE0类似于IE1
II:靠软件来设置或清除,以控制外部中断1的触发类型。置1时,下降沿触 发:置0时,低电平触发。IT0类似于ITl。 2.模数(AD)转换电路 在单片机的测控系统中,经常要把检测到的连续变化的模拟信号,如温度、压力、速 度等转换为离散的数字量,才能输入单片机进行处理。实现模拟量到数字量转换的设备就 是模数转换器(ADC),简称AD 模数转换芯片与单片机连接后,工作过程大体分为三个阶段 首先,由单片机执行一条指令,启动模数转换。 其次,由于转换过程需要时间,不能立即得到结果,所以需要等待一段时间。一般模 数转换芯片会有一条专门的信号线表示转换是否结束。单片机可以将这条信号线作为自己 的中断请求信号,用中断的方式得到转换结束的消息,也可以对这条信号线进行查询,还 可以采用固定延时进行等待(因为这类芯片转换时间是固定的,事先可以知道)。 最后,当判断转换已经结束的时候,由单片机执行一条指令,从模数转换芯片中读出 转换结果。 本实验采用的是8路8位模数转换器ADC0809芯片。ADC0809采用逐次比较的方式 进行AD转换,其主要原理为:将一待转换的模拟信号与一个推测信号进行比较,根据推 测信号是大于还是小于输入信号来决定增大还是减少该推测信号,以便向模拟输入逼近。 推测信号由DA转换器的输出获得,当推测信号与模拟信号相等时,向D/A转换器输入 的数字就是对应模拟信号的数字量。ADC809的转换时间为64个时钟周期时钟频率500K 时为128μS)。分辨率为8位,转换精度为±LSB/2,单电源+5Ⅴ供电,输λ模拟电压范围 为0~498V。 ADC0809 的内部结构如 IN-O 图2.1所示。 8路 控制与时序 ADC0809内部 模拟 有8路模拟开IN7 开关 S.A. R 关,可以分别 比较器 输出 锁存 控制8路模拟 地址 树状开关 信号的模数转 锁存 换,片内有地 址锁存和译码ALE 译码 256R电阻阶梯 器,输出也有 Vcc gnd ref+ 态锁存,可 以直接和单片 图21ADC0809内部结构框图 机总线相连。 ADC809引线功能如下 IN-O-IN-7:8路模拟信号输入通道。 A、B、C:地址信号输入,用于选择通道IN-0至IN-7
8 IT1:靠软件来设置或清除,以控制外部中断1的触发类型。置1时,下降沿触 发;置0时,低电平触发。IT0类似于IT1。 2. 模数(A/D)转换电路 在单片机的测控系统中,经常要把检测到的连续变化的模拟信号,如温度、压力、速 度等转换为离散的数字量,才能输入单片机进行处理。实现模拟量到数字量转换的设备就 是模数转换器(ADC),简称 A/D。 模数转换芯片与单片机连接后,工作过程大体分为三个阶段: 首先,由单片机执行一条指令,启动模数转换。 其次,由于转换过程需要时间,不能立即得到结果,所以需要等待一段时间。一般模 数转换芯片会有一条专门的信号线表示转换是否结束。单片机可以将这条信号线作为自己 的中断请求信号,用中断的方式得到转换结束的消息,也可以对这条信号线进行查询,还 可以采用固定延时进行等待(因为这类芯片转换时间是固定的,事先可以知道)。 最后,当判断转换已经结束的时候,由单片机执行一条指令,从模数转换芯片中读出 转换结果。 本实验采用的是 8 路 8 位模数转换器 ADC0809 芯片。ADC0809 采用逐次比较的方式 进行 A/D 转换,其主要原理为:将一待转换的模拟信号与一个推测信号进行比较,根据推 测信号是大于还是小于输入信号来决定增大还是减少该推测信号,以便向模拟输入逼近。 推测信号由 D/A 转换器的输出获得,当推测信号与模拟信号相等时,向 D/A 转换器输入 的数字就是对应模拟信号的数字量。ADC0809的转换时间为64个时钟周期(时钟频率500K 时为 128μS)。分辨率为 8 位,转换精度为±LSB/2,单电源+5V 供电,输入模拟电压范围 为 0~4.98V。 ADC0809 的内部结构如 图 2.1 所示。 ADC0809 内部 有 8 路模拟开 关,可以分别 控制 8 路模拟 信号的模数转 换,片内有地 址锁存和译码 器,输出也有 三态锁存,可 以直接和单片 机总线相连。 ADC0809 引线功能如下: IN-0—IN-7:8 路模拟信号输入通道。 A、B、C:地址信号输入,用于选择通道 IN-0 至 IN-7。 比较器 8 路 模拟 开关 地址 锁存 与 译码 控制与时序 三态 输出 锁存 缓冲 器 树状开关 256R 电阻阶梯 + - S.A.R 图 2.1 ADC0809 内部结构框图 IN-0 IN-7 D0 D7 A B C ALE VCC GND ref+ OE SC CLK refEOC
CLK:时钟信号输入,频率范围为10KHz~128MHz。推荐使用640KHz左右的频率 SC(也有标为 START的)和ALE:输入信号,用于启动AD转换。SC上升沿实现 内部复位,下降沿开始AD转换。 EOC:输出信号,转换开始时EOC变为sC 低电平,转换结束时变为高电平。 OE:输入信号,当/RD变低使OE变为高 电平时,打开输出端口的三态门,允许转换结D 果输出到数据总线上。 图22为ADC0809与控制有关信号的波 图22数模转换时序图 形(根据 National Semiconductor的器件手 册),不同厂家的器件差异可能导致波形略有不同。 ADC0809与单片机连接方式如图23所示(参考实验板原理图)。CLK信号由单片机 的ALE信号经4分频得到(4608K)。实验电路板上ⅣN-4-IN-7通道已经直接接地。根据 本讲义插页一之EXP51实验板电路图,可以确定ADCO809某一AD通道的选通地址。 图23ADC0809与单片机连接电路图 3.数模(D/A)转换电路 与模数转换的过程相反,在单片机的测控系统中,单片机的处理结果又常常需要转换 为模拟信号去驱动相应的执行单元,实现对被控对象的控制。这种把数字量转换为模拟量 的设备称为数模(D/A)转换器 数模转换电路和单片机的接口方法如图24,图中所用的数模转换芯片是DAC0832, 它是由输入寄存器、DAC寄存器和DA转换器组成的CMOS器件。其特点是片内包含两 个独立的8位寄存器,因而具有二次缓冲功能,可以将被转换的数据预先存在DAC寄存 器中,同时又采集下一组数据,这就可以根据需要快速修改DAC0832的输出,更重要的 是可以在多个转换器同时工作的时候同时输出模拟量,以实现多于8位的数模转换
9 图 2.2 数模转换时序图 SC EOC /RD CLK:时钟信号输入,频率范围为 10KHz~1.28MHz。推荐使用 640KHz 左右的频率。 SC(也有标为 START 的)和 ALE:输入信号,用于启动 A/D 转换。SC 上升沿实现 内部复位,下降沿开始 A/D 转换。 EOC:输出信号,转换开始时 EOC 变为 低电平,转换结束时变为高电平。 OE:输入信号,当/RD 变低使 OE 变为高 电平时,打开输出端口的三态门,允许转换结 果输出到数据总线上。 图 2.2 为 ADC0809 与控制有关信号的波 形(根据 National Semiconductor 的器件手 册),不同厂家的器件差异可能导致波形略有不同。 ADC0809 与单片机连接方式如图 2.3 所示(参考实验板原理图)。CLK 信号由单片机 的 ALE 信号经 4 分频得到(460.8K)。实验电路板上 IN-4—IN-7 通道已经直接接地。根据 本讲义插页一之 EXP51 实验板电路图,可以确定 ADC0809 某一 A/D 通道的选通地址。 图 2.3 ADC0809 与单片机连接电路图 3. 数模(D/A)转换电路 与模数转换的过程相反,在单片机的测控系统中,单片机的处理结果又常常需要转换 为模拟信号去驱动相应的执行单元,实现对被控对象的控制。这种把数字量转换为模拟量 的设备称为数模(D/A)转换器。 数模转换电路和单片机的接口方法如图 2.4,图中所用的数模转换芯片是 DAC0832, 它是由输入寄存器、DAC 寄存器和 D/A 转换器组成的 CMOS 器件。其特点是片内包含两 个独立的 8 位寄存器,因而具有二次缓冲功能,可以将被转换的数据预先存在 DAC 寄存 器中,同时又采集下一组数据,这就可以根据需要快速修改 DAC0832 的输出,更重要的 是可以在多个转换器同时工作的时候同时输出模拟量,以实现多于 8 位的数模转换
庸 图24DAC0832与单片机连接电路图 DAC0832的内部结构如图2.5所示,DA转换部分主要由T型电阻解码网络构成。相 对ADC而言,DAC的转换速度比较快,DAC0832的电流稳定时间可以达到1μS DAC0832的各引线功能如下 /CS:片选信号,“/”表示低电平有效(也是一种比较常用的表示方法)。 ILE:允许输入锁存信号,高电平有效。在/CS=0的同时,若ⅡE=1,则允许输入数 据进入数据寄存器,若ⅡE=0,则数据寄存器的内容被锁存。 wRl:写信号1,在/CS和IE同时有效的时候,NWR1的上升沿将输入数据推入数 据寄存器 wR2:写信号2,用于将锁存在数据寄存器中的数据传送到DAC寄存器中,在XFER 信号有效时,/WR2的上升沿将输入数据寄存器中的信息推入DAC寄存器。 /XFER:控制传送信号,低电平有效,用于控制/WR2。 D~-D:8位数据输入端。 八位 锁存器 寄存器 锁存器 OAGND 51 WR2 XFER 图25DAC0832内部结构框图 lo、In:DAC电流输出端,lo1随DAC寄存器的内容线性变化 Rfb:反馈信号输入线,反馈电阻在芯片内部,约为15KΩ。 Ⅴcc:电源输入端,电源适用范围5~15V。 vref:基准电源输入端,基准电压可在+10V~-10V范围选择。 AGND:模拟量接地端
10 EA/VP 31 X1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10/T 1 P11/T 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 11 RXD 10 8032 D1 TXD RXD PSEN/ ALE WR/ RD/ RESET X2 X1 A15 A14 A13 A12 A11 A10 A9 A8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 T0 T1 INT0 EOC P17 P16 P15 P14 P13 P12 P11 P10 1 2 D15A 74LS14 4 3 D15B 74LS14 Vcc 20 Iout1 11 DI0 7 Iout2 12 DI1 6 DI2 5 Rfb 9 DI3 4 DI4 16 Vref 8 DI5 15 DI6 14 DI7 13 ILE 19 WR2 18 CS 1 WR1 2 Xfer 17 GND 10 GND 3 D8 DAC0832P WR/ AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 VCC -VREF +12V 3 2 6 1 5 7 4 D9 741 -12V V4 1k R7 R2 20K +12V VOUT A 1 B 2 C 3 E1 4 E2 5 E3 6 Y0 15 Y1 14 Y2 13 Y3 12 Y4 11 Y5 10 Y6 9 Y7 7 74LS138 D3 A15 A14 A13 A8 A9 A10 图 2.4 DAC0832 与单片机连接电路图 DAC0832 的内部结构如图 2.5 所示,D/A 转换部分主要由 T 型电阻解码网络构成。相 对 ADC 而言,DAC 的转换速度比较快,DAC0832 的电流稳定时间可以达到 1μS。 DAC0832 的各引线功能如下: /CS:片选信号,“/”表示低电平有效(也是一种比较常用的表示方法)。 ILE:允许输入锁存信号,高电平有效。在/CS=0 的同时,若 ILE=1,则允许输入数 据进入数据寄存器,若 ILE=0,则数据寄存器的内容被锁存。 /WR1:写信号 1,在/CS 和 ILE 同时有效的时候,/WR1 的上升沿将输入数据推入数 据寄存器。 /WR2:写信号 2,用于将锁存在数据寄存器中的数据传送到 DAC 寄存器中,在 XFER 信号有效时,/WR2 的上升沿将输入数据寄存器中的信息推入 DAC 寄存器。 /XFER:控制传送信号,低电平有效,用于控制/WR2。 D0~D7:8 位数据输入端。 I01、I02:DAC 电流输出端,I01 随 DAC 寄存器的内容线性变化。 Rfb:反馈信号输入线,反馈电阻在芯片内部,约为 15KΩ。 Vcc:电源输入端,电源适用范围 5~15V。 Vref:基准电源输入端,基准电压可在+10V~-10V 范围选择。 AGND:模拟量接地端。 图 2.5 DAC0832 内部结构框图
DGND:数字量接地端。 DAC0832的输出是电流信号。在单片机应用系统中通常需要的是电压信号,电流信号 到电压信号的转换可以通过下面公式计算: Ro R 2 式中R0为反馈电阻,R为DA转换器内阻,D为要转换的数字量,n为二进制的位 数。在放大器不加外接反馈电阻时,输出电压是最大值可用下式表示。 Ro R 放大器输出电压的最大值与基准电压vref成正比,而且与基准电压ref的极性相反 四、实验内容 1.模数转换电路验证 这个程序采用中断处理方式来正确读取AD转换的结果,读取结果由P1口输出至8 位发光二极管显示。 在运行这个程序之前,要在断电的情况下把导线连接好 (1)使用专用实验连线将电位器W1的 V-BASE点与+Vref(+V)连接 (2)电位器W1的VOUT点(即中心抽头,不要和DAC0832的OUT弄混)接至 ADC0809的IN3(通道3) (3)ADC0809的EOC已经74LS14反相接至单片机的外部中断INT1 (4)用专用实验连线将P1.0-P1.7接至八个发光二极管L8-L1 部分参考程序如下: A D: MOV DPTR. #xxXXH MOVX ODPTRA 启动AD CJNE R7.#00HS 等待转换结束 MOV PLA MOV R7.#OFFH SJMPA D INT MOVX A, ODPTR 中断处理程序 MOV R7.#00H RETI END 2.数模转换电路验证 下面的示例程序循环向DAC0832的数据线送出数据,请思考,该程序运行时,用示 波器在DAC0832的VOUT点会观察到什么样的波形。在测量的时候应该注意不要用示波 器探头直接测量VOUT点的输出,而要先用专用导线把信号引出再进行测量,示波器探头
11 DGND:数字量接地端。 DAC0832 的输出是电流信号。在单片机应用系统中通常需要的是电压信号,电流信号 到电压信号的转换可以通过下面公式计算: V0=-Vref· n D R R 2 0 • 式中 R0 为反馈电阻,R 为 D/A 转换器内阻,D 为要转换的数字量,n 为二进制的位 数。在放大器不加外接反馈电阻时,输出电压是最大值可用下式表示。 R R Vo VREF 0 max = − 放大器输出电压的最大值与基准电压 Vref 成正比,而且与基准电压 Vref 的极性相反。 四、 实验内容 1. 模数转换电路验证 这个程序采用中断处理方式来正确读取 A/D 转换的结果,读取结果由 P1 口输出至 8 位发光二极管显示。 在运行这个程序之前,要在断电的情况下把导线连接好: (1)使用专用实验连线将电位器 W1 的 V-BASE 点与+Vref (+5V) 连接; (2)电位器 W1 的 V-OUT 点(即中心抽头,不要和 DAC0832 的 VOUT 弄混)接至 ADC0809 的 IN3(通道 3); (3)ADC0809 的 EOC 已经 74LS14 反相接至单片机的外部中断 INT1; (4)用专用实验连线将 P1.0-P1.7 接至八个发光二极管 L8-L1。 部分参考程序如下: A_D: MOV DPTR, #xxxxH MOVX @DPTR,A ; 启动 A_D CJNE R7,#00H,$ ; 等待转换结束 MOV P1,A MOV R7,#0FFH SJMP A_D INT_1: MOVX A,@DPTR ; 中断处理程序 MOV R7,#00H RETI END 2. 数模转换电路验证 下面的示例程序循环向 DAC0832 的数据线送出数据,请思考,该程序运行时,用示 波器在 DAC0832 的 VOUT 点会观察到什么样的波形。在测量的时候应该注意不要用示波 器探头直接测量 VOUT 点的输出,而要先用专用导线把信号引出再进行测量,示波器探头
的地线也要用导线接到实验板的“地”上(实验板右上角电位器附近画着地线标志的接头 即为实验板的地) ORG 0000H LJMP DAO ORG 0100H DA0: MOV DPTR,#xXxH;DAC0832片选地址 CLR A DAI: MOVX @DPTR, A INC SJMP DAI END 3.外部数据存储器、数模转换、模数转换联合调试程序 编写一个程序将ADC0809的通道0输入的模拟电压转换为一系列的数字量,依次存 入62256的2048个存储单元中。每次模数转换得到的数字量立即送DAC0832作数模转换 运行程序之前,首先要把信号源、示波器和实验箱连接好。 注意 (1)信号源、示波器和实验箱一定要共地才可以准确地测量,否则将可能损坏实 验设备。在实验时要通过专用导线把三者的地接在一起 (2)ADC0809的输入由信号源提供。在把信号源接到实验板之前要首先用示波器 观察信号源的输出,保证信号源的输出限制在ADC0809的输入范围之内。设置信 号源的输出频率为50Hz,峰峰值小于5伏,最小值要大于0(通过调节 OFFSET 使AD输入信号限制在0—5V之间)。 (3)由于ADC0809模拟信号的输入范围为0~498V,在实际应用时为了避免偶 然因素造成的瞬时电压超出0809的输入范围,需要对0809的输入进行保护,图 2.6就是一个较简单的保护电路。两个二极管可以防止输入信号小于0V和大于 5V。本实验中己经要求用示波器检测AD输入信号,确保其在0-5V之间,故 不要求加接输入保护电路 图26ADC0809的输入保护
12 的地线也要用导线接到实验板的“地”上(实验板右上角电位器附近画着地线标志的接头 即为实验板的地)。 ORG 0000H LJMP DA0 ORG 0100H DA0: MOV DPTR, #xxxxH ; DAC0832 片选地址 CLR A DA1: MOVX @DPTR,A INC A SJMP DA1 END 3. 外部数据存储器、数模转换、模数转换联合调试程序 编写一个程序将 ADC0809 的通道 0 输入的模拟电压转换为一系列的数字量,依次存 入 62256 的 2048 个存储单元中。每次模数转换得到的数字量立即送 DAC0832 作数模转换。 运行程序之前,首先要把信号源、示波器和实验箱连接好。 注意: (1) 信号源、示波器和实验箱一定要共地才可以准确地测量,否则将可能损坏实 验设备。在实验时要通过专用导线把三者的地接在一起。 (2) ADC0809 的输入由信号源提供。在把信号源接到实验板之前要首先用示波器 观察信号源的输出,保证信号源的输出限制在 ADC0809 的输入范围之内。设置信 号源的输出频率为 50Hz,峰峰值小于 5 伏,最小值要大于 0(通过调节 OFFSET 使 A/D 输入信号限制在 0-5V 之间)。 (3) 由于 ADC0809 模拟信号的输入范围为 0~4.98V,在实际应用时为了避免偶 然因素造成的瞬时电压超出 0809 的输入范围,需要对 0809 的输入进行保护,图 2.6 就是一个较简单的保护电路。两个二极管可以防止输入信号小于 0V 和大于 5V。本实验中已经要求用示波器检测 A/D 输入信号,确保其在 0-5V 之间,故 不要求加接输入保护电路。 VCC 11 IN-0 26 D7 21 D6 20 IN-1 27 D5 19 D4 18 IN-2 28 D3 8 D2 15 IN-3 1 D1 14 D0 17 IN-4 2 EOC 7 IN-5 3 A 25 IN-6 4 B 24 C 23 IN-7 5 ALE 22 ref- 16 OE 9 SC 6 ref+ 12 CLK 10 AGND 13 D21 ADC0809P D1 DIODE D2 DIODE IN0 +5V R1 1K 图 2.6 ADC0809 的输入保护
五、实验步骤和要求 1.在实验内容1中,用示波器检测如图22所示的SC、EOC和/RD三个控制信号 的时序图。测量ADC0809模数转换时间。用万用表检测AD转换结果是否正确 8个发光二极管的组合显示值是否可以达到最小值和最大值 (实验板中有SC和EOC信号测试点,注意不要使两个测试点短路。) 2.测量实验内容二中输出波形的周期。比较ADC0809和DAC0832的转换速度。 3.在实验内容三中调节信号源的频率(100Hz-1000Hz),用示波器同时观察 ADC0809输入端和DAC0832输出端的波形差别,并分析造成这种差别的原因。 4.(选做)试编写一个程序对输入三角波信号进行简单的滤波,滤波算法采用求相邻 采样值平均值的方法。例如将连续4个、8个或更多的采样点的输入取平均进行 输出,使输出的波形比输入波形平滑一些。 六、思考题 1.AD转换的原理图23并不完整,试指出缺少的器件 2.在实验内容3中,怎样通过DAC0832输出端的波形估算出ADC0809的转换速 度? 七、实验报告附加要求 1.画出并标注模数转换全过程的时序图。 2.画出实验内容3相应的程序流程图,注释主要的程序段
13 五、 实验步骤和要求 1. 在实验内容 1 中,用示波器检测如图 2.2 所示的 SC、EOC 和/RD 三个控制信号 的时序图。测量 ADC0809 模数转换时间。用万用表检测 AD 转换结果是否正确, 8 个发光二极管的组合显示值是否可以达到最小值和最大值。 (实验板中有 SC 和 EOC 信号测试点,注意不要使两个测试点短路。) 2. 测量实验内容二中输出波形的周期。比较 ADC0809 和 DAC0832 的转换速度。 3. 在实验内容三中调节信号源的频率(100Hz~1000Hz),用示波器同时观察 ADC0809 输入端和 DAC0832 输出端的波形差别,并分析造成这种差别的原因。 4. (选做)试编写一个程序对输入三角波信号进行简单的滤波,滤波算法采用求相邻 采样值平均值的方法。例如将连续 4 个、8 个或更多的采样点的输入取平均进行 输出,使输出的波形比输入波形平滑一些。 六、 思考题 1. AD 转换的原理图 2.3 并不完整,试指出缺少的器件。 2. 在实验内容 3 中,怎样通过 DAC0832 输出端的波形估算出 ADC0809 的转换速 度? 七、 实验报告附加要求 1. 画出并标注模数转换全过程的时序图。 2. 画出实验内容 3 相应的程序流程图,注释主要的程序段