ADDA实验报告.docx

上传人:b****5 文档编号:8724554 上传时间:2023-05-14 格式:DOCX 页数:13 大小:353.70KB
下载 相关 举报
ADDA实验报告.docx_第1页
第1页 / 共13页
ADDA实验报告.docx_第2页
第2页 / 共13页
ADDA实验报告.docx_第3页
第3页 / 共13页
ADDA实验报告.docx_第4页
第4页 / 共13页
ADDA实验报告.docx_第5页
第5页 / 共13页
ADDA实验报告.docx_第6页
第6页 / 共13页
ADDA实验报告.docx_第7页
第7页 / 共13页
ADDA实验报告.docx_第8页
第8页 / 共13页
ADDA实验报告.docx_第9页
第9页 / 共13页
ADDA实验报告.docx_第10页
第10页 / 共13页
ADDA实验报告.docx_第11页
第11页 / 共13页
ADDA实验报告.docx_第12页
第12页 / 共13页
ADDA实验报告.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

ADDA实验报告.docx

《ADDA实验报告.docx》由会员分享,可在线阅读,更多相关《ADDA实验报告.docx(13页珍藏版)》请在冰点文库上搜索。

ADDA实验报告.docx

ADDA实验报告

实验七A/D(外部)实验

—、实验目的

1.熟悉使用外部AD转换的基本原理。

2.掌握AD7887的技术指标和常用方法

2.掌握并熟练使用DSP和AD7887的接口及其操作

二、实验设备

计算机,CCS3.1版本软件,DSP仿真器,E300实验箱,DSP-54XPCPU板,信号线,示波器

三、实验原理

1.AD7887是一种可工作在2.7~5.25V单一电源下的高速、低功率12位ADC,具有125kSPS的吞吐率。

其输入端相当于一个采样周期为500ns的单端采样器,任何信号经转换后可以二进制编码形式由输出端输出。

AD7887具有单/双通道两种工作模式和灵活的电源管理模式,并可通过芯片上的控制寄存器进行转换。

在缺省的单通道模式中,AD7887还可作只读ADC。

芯片采用8引线SOIC的μSOIC的封装。

AD7887的主要特点如下:

◆是目前体积最小的12位单/双通道ADC;

◆采用CMOS结构以确保低功耗;

◆具有电源自动关闭形式;

◆在缺省模式下可用作只读ADC;

◆具有通用串行I/O端口。

下面是对AD7887应用的一些简单说明(具体的信息请参看AD7887的数据手册)

AD7887的内部原理图如下:

AD7887的引脚说明

1脚(CS)

片选引脚,低电平有效。

该脚提供2个功能,一个是使AD7887开始工作;另一个是激励串行数据的传输。

当AD7887工作在缺省值模式下时,CS管脚也可作为关闭管脚,即当CS接高电平时,AD7887处于关闭模式。

2脚(VDD)

电源输入脚。

VDD的范围为2.7~5.25V,当AD7887用于双通道工作模式时,该管脚用来提供参考电压。

3脚(GND):

接地脚。

4脚(AIN1/VREF)

模拟输入/参考电压输入端。

在单通道模式下,该脚用作参考电压输入,此时该脚与内部参考电压(+2.5V)相连或由外部参考电压驱动,其外部参考电压范围为1.2V~VDD;在双通道模式下,该管脚用作第二个模拟输入端AIN1,此时的电压范围为0~VDD。

5脚(AIN0)

模拟输入端。

在单通道模式下,该脚的模拟输入电压范围为0~VREF;在双通道模式下,其模拟输入电压范围为0~VDD。

6脚(DIN)

数据输入。

在SCLK的每个上升沿,数据由该管脚送入AD7887的控制寄存器。

若把DIN和GND连接起来,那么,AD7887将为缺省的单通道只读ADC。

7脚(DOUT)

数据输出端。

AD7887的转换结构以串行数据流的形式从该脚输出,其数据流中包括4个前导0以及其后的12位转换数据。

8脚(SCLK)

串行时钟输入端。

用于为数据的存取、写控制寄存器以及A/D转换提供时钟脉冲。

AD7887的控制寄存器如下:

AD7887的控制寄存器是一个8位只写寄存器。

在SCLK的每个上升沿数据由DIN脚送入AD7887并同时送至控制寄存器。

该数据的传输共需16个连续的时钟脉冲,而有效信息只在前8个上升沿被送入控制寄存器。

MSB为数据流的第一位。

控制寄存器的位功能如下:

简单说明

7

不必关心的位。

6

该位必须为0以保证AD7887正常工作

5

参考位。

该位为0时,芯片上的参考电压有效,1时无效

4

单/双通道选择。

该位为0时,荼在单通道模式,AIN1/VREF管脚用作VREF功能;该位为1时,工作在双通道模式,此时VDD为参考电压,AIN1/VREF管脚用作AIN1功能以作为第二个模拟输入通道。

为使AD7887获得最好的效率,在双通道模式中,应使内部参考电压无效,即REF=1

3

通道位。

当芯片工作在双通道模式时,该位决定下一步转换哪个通道。

在单通道模式中,该位始终为0

2

该位必须为0以保证AD7887正常工作

1.0

电源管理模式选择。

用来决定AD7887的4种工作模式

电源管理模式选择说明如下:

PM1

PM0

工作模式

0

0

模式1.在这种模式下,当CS=1,AD7887不工作;CS=0时,AD7887正常工作。

即AD7887在CS的下降沿开启电源,在CS的上升沿关闭电源

0

1

模式2。

在这种模式下,无论管脚的状态如何,AD7887的电源始终开启

1

0

模式3。

在这种模式下,无论管脚的状态如何,AD7887自动在每次转换结束关闭电源

1

1

模式4。

在这种备用模式下,AD7887的部分电源关闭,而芯片上的参考电压仍然开启。

该模式与模式3有些相似,但电源开启较快。

且REF应该为0,这样才能确保芯片上的参考电压有效

2.样例实验电路连接如下:

说明:

BFSR0和BFSX0短接后和SPISTE相连,作为AD7887的CS片选信号

BCLKR0和BCLKX0短接后和SPICLK相连,作为AD7887的时钟信号,注意该时钟信号通过一个三极管(2SC3356)后,时钟信号极性变反了。

BDR0和SPIS0MI相连,CPU采集信号的输入端。

BDX0和SPIIM0相连,是CPU向AD7887发送指令输出端。

3.实验是利用CPU的SPI来进行波形数据采集,程序的框图如下:

4.本实验中SPI的设置依据芯片工作时序图(如下):

DIN输入的数据是:

0x2100(高八位是AD芯片控制寄存器设置的数据(D7-D0)

DOUT输出的数据是:

芯片AD转换后的16位数字信号

四、实验步骤和内容

1.E300板上的开关SW4的第二位置ON,其余OFF.SW7全部置ON。

其余开关全部置OFF。

2.用导线连接E300底板“Signalexpansionunit”的2号孔接口“SIN”到“Signalexpansionunit”的2号孔“AD_IN0”;(本样例实验只进行对AD_IN0的信号操作)

3.运行CodeComposerStudio(CCS3.1);(ccs3.1需要“DEBUG→Connect”)

4.用“Project\open”打开系统项目文件\normal\07SPI_AD\SPI_AD.pjt。

5.编译全部文件并装载“\Debug\SPI_ad.out”;

6.单击“Debug\Gomain”跳到主程序中,在主程序中“设置软件断点”加软件断点。

7.单击“Debug\RUN”,程序运行到断点处;

8.点击“View—Graph-Time/Frenquence”设置观察图形窗口

9.单击“Debug\Animate”全速运行程序;

10.单击“Debug\Halt”停止程序,打开程序,理解程序中的语句。

11.关闭“CCS”结束实验

实验八DA实验

—、实验目的

1.熟悉DA转换的基本原理。

2.掌握AD7303的技术指标和常用方法

3.掌握并熟练掌握使用DSP和AD7303的接口及其操作

4.熟悉使用IO口模拟SPI的编程方法。

二、实验设备

计算机,CCS3.1版本软件,DSP仿真器,E300实验箱,DSP-54XPCPU板

三、实验原理

1.AD7303的技术指标和常用方法如下:

DA转换芯片采用AnalogDevices公司的AD7303。

该芯片是单极性、双通道、串行、8位DA转换器,操作串行时钟最快可达30M,DA转换时间1.2μs采用SPI串行接口和DSP连接。

DA输出通过放大电路,可以得到0~5V的输出范围。

DA输出接口在“CPLD单元”的右上角,两个2号孔“D/A输出1、D/A输出2”分别对应AD7303的“OUTA、OUTB”。

AD7303的功能框图:

AD7303的接口时序:

AD7303的输入数字量和输出电压的关系:

输入AD7303的数据流如下:

数据位介绍如下:

(本文以AD7303数据文件内容为依据)

样例实验中,输入AD7303控制寄存器的数据位(高8位)如下:

ad7303_CTRLA0x20//通道A选择指令00100000

ad7303_CTRLB0x24//通道B选择指令00100100

2.使用IO口模拟SPI功能的编程方法:

本实验是利用CPLD(E300板子上)编码来扩展I/O口,F2407CPU利用I/O口来模拟SPI,从而达到向AD7303芯片传送指令和数据的目的。

我们利用CPLD编程来提供三个模拟的I/O(如下表:

D7-D5位),我们按照串口通信的方式,不停的在该I/O口的存储空间里写入数据,此时的数据信息(16位)按照从高位到低位的顺序传输入到AD7303芯片的管脚上.

数据传输时序图如下:

下表则是扩展的I/O口空间。

CPLD_CTRL_REG(W):

基本地址+0x0002;(只写)

D7

D6

D5

D4

D3

D2

D1

D0

7303_CS

7303_DIN

7303_SCLK

AIC23_CS

AIC23_CLK

AIC23_DIN

LCD_RST

LED_CTRL

1

1

1

0

0

利用表中的D7,D6,D5三位来扩展出三个I/O口.

具体的实现方法请参看实验程序.

四、实验步骤和内容

1.E300板上的开关SW4的第1位置ON,其余OFF.其余开关全部置OFF。

2.运行CodeComposerStudio(CCS3.1);(ccs3.1需要“DEBUG→Connect”)

3.打开系统项目文件\normal\07_DA\da7303.pjt

4.编译全部文件并装载“da7303.out”文件;

单击“Debug\Gomain”跳到主程序处

5.单击“Debug\Animate”全速运行程序;

6.使用万用表或者示波器观察输出结果(如下图)。

(负表笔联接到2号口AGND,正表笔联接到2号口DOUTA(或者DOUTB),可以观察到从0到最大值之间的阶越跳变,最大值的幅度和R89,R90可调电阻的调节只有关)。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2