33ARM的DA接口实验
AD及DA实验报告
微机原理及接口技术之AD及DA实验一.实验目的:1.了解A/D芯片ADC0809和D/A芯片DAC0832的电气性能;外围电路的应用性搭建及有关要点和注意事项;与CPU的接口和控制方式;相关接口参数的确定等;2.了解数据采集系统中采样保持器的作用和采样频率对拾取信号失真度的影响,了解香农定理;3.了解定时计数器Intel 8253和中断控制器Intel 8259的原理、工作模式以及控制方式,训练控制定时器和中断控制器的方法,并学习如何编写中断程序。
4.熟悉X86汇编语言的程序结构和编程方法,训练深入芯片编写控制程序的编程能力。
二.实验项目:1.完成0~5v的单极性输入信号的A/D转换,并与实际值(数字电压表的测量值)比较,确定误差水平。
要求全程至少10个点。
2.完成-5v~+5v的双极性输入信号的A/D转换,并与实际值(数字电压表的测量值)比较,确定误差水平。
要求全程至少20个点。
3.把0~FF的数据送入DAC0832并完成D/A转换,然后用数字电压表测量两个模拟量输出口(OUT1为单极性,OUT2双极性)的输出值,并与计算值比较,确定误差水平。
要求全程至少16个点。
三.仪器设备:Aedk-ACT实验箱1套(附电源线1根、通信线1根、实验插接线若干、跳线子若干);台式多功能数字表1台(附电源线1根、表笔线1付(2根)、);PC机1台;实验用软件:Windows98+LcaACT(IDE)。
四.实验原理一)ADC0809模块原理1)功能简介A/D转换器芯片●8路模拟信号的分时采集●片内有8路模拟选通开关,以及相应的通道抵制锁存用译码电路●转换时间为100μs左右2)内部结构ADC0809内部逻辑结构图中多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用一个A/D转换器进行转换,这是一种经济的多路数据采集方法。
地址锁存与译码电路完成对A、B、C 3个地址位进行锁存和译码,其译码输出用于通道选择,其转换结果通过三态输出锁存器存放、输出,因此可以直接与系统数据总线相连。
DA转换实验
unsigned long int Yx;//显示全局变量
unsigned char idata xb=0,CKx[20]={0};
#define jz 11.0592
sbit LED_D1=P4^3;
sbit LED_D2=P4^4;
{
ES=0;
xb=0;
z=0;
for(j=0;j<9;j++)
{
send(CKx[j]);
}
ES=1;
for(j=1;j<9;j++)
{
z=z*10;
z=z+(CKx[j] & 0x0f);
}
DA_conver(z);
Yx=z;
}
//Yx=Yx+1;
LED_D1=~LED_D1;
delay(0xf000);
2.2 D/A转换器
数字量是用代码按数位组合起来表示的,对于有权码,每位代码都有一定的权。为了将数字量转换成模拟量,必须将每一位的代码按其权的大小转换成相应的模拟量,然后将这些模拟量相加,即可得与数字量成正比的模拟量,从而实现了数字—模拟转换。
D/A转换器通常是由数码寄存器、模拟电子开关电路、解码网络、求和电路及基准电压几部分。
CK1_T2_9600_10bit();//在11.0592MHz,is9.6k
T0_csh();
ET0=1;
ES=1;
EA=1;
ctr_S1=0;
ctr_FG=0;
s2fg=0;
// send(0xaa);
// send(0xbb);
DA 转换实验(C语言)
{*Addr=i;
}
}
三角波
#include<stdio.h>
#include<reg51.h>
unsigned ຫໍສະໝຸດ har xdata *Addr;void main()
{ int i,j;
Addr=0x7fff;
while(1)
{for(i=0;i<255;i++)
DAC0832的使用有双缓冲器型、单缓冲器型和直通型三种工作方式。
图2双缓冲器型、单缓冲器型和直通型
(a)双缓冲方式:采用二次缓冲方式,可在输出的同时,采集下一个数据,提高了转换速
度;也可在多个转换器同时工作时,实现多通道D/A的同步转换输出。
(b)单缓冲方式:适合在不要求多片D/A同时输出时。此时只需一次写操作,就开始转换,
UREF:参考电压输入。一般此端外接一个精确、稳定的电压基准源。UREF可在-10V至
+10V范围内选择。
UCC:电源输入端(一般取+5V~+15V)。
DGND:数字地,是控制电路中各种数字电路的零电位。
AGND:模拟地,是放大器、A/D和D/A转换器中模拟电路的零电位。
2.DAC0832的特性参数
DI7~DI0:8位输入数据信号
ILE:输入锁存允许信号,高电平有效。
CS:片选信号,低电平有效。
WR1:输入数据选通信号,低电平有效。(上升沿锁存)
XFER:数据传送选通信号,低电平有效。
WR2:数据传送选通信号,低电平有效。(上升沿锁存)
IOUT1:DAC输出电流1。当DAC锁存器中为全1时,IOUT1最大(满量程输出);为全0时,IOUT1为0。
arm rdi 调试接口标准
arm rdi 调试接口标准ARM调试接口标准(ARM Debug Interface)是一套用于ARM处理器调试的硬件和软件接口标准。
ARM调试接口标准定义了处理器的调试功能,并提供了一种统一的接口规范,使得用户能够使用统一的调试工具来调试不同厂家的ARM处理器。
接下来,本文将从技术和应用两个方面,对ARM调试接口标准进行详细介绍,供读者参考。
一、技术方面1.接口定义ARM调试接口标准定义了一系列硬件接口信号和必须实现的功能,包括调试端口、触发端口、时钟控制、数据传输和断电管理等。
这些接口信号和功能使得用户能够通过调试接口与ARM处理器进行通信,并获取处理器的状态信息和调试数据。
2.接口尺寸ARM调试接口标准定义了接口的尺寸,包括调试端口和触发端口的位宽。
这些尺寸的定义保证了不同厂家的ARM处理器都具有兼容的接口,从而可以使用统一的调试工具进行调试。
3.调试模式ARM调试接口标准定义了处理器的调试模式,包括正常运行模式、调试模式和监控模式等。
调试模式是一种特殊的运行模式,其中可以访问和控制处理器的调试功能。
用户可以通过调试接口将处理器切换到调试模式,然后执行单步调试、断点设置和寄存器读写等操作。
4.调试功能ARM调试接口标准定义了一系列的调试功能,包括单步调试、断点设置、观察点设置和寄存器读写等。
这些调试功能使用户能够精确地控制和监视处理器的执行,从而实现高效的调试。
二、应用方面1.开发调试工具ARM调试接口标准为开发调试工具提供了一个统一的接口规范,使得不同厂家的调试工具都可以兼容不同厂家的ARM处理器。
开发调试工具时,只需要按照ARM调试接口标准设计和实现,就可以支持多种ARM处理器的调试。
2.调试应用程序ARM调试接口标准为调试应用程序提供了丰富的调试功能,包括单步调试、断点设置和寄存器读写等。
使用调试接口标准的调试工具,可以在应用程序的关键位置设置断点,观察和修改寄存器的值,以及执行单步调试来查找和解决问题。
ARM的串行口实验报告
ARM的串行口实验报告班级:电信091 学号: 2121姓名:指导教师:陶福寿日期: 2011年10月12日目录一、实验目的............................. 错误!未定义书签。
二、实验内容............................. 错误!未定义书签。
三、预备知识............................. 错误!未定义书签。
四、实验设备及工具....................... 错误!未定义书签。
五、实验原理及说明....................... 错误!未定义书签。
六、实验步骤............................. 错误!未定义书签。
七、思考题............................... 错误!未定义书签。
1.232串行通讯的数据格式是什么........ 错误!未定义书签。
2.串行通讯最少需要几根线,分别如何连接错误!未定义书签。
3.ARM的串行口有几个,相应的寄存器是什么错误!未定义书签。
4.用中断方式实现串口驱动。
........... 错误!未定义书签。
ARM的串行口实验一、实验目的1.掌握ARM的串行口工作原理。
2.学习编程实现ARM的UART通讯。
3.掌握CPU利用串口通讯的方法。
二、实验内容学习串行通讯原理,了解串行通讯控制器,阅读ARM芯片文档,掌握ARM的UART相关寄存器的功能,熟悉ARM系统硬件的UART相关接口。
编程实现ARM和计算机实现串行通讯:ARM监视串行口,将接收到的字符再发送给串口(计算机与开发板是通过超级终端通讯的),即按PC键盘通过超级终端发送数据,开发板将接收到的数据再返送给PC,在超级终端上显示。
三、预备知识1、用EWARM集成开发环境,编写和调试程序的基本过程。
2、ARM应用程序的框架结构。
3、了解串行总线四、实验设备及工具硬件:ARM嵌入式开发平台、PC机Pentium100以上、用于ARM920T 的JTAG仿真器、串口线。
DA接口实验报告
实验五 D/A接口实验一、实验目的1.学习D/A 转换原理2.掌握MAX504D/A 转换芯片的使用方法3.掌握不带有D/A/的CPU 扩展D/A 功能的主要方法。
二、实验内容学习D/A 接口原理,了解实现D/A 系统对于系统的软件和硬件要求。
阅MAX504 芯片文档,掌握其使用方法,编程实现正弦波信号的输出,利用示波器实验输出。
三、预备知识1、用ARM SDT 2.5 或ADS1.2 集成开发环境,编写和调试程序的基本过程。
2、ARM 应用程序的框架结构。
四、实验设备及工具硬件:ARM 嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC 机Pentium100 以上、示波器。
软件:PC 机操作系统win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成开发环境、仿真器驱动程序、超级终端通讯程序。
五、实验原理及说明1.D/A 转换器DA 转换器的内部电路构成无太大差异,一般按输出是电流还是电压、能否作乘法运算等进行分类。
大多数DA 转换器由电阻阵列和n 个电流开关(或电压开关)构成。
按数字输入值切换开关,产生比例于输入的电流(或电压)。
1)电压输出型(如TLC5620)电压输出型DA 转换器虽有直接从电阻阵列输出电压的,但一般采用内置输出放大器以低阻抗输出。
直接输出电压的器件仅用于高阻抗负载,由于无输出放大器部分的延迟,故常作为高速DA 转换器使用。
2)电流输出型(如THS5661A)电流输出型DA 转换器很少直接利用电流输出,大多外接电流—电压转换电路得到电压输出,转换有两种方法:一是只在输出引脚上接负载电阻而进行电流—电压转换,二是外接运算放大器。
用负载电阻进行电流—电压转换的方法,虽可在电流输出引脚上出现电压,但必须在规定的输出电压范围内使用,而且由于输出阻抗高,所以一般外接运算放大器使用。
此外,大部分CMOS DA 转换器当输出电压不为零时不能正确动作,所以必须外接运算放大器。
单片机AD与DA转换实验报告
AD与DA转换实验报告一.实验目的⑴掌握A/D转换与单片机接口的方法;⑵了解A/D芯片0809转换性能及编程方法;⑶通过实验了解单片机如何进行数据采集。
⑷熟悉DAC0832 内部结构及引脚。
⑸掌握D/A转换与接口电路的方法。
⑹通过实验了解单片机如何进行波形输出。
二.实验设备装有proteus的电脑一台三.实验原理及内容1.数据采集_A/D转换(1)原理①ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。
多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。
三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。
②ADC0809引脚结构:D7 ~ D0:8位数字量输出引脚。
IN0 ~ IN7:8位模拟量输入引脚。
VCC:+5V工作电压。
GND:地。
REF(+):参考电压正端。
REF(-):参考电压负端。
START:A/D转换启动信号输入端。
ALE:地址锁存允许信号输入端。
(以上两种信号用于启动A/D转换).EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。
OE:输出允许控制端,用以打开三态数据输出锁存器。
CLK:时钟信号输入端(一般为500KHz)。
A、B、C:地址输入线。
(2)内容和步骤1.硬件电路设计:设计基于单片机控制的AD转换应用电路。
AD转换芯片采用ADC0809。
ADC0809的通道IN3输入0-5V之间的模拟量,通过ADC0809转换成数字量在数码管上以十进制形成显示出来。
ADC0809的VREF接+5V电压。
2. 软件设计:程序设计内容(1) 进行A/D转换时,采用查询EOC的标志信号来检测A/D转换是否完毕,经过数据处理之后在数码管上显示。
(2) 进行A/D转换之前,要启动转换的方法:ABC=110选择第三通道。
ST=0,ST=1,ST=0产生启动转换的正脉冲信号2.D/A转换及数字式波形发生器(1)原理典型D/A转换DAC0832芯片V cc 芯片电源电压, +5V ~+15V VREF 参考电压, -10V ~+10VRFB 反馈电阻引出端, 此端可接运算放大器输出端 AGND 模拟信号地 DGND 数字信号地DI7~ DI0数字量输入信号。
单片机ad da实验报告
单片机ad da实验报告单片机AD/DA实验报告1. 引言单片机(Microcontroller)是一种集成了处理器、存储器和输入输出接口等功能的微型电子计算机系统。
作为现代电子技术的重要组成部分,单片机在各个领域都有广泛的应用。
其中,AD(模数转换)和DA(数模转换)是单片机中常见的功能模块,用于将模拟信号转换为数字信号或将数字信号转换为模拟信号。
本实验旨在通过实际操作,了解单片机AD/DA的原理和应用。
2. 实验目的通过本次实验,我们的目标是:- 理解AD/DA的基本原理和工作方式;- 掌握单片机AD/DA的编程方法;- 实现AD/DA功能的应用。
3. 实验原理AD(Analog-to-Digital)转换是将模拟信号转换为数字信号的过程。
单片机通过采样和量化的方式将连续的模拟信号转换为离散的数字信号。
DA(Digital-to-Analog)转换则是将数字信号转换为模拟信号的过程。
单片机通过将数字信号经过数值处理,再通过电压输出方式将其转换为模拟信号。
4. 实验器材本次实验所需的器材包括:- 单片机开发板;- AD/DA转换模块;- 电源供应器;- 信号发生器;- 示波器。
5. 实验步骤5.1 连接实验电路将AD/DA转换模块与单片机开发板连接,按照实验电路图进行正确的接线。
5.2 编写程序使用C语言编写单片机程序,实现AD/DA的功能。
根据实验需求,可以选择使用单片机的内部AD/DA模块,也可以通过外部模块进行扩展。
5.3 烧录程序将编写好的程序烧录到单片机开发板中,确保程序可以正常运行。
5.4 实验测量使用信号发生器产生模拟信号,并通过AD/DA转换模块输入到单片机中。
通过示波器观察和测量AD/DA转换的结果,并与理论值进行对比。
5.5 数据处理将单片机采集到的数字信号进行处理,如滤波、放大等操作,再通过DA转换模块输出为模拟信号。
通过示波器观察和测量输出信号的波形和特性。
6. 实验结果与分析通过实验测量和数据处理,我们可以得到AD/DA转换的结果。
DA转换实验(与“实验”有关文档共10张)
第9页,共10页。
流程图
实验位置图:
第10页,共10页。
实验线路图
再逐渐升至5V,再从5V逐渐降至0V,再 3、了解单片机系统中扩展D/ A转换芯片的
W2使VREF 为+5V。 ”状态下,从起始地址0740H开始连
降至-5V的锯齿波电压。 1、了解D/ A转换与单片机的接口方法。
利用0832输出一个从-5V开始逐渐升0V 应能测出不断加大和减小的电压值 应能测出不断加大和减小的电压值 降至-5V的锯齿波电压。
续运行程序(输入0740后按EXEC键)。
7、用万用表或示波器测D/A输出端AOUT, 应能测出不断加大和减小的电压值
第7页,共10页。
本实验结束
返回
第8页,共10页。
D/A转换源程序:
2、将+12V插孔、—12V插孔通过导线连到外 上,电位器W2的输VIN连到+12V插孔,调节
1、把D/A区0832片选CS信号线接至译码Y0。 应能测出不断加大和减小的电压值 3、将D/A区WR插孔连到BUS3区XWR插孔。 ”状态下,从起始地址0740H开始连 3、将D/A区WR插孔连到BUS3区XWR插孔。 降至-5V的锯齿波电压。 应能测出不断加大和减小的电压值 5、用8芯排线将D/A区D0—D7与BUS2区XD0— 1、把D/A区0832片选CS信号线接至译码Y0。 续运行程序(输入0740后按EXEC键)。 3、将D/A区WR插孔连到BUS3区XWR插孔。 7、用万用表或示波器测D/A输出端AOUT, 3、了解单片机系统中扩展D/ A转换芯片的
上,电位器W2的输VIN连到+12V插孔,调节
第3页,共10页。
三、实验程序框图:
DA实验
实验D/A转换实验一、实验目的:1.学习8031内部计数器的使用和编程方法。
2.进一步掌握中断处理程序的编写方法。
3.了解D/A转换的基本原理。
4.了解D/A转换芯片0832的性能及编程方法。
5.了解单片机系统中扩展D/A转换的基本方法。
二、实验设备:CPU挂箱、8031CPU模块三、实验内容:利用DAC0832,编制程序产生锯齿波、三角波、方波。
三种波形轮流分别显示5秒。
秒数有定时器1确定。
四、实验原理:1.定时常数的确定定时器/计数器的输入脉冲周期与机器周期一样,为振荡频率的1/12。
本实验中时钟频率为6.0 MHZ,现要采用中断方法来实现0.5秒延时,要在定时器1中设置一个时间常数,使其每隔0.1秒产生一次中断,CPU响应中断后将R0中计数值减一,令R0=05H 即可实现0.5秒延时。
时间常数可按下述方法确定:机器周期=12÷晶振频率=12/(6×10⁶)=2us设计数初值为X,则(2e+16-X)×2×10-6=0.1,可求得X=15535化为十六进制则X=3CAFH,故初始值为TH1=3CH,TL1=AFH2.初始化程序包括定时器初始化和中断系统初始化,主要是对IP、IE、TCON、TMOD的相应位进行正确的设置,并将时间常数送入定时器中。
由于只有定时器中断,IP便不必设置。
3.设计中断服务程序和主程序中断服务程序除了要完成计数加1工作外,还要将时间常数重新送入定时器中,为下一次中断做准备。
4.D/A转换是把数字量转换成模拟量的变换,从D/A输出的是模拟电压信号。
产生锯齿波和三角波只需由A存放的数字量的增减来控制;要产生方波,只需对A直接赋00H 和FFH来控制。
5.本实验中,输入寄存器占偶地址端口,DAC寄存器占较高的奇地址端口。
两个寄存器均对数据独立进行锁存。
因而要把一个数据通过0832输出,要经两次锁存。
典型程6.序段如下:MOV DPTR,#PORTMOV A,#DATAMOVX @DPTR,AINC DPTRMOVX @DPTR,A其中第二次I/O写是一个虚拟写过程,其目的只是产生一个WR信号。
ARM的输入输出接口实验
ARM的输入输出接口实验一、实验目的●熟悉ARM芯片I/O口编程配置方法。
●通过实验掌握ARM芯片的I/O口控制LED显示的方法。
二、实验原理及基本技术线路图S3C44B0X芯片上共有71个多功能的输入输出管脚,它们分为7组I/O端口。
●两个9位的输入/输出端口(端口E和F)●两个8位的输入/输出端口(端口D和G)●一个16位的输入/输出端口(端口C)●一个10位的输出端口(端口A)●一个11位的输出端口(端口B)每组端口都可以通过软件配置寄存器来满足不同系统和设计的需要。
在运行主程序之前,必须先对每一个用到的管脚的功能进行设置,如果某些管脚的复用功能没有使用,可以先将该管脚设置为I/O口。
1.S3C44B0X芯片和端口相关的寄存器有:(1) 端口控制寄存器(PCONA-G)在S3C44B0X里,大多数的引脚都是多功能引脚。
因此,应当为每个引脚选择功能。
端口控制寄存器(PCONn)决定了每一个引脚的功能。
(2) 端口数据寄存器(PDATA-G)如果这些端口被设定为输出端口,输出数据可以被写入到PDATn的相应的位;如果被设定为输入端口,输入数据可以被读到PDATn的相应的位。
(3) 端口上拉寄存器(PUPC-G)端口上拉寄存器控制着每一个端口组的上拉寄存器的使能端。
当相应的位被设为0时,引脚接上拉电阻;当相应的位为1时,引脚不接上拉电阻。
(4) 外部中断控制寄存器(EXTINT)8个外部中断可以用多种信号方式所请求。
外部中断寄存器为外部中断设置了信号触发方法选择位,也设置了触发信号的极性选择位。
外部中断请求信号触发的方法有以下几种:低电平触发、高电平触发、下降沿触发、上升沿触发、双沿触发。
8个外部中断寄存器的具体设置情况请详见I/O的特殊功能寄存器。
因为每个外部中断引脚都有一个数字滤波器,这让中断控制器能够识别长于3个时钟周期的请求信号。
在实验板上端口B的引脚PB9和PB10被设置为输出口,并且分别与LED1、LED2连接。
DA转换实验
实验报告二、实验原理1. DAC0832芯片原理(1)内部结构图 DAC0832中有两级锁存器,第一级锁存器称为输入寄存器、它的锁存信号为ILE,第一级锁存器称为DAC寄存器它的锁存信号为传输控制信号XERF。
因为有两级锁存器,DAC0832可以工作在双级冲器方式,即在输出模拟信号的同时采集下一个数字量,这样能有效地提高转换速度。
此外,两级锁存器还可以在多个D/A转换器同时工作时,利用第二级锁存信号来实现多个转换器同步输出。
LE为高电平、GS和WR1为低电平时,LE1为高电平,输入寄存器的输出跟成输入而变化;此后,WR1由低变高时,LE1为低电平,资料被锁存到输人寄存器中,这时的输入寄存器的输出端不再跟随输人资料的变化而变化。
对第二级锁存器来说,XERF和WR2同时为低电平时,LE2为高电平,DAC寄存器的输出跟随其输人而变化;此后,当WR2由低变高时,LE2变为低电平,将输人寄存器的资料锁存到DAC寄存器中。
D/A转换结果采用电流形式输出。
若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。
运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。
DAC0832逻辑输人满足TTL电平,可直接与TTL电路或微机电路连接。
DAC0832的内部结构图如图4-41所示。
DAC0832的引脚排列如图4-42所示。
(2) DAC0832的引脚功能 DAC0832是20引脚的双列直插式芯片。
各引脚的特性如下: CS ——片选信号,和允许锁存信号ILE 组合来决定WR1是否起作用。
ILE ——允许锁存信号。
WRI ——写信号1,作为第一级锁存信号,将输人资料锁存到输入寄存器(此时,WRI 必须和CS 、ILE 同时有效)。
WR2——写信号2,将锁存在输人寄存器中的资料送到DAC 寄存器中进行锁存(此时,传输控制信号XERF 必须有效)XERF ——传输控制信号,用来控制WR2 D17-D10——8位数据输人端。
单片机实验之DA转换实验
一、实验目的1、掌握单片机与DAC0832的接口设计方法。
2、掌握Proteus软件与Keil软件的使用方法。
二、设计要求1、用Proteus软件画出电路原理图,在单片机的外部扩展片外三总线,并通过片外三总线与0832接口。
2、在单片机的外部扩展一个4个按键的键盘。
3、按下K0,产生连续方波信号。
4、按下K1,产生连续锯齿波信号。
5、按下K2,产生连续三角波信号。
6、按下K3,产生连续正弦波信号。
7、通过外接示波器观察波形。
三、电路原理图六、实验总结通过本次实验电路的设计,掌握了基本的DA转换电路单缓冲的设计;参考电压的选择;0832的片选;集成运放芯片的选择及接线;尤其是运放的反馈电阻,从而能够产生正常的波形。
七、思考题1、编程实现产生连续梯形波信号。
答:程序见程序清单。
四、实验程序流程框图和程序清单ORG 0000H/***********起始程序***********/START: LJMP MAINORG 0100H/***********监控程序***********/MAIN: MOV SP, #60HLOOP: LCALL KEYSSLJMP LOOPKEYSS: LCALL KEYJB ,KEYAAJB ,KEYBBJB ,KEYCCJB ,KEYDDJB ,KEYEERET/***********键功能程序*********/KEYAA: MOV R2 ,#00H ;锯齿波LOOP1: MOV DPTR ,#0000HMOV A ,R2MOVX @DPTR ,ADEC R2LCALL KEYSSLJMP LOOP1KEYBB: MOV DPTR ,#0000H ;矩形波LOOP2: MOV R3 ,#0FFHMOV A ,R3MOVX @DPTR ,ALCALL DELAYLCALL KEYSSMOV R3 ,#00HMOV A ,R3MOVX @DPTR ,ALCALL DELAYLCALL KEYSSLJMP LOOP2KEYCC: MOV R2 ,#00H ;三角波 MOV DPTR ,#0000HLOOP3: MOV A ,R2MOVX @DPTR ,AINC R2LCALL KEYSSCJNE R2 ,#0FFH ,LOOP3 LOOP4: MOV A ,R2MOVX @DPTR ,ADEC R2LCALL KEYSSCJNE R2 ,#00H ,LOOP4LJMP LOOP3KEYDD: MOV R2 ,#00H ;正弦波LOOP5: MOV DPTR ,#SINMOV A ,R2MOVC A ,@A+DPTRMOV DPTR ,#0000HMOVX @DPTR ,AINC R2LCALL KEYSSLJMP LOOP5KEYEE: MOV R2 ,#00H ;梯形波 MOV DPTR ,#0000HLOOP6: MOV A ,R2MOVX @DPTR ,AINC R2LCALL KEYSSCJNE R2 ,#0FFH ,LOOP6LCALL DELAY20msLOOP7: MOV A ,R2MOVX @DPTR ,ADEC R2LCALL KEYSSCJNE R2 ,#00H ,LOOP7LCALL DELAY20msLJMP LOOP6/*******常数表格***********/SIN:DB07FH ,082H ,085H ,088H ,08BH ,08FH ,092H ,095H ,098H ,09BH ,09EH ,0A1 H ,0A4H ,0A7H ,0AAH ,0ADHDB0B0H ,0B3H ,0B6H ,0B8H ,0BBH ,0BEH ,0C1H ,0C3H ,0C6H ,0C8H ,0CBH ,0CD H ,0D0H ,0D2H ,0D5H ,0D7HDB0D9H ,0DBH ,0DDH ,0E0H ,0E2H ,0E4H ,0E5H ,0E7H ,0E9H ,0EBH ,0ECH ,0EE H ,0EFH ,0F1H ,0F2H ,0F4HDB0F5H ,0F6H ,0F7H ,0F8H ,0F9H ,0FAH ,0FBH ,0FBH ,0FCH ,0FDH ,0FDH ,0FE H ,0FEH ,0FEH ,0FEH ,0FEHDB0FEH ,0FEH ,0FEH ,0FEH ,0FEH ,0FEH ,0FDH ,0FDH ,0FCH ,0FBH ,0FBH ,0FA H ,0F9H ,0F8H ,0F7H ,0F6HDB0F5H ,0F4H ,0F2H ,0F1H ,0EFH ,0EEH ,0ECH ,0EBH ,0E9H ,0E7H ,0E5H ,0E4 H ,0E2H ,0E0H ,0DDH ,0DBHDB0D9H ,0D7H ,0D5H ,0D2H ,0D0H ,0CDH ,0CBH ,0C8H ,0C6H ,0C3H ,0C1H ,0BE H ,0BBH ,0B8H ,0B6H ,0B3HDB0B0H ,0ADH ,0AAH ,0A7H ,0A4H ,0A1H ,09EH ,09BH ,098H ,095H ,092H ,08FH ,08BH ,088H ,085H ,082HDB07FH ,07CH ,079H ,076H ,073H ,06FH ,06CH ,069H ,066H ,063H ,060H ,05D H ,05AH ,057H ,054H ,051HDB04EH ,04BH ,048H ,046H ,043H ,040H ,03DH ,03BH ,038H ,036H ,033H ,031 H ,02EH ,02CH ,029H ,027HDB025H ,023H ,021H ,01EH ,01CH ,01AH ,019H ,017H ,015H ,013H ,012H ,010 H ,00FH ,00DH ,00CH ,00AHDB009H ,008H ,007H ,006H ,005H ,004H ,003H ,003H ,002H ,001H ,001H ,000 H ,000H ,000H ,000H ,000HDB000H ,000H ,000H ,000H ,000H ,000H ,001H ,001H ,002H ,003H ,003H ,004 H ,005H ,006H ,007H ,008HDB009H ,00AH ,00CH ,00DH ,00FH ,010H ,012H ,013H ,015H ,017H ,019H ,01A H ,01CH ,01EH ,021H ,023HDB025H ,027H ,029H ,02CH ,02EH ,031H ,033H ,036H ,038H ,03BH ,03DH ,040 H ,043H ,046H ,048H ,04BHDB04EH ,051H ,054H ,057H ,05AH ,05DH ,060H ,063H ,066H ,069H ,06CH ,06F H ,073H ,076H ,079H ,07CH/***********键扫子程序*********/KEY: LCALL KEYCHULIJZ EXITLCALL DELAYLCALL KEYCHULIJZ EXITMOV B ,20HKEYSF: LCALL KEYCHULIJZ KEY1POP PSWRET/*******延时子程序**********/ DELAY: MOV R7 ,#01H ;延时1ms DL1: MOV R6 ,#8EHDL0: MOV R5 ,#02HDJNZ R5 ,$DJNZ R6 ,DL0DJNZ R7 ,DL1RETDELAY20ms: MOV R6,#0D7H ;20ms DL2: MOV R5,#2DHDJNZ R5,$DJNZ R6,DL2NOPNOPRETEND五、实验结果(波形图)。
ARM的AD接口实验课程设计
ARM的A/D接口实验课程设计班级:电信091学号: 200916022121姓名:指导教师:陶福寿日期: 2011年10月12日目录一、实验目的 (3)二、实验内容 (3)三、预备知识 (3)四、实验设备及工具 (3)硬件:ARM嵌入式开发平台、PC机Pentium100以上、用于ARM920T的JTAG 仿真器、模拟电压信号源。
(3)软件:PC机操作系统Win2000或WinXP、EWARM集成开发环境、仿真器驱动程序、超级终端通讯程序。
(3)五、实验原理及说明 (3)1.A/D转换器 (3)2.A/D转换的重要指标 (3)六、实验步骤 (4)1.编写获取转换结果函数与主函数(main.c) (4)2. 启动H-JTAG 仿真器并进行初始化配置。
(6)3.启动EWARM新建工程,将“Exp2 ARM A/D接口实验”中的工程文件添加到工程中并调试运行。
(6)七、思考题 (7)1.逐次逼近型的A/D转换器原理是什么? (7)2.A/D转换的重要指标包括哪些? (8)3.ARM的A/D功能的相关寄存器有哪几个,对应的地址是什么? (8)4.如何启动ARM开始转换A/D,有几种方式?转换开始时ARM是如何知道转换哪路通道的?如何判断转换结束? (8)一、实验目的1.熟悉ARM本身自带的八路十位A/D控制器及相应寄存器。
2.编程实现ARM系统的A/D功能。
3.掌握带有A/D的CPU编程实现A/D功能的主要方法。
二、实验内容学习A/D接口原理,了解实现A/D系统对于系统的软件和硬件要求。
阅读ARM芯片文档,掌握ARM的A/D相关寄存器的功能,熟悉ARM系统硬件的A/D相关接口。
利用外部模拟信号编程实现ARM循环采集全部前3路通道,并且在超级终端上显示。
三、预备知识1、用EWARM集成开发环境,编写和调试程序的基本过程。
2、ARM应用程序的框架结构。
3、能够自己完成在LCD上显示指定参量。
四、实验设备及工具硬件:ARM嵌入式开发平台、PC机Pentium100以上、用于ARM920T的JTAG仿真器、模拟电压信号源。
嵌入式实验报告_ARM的AD接口实验
贵州大学实验报告率直接与转换器的位数有关,所以一般也可简单地用数字量的位数来表示分辨率,即n 位二进制数,最低位所具有的权值,就是它的分辨率。
值得注意的是,分辨率与精度是两个不同的概念,不要把两者相混淆。
即使分辨率很高,也可能由于温度漂移、线性度等原因,而使其精度不够高。
2)精度(Accuracy)精度有绝对精度(Absolute Accuracy) 和相对精度(Relative Accuracy) 两种表示方法。
03-10 A D转换原理图屮①绝对误差在一个转换器中,对应于一个数字量的实际模拟输入电压和理想的模拟输入电压之差并非是一个常数。
我们把它们之间的差的最大值,定义为“绝对误差”。
通常以数字量的最小有效位(LSB)的分数值来表示绝对误差,例如:土1LSB等。
绝对误差包括量化误差和其它所有误差。
②相对误差是指整个转换范围内,任一数字量所对应的模拟输入量的实际值与理论值之差,用模拟电压满量程的百分比表示。
例如,满量程为10V, 10位A/D芯片,若其绝对精度为土1/2LSB,则其最小有效位的量化单位:9.77mV,其绝对精度为=4.88mV,其相对精度为0.048%。
Wi p 3it :nj *or Intern.pt Vtode列3-11 AD 皆换和融損理书门功能櫃風-编程注意事项:1. A/D 转换的数据可以通过中断或查询的方式来访问,如果是用中断方式,全部的转换时间(从A/D 转换的开始到数据读出) 要更长,因为中断服务程序返回和数据的访问的原因。
如果是查询方式则要检测ADCC0N[15](转换结束标志位)来确定从 ADCDAT 寄存器读取的数据是否是最新的转换数据。
2.A/D 转换开始的另一种方式是将 ADCC0N[1置为1,这时只有有读转换数据的信号 A/D 转换就会同步开始。
与AD 相关的寄存器主要是如下两个: ⑴ADCCON A/D 转换控制寄存器。
其地址和意义参见下表:RegisterAddressR/WDtescript ionResft Vij lueAlices0J ( 58000000ADC control register 0x3FC4ABCCWDescriptionItiiual StateKFLG[15]End or tun”色r 琢ion fl^g (r<?iid cjnly}- 0 = A/D conversion in pr-ocess L - EndA./D cGfivursionEINT[23]EINTJ2T EIKT]21] EIMI2AJ VDQA ADCAIN :7|AIM 冋 AIW ;4JAlN(3]A1N P)AINJJF1 InlenupIMUXOC InputCoritfoiExternal Irarwift'af COHtfDl■耳 VMON ■*nXTON .XMON ADC Iniic-rfjte ATgixJiSaeenCflrttrdifrADCCO寄存器的第15位是转换结束标志位,为1时表示转换结束。
第(7)次实验报告-DA转换
0x38,0x43,0x4e,0x5a,0x66,0x73};//正弦波代码表
4、将调试正确的程序粘贴在此处,并对重要语句添加注释信息。
#include <reg52.h>
#include <absacc.h> //XBYTE[]头文件
1、实验要求:参考教材P280页的第一个程序段编程产生锯齿波。
2、已知条件:实验箱上D/A转换器0832芯片的端口地址为“7FFFH”。
3、将调试正确的程序粘贴在此处,并对重要语句添加注释信息。
第二个实验:编程产生“锯齿波”
1、实验要求:参考教材P280页的第一个程序段编程产生锯齿波。
2、已知条件:实验箱上D/A转换器0832芯片的端口地址为“7FFFH”。
《单片机基础》第7次实验报告
实验内容
利用D/A转换芯片0832编程产生“锯齿波”、“三角波”、“阶梯波”。
实验目的
学习对D/A转换芯片0832的编程。
姓名
学号
班级
电信12
实验设备:实验箱配件一套;数字示波器一台。
实验准备:
(1)实验箱的拨码开关K10拨在下方;KC拨在上方。
(2)将实验箱上的P0.0~P0.7接至U14D0~U14D7;WR接至U14WR。
DAC0832 = 0x00;
Delay();
DAC0832 = 0xff;
Delay();
}
void triangleWave()
{
uchar temp =0x00;
for(temp;temp<0xff;temp++)
{
基于ARM的AD和DA转换模块的设计
基于ARM的A/D和D/A转换模块的设计1黎大鹏, 程良伦(广东工业大学自动化学院,广州510060)摘要:近年来,传感器网络技术的兴起,为模数和数模转换的应用注入新的血液。
在此大趋势下,本文介绍了在ARM系统下,通过对TI公司的TLC2543和DAC5573的控制,来实现 A/D和D/A转换模块的设计。
该系统具有良好可扩展性,强大的可操作性,广泛应用在传感器技术的各个方面。
关键词:A/D; D/A; TLC2543; DAC5573Design of A/D and D/A change system based on ARMLi DaPeng, Cheng Liang-lun(Faculty of Automation, Guangdong University of Technology, Guangzhou 510050)Abstract:The application of A/D and D/A change have been entering into a new step based on development of the sensor network technology in recent years. The paper introduced the design of A/D and D/A change through controlling TLC2543 and DAC5573 that were made from TI Company based on the S3C4510 system. The system had a great expansion and a strong operation, and it apply in all aspects of the technology of the sensor.Key word: A/D; D/A; TLC2543; DAC55730、引言传感测试技术正朝着多功能化、微型化、智能化、网络化、无线化的方向发展[1]。
实验五 单片机DA输出实验
实验五单片机DA输出实验一、实验目的1、了解D/A转换的基本原理。
2、了解D/A转换芯片0832的性能及编程方法。
3、了解单片机系统中扩展D/A转换的基本方法。
二、实验说明利用DAC0832,编制程序产生锯齿波、三角波、正弦波。
三种波轮流显示,用示波器观看。
三、实验仪器计算机伟福实验箱(lab2000P )示波器四、实验内容1、D/A转换是把数字量转换成模拟量的变换,实验台上D/A电路输出的是模拟电压信号。
要实现实验要求,比较简单的方法是产生三个波形的表格,然后通过查表来实现波形显示。
2、产生锯齿波和三角波的表格只需由数字量的增减来控制,同时要注意三角波要分段来产生。
要产生正弦波,较简单的方法是造一张正弦数字量表。
即查函数表得到的值转换成十六进制数填表。
D/A转换取值范围为一个周期,采样点越多,精度越高些。
本例采用的采样点为256点/周期。
3、8位D/A转换器的输入数据与输出电压的关系为U(0∽-5V)=Uref/256×NU(-5V∽+5V)=2·Uref/256×N-5V(这里Uref为+5V)五、思考题1、改变输出波形的周期和幅度,缩小或者提高;2、程序改为查表方式输出;如何计算出数据表;六、源程序修改原理及其仿真结果原程序:CS0832 equ 0a000hmov dptr, #CS0832mov a, #0movx @dptr, amov a, #40hmovx @dptr, amov a, #80hmovx @dptr, amov a, #0c0hmovx @dptr, amov a, #0ffhmovx @dptr, aljmp $end上述程序只能输出一次波形,无法用示波器观察,因此程序改为用查表法输出正弦波,用循环的方法输出三角波。
输出正弦波程序为:ORG 000HMAIN:MOV R1,#00HLOOP:MOV A,R1MOV DPTR,#SINTABMOVC A,@A+DPTRMOV DPTR,#0a000hMOVX @DPTR,AINC R1ACALL DELAYAJMP LOOPDELAY:MOV R3,#3D1: NOPNOPNOPDJNZ R3,D1RETSINTAB:DB 80H,83H,86H,89H,8DH,90H,93H,96HDB 99H,9CH,9FH,0A2H,0A5H,0A8H,0ABH,0AEHDB 0B1H,0B4H,0B7H,0BAH,0BCH,0BFH,0C2H,0C5HDB 0C7H,0CAH,0CCH,0CFH,0D1H, 0D4H,0D6H,0D8HDB 0DAH,0DDH,0DFH,0E1H,0E3H, 0E5H,0E7H,0E9HDB 0EAH,0ECH,0EEH,0EFH,0F1H, 0F2H,0F4H,0F5HDB 0F6H,0F7H,0F8H,0F9H,0FAH, 0FBH,0FCH,0FDHDB 0FDH,0FEH,0FFH,0FFH,0FFH, 0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH,0FEH,0FDHDB 0FDH,0FCH,0FBH,0FAH,0F9H, 0F8H,0F7H,0F6HDB 0F5H,0F4H,0F2H,0F1H,0EFH, 0EEH,0ECH,0EAHDB 0E9H,0E7H,0E5H,0E3H,0E1H, 0DEH,0DDH,0DAHDB 0D8H,0D6H,0D4H,0D1H,0CFH, 0CCH,0CAH,0C7HDB 0C5H,0C2H,0BFH,0BCH,0BAH, 0B7H,0B4H,0B1HDB 0AEH,0ABH,0A8H,0A5H,0A2H, 9FH, 9CH, 99HDB 96H, 93H, 90H, 8DH, 89H, 86H, 83H, 80HDB 80H, 7CH, 79H, 78H, 72H, 6FH, 6CH, 69HDB 66H, 63H, 60H, 5DH, 5AH, 57H, 55H, 51HDB 4EH, 4CH, 48H, 45H, 43H, 40H, 3DH, 3AHDB 38H, 35H, 33H, 30H, 2EH, 2BH, 29H, 27HDB 25H, 22H, 20H, 1EH, 1CH, 1AH, 18H, 16HDB 15H, 13H, 11H, 10H, 0EH, 0DH, 0BH, 0AHDB 09H, 08H, 07H, 06H, 05H, 04H, 03H, 02HDB 02H, 01H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 01H, 02HDB 02H, 03H, 04H, 05H, 06H, 07H, 08H, 09HDB 0AH, 0BH, 0DH, 0EH, 10H, 11H, 13H, 15HDB 16H, 18H, 1AH, 1CH, 1EH, 20H, 22H, 25HDB 27H, 29H, 2BH, 2EH, 30H, 33H, 35H, 38HDB 3AH, 3DH, 40H, 43H, 45H, 48H, 4CH, 4EHDB 51H, 55H, 57H, 5AH, 5DH, 60H, 63H, 66HDB 69H, 6CH, 6FH, 72H, 76H, 79H, 7CH, 80HEND改变幅度只需改变查找表中的数值即可,改变周期改变延时中的“DELAY:MOV R3,#3”即可,它的程序不再写出。
单片机DA转换实验报告
单片机DA转换实验报告实验九d/a实验报告㈠实验目的1.2.3.4.掌握单片机与d/a的接口及编程方法;通过d/a动态波形输入进一步认知d/a的工作原理;融合实验六中的a/d去检验软硬件的正确性。
进一步介绍单片机系统地址分配概念。
㈡实验器材1.2.3.4.5.g6w仿真器mcs―51实验板pc机信号发生器示波器一台一台一台一台一台㈢实验内容及要求dac0832就是附带双锁存器且可以与单片机8051轻易USB的8十一位d/a,从实验板的电原理图可知,当0832管脚ile为低,cs2为高时,8051对0832载入等待切换的8十一位数字量,当对0832载入任一数(wr、cs2都为高)时,8051启动d/a切换。
把具有一定规律变化的数据连续送到0832,可用示波器在运放741输出端看到一定规律的动态波形。
将实验六中a/d所余数据轻易送至0832,在d/a输入端的也需用示波器观测至还原成后的a/d输出端的信号。
注意:在实验前,应先检查dac0832的参考电压是否正确。
(建议dac0832的参照电压值vref=-5v,用万用表观测dac0832芯片的8脚电压值。
若不对,可以调节实验板上的电位器w3去发生改变d/a的参照电压值。
)㈣实验步骤1.接ile至高电平(+5v),根据cs2与高位地址线的相连接情况,确认0832在系统中的地址。
2.将微机与伟福仿真系统及51实验板相连接。
3.编写双向锯齿波或三角波输出的d/a程序,利用伟福仿真系统及计算机编订成目标码,运转并调试程序,用示波器观测实验结果。
4.编写送a/d数据至d/a转换程序,并将在实验六中所编写a/d采样程序与之相连接女团,运用伟福仿真系统及计算机编订成目标码,运转并调试程序,用示波器观测对照a/d输出端的和d/a输入端的波形。
㈤实验框图寄存器复置切换初值已经开始已经开始调a/d切换子程序取样n个数据㈥思考题1.在实验步骤4中,对照了a/d输出端的和d/a输入端的波形,它们存有什么不同?为什么?a/d输入端的就是正弦波形,而d/a输入端的就是一段直流提一段正弦波形。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.3 ARM的D/A接口实验
一、实验目的
1.学习D/A转换原理
2.掌握MAX504D/A转换芯片的使用方法
3.掌握不带有D/A/的CPU扩展D/A功能的主要方法。
二、实验内容
学习D/A接口原理,了解实现D/A系统对于系统的软件和硬件要求。
阅MAX504芯片文档,掌握其使用方法,编程实现正弦波信号的输出,利用示波器观测DA1口的实验输出,。
三、预备知识
1、用ARM ADS1.2集成开发环境,编写和调试程序的基本过程。
2、ARM应用程序的框架结构。
四、实验设备及工具
硬件:ARM嵌入式开发平台、用于ARM920T的JTAG仿真器、PC机Pentium100以上、示波器。
软件:PC机操作系统Win2000或WinXP、ADS1.2集成开发环境、仿真器驱动程序、超级终端通讯程序
五、实验原理及说明
1.D/A转换器
DA转换器的内部电路构成无太大差异,一般按输出是电流还是电压、能否作乘法运算等进行分类。
大多数DA转换器由电阻阵列和n个电流开关(或电压开关)构成。
按数字输入值切换开关,产生比例于输入的电流(或电压)。
1)电压输出型(如TLC5620)
电压输出型DA转换器虽有直接从电阻阵列输出电压的,但一般采用内置输出放大器以低阻抗输出。
直接输出电压的器件仅用于高阻抗负载,由于无输出放大器部分的延迟,故常
作为高速DA转换器使用。
2)电流输出型(如THS5661A)
电流输出型DA转换器很少直接利用电流输出,大多外接电流—电压转换电路得到电压输出,转换有两种方法:一是只在输出引脚上接负载电阻而进行电流—电压转换,二是外接运算放大器。
用负载电阻进行电流—电压转换的方法,虽可在电流输出引脚上出现电压,但必须在规定的输出电压范围内使用,而且由于输出阻抗高,所以一般外接运算放大器使用。
此外,大部分CMOS DA转换器当输出电压不为零时不能正确动作,所以必须外接运算放大器。
当外接运算放大器进行电流电压转换时,则电路构成基本上与内置放大器的电压输出型相同,这时由于在DA转换器的电流建立时间上加入了运算放入器的延迟,使响应变慢。
此外,这种电路中运算放大器因输出引脚的内部电容而容易起振,有时必须作相位补偿。
3)乘算型(如AD7533)
DA转换器中有使用恒定基准电压的,也有在基准电压输入上加交流信号的,后者由于能得到数字输入和基准电压输入相乘的结果而输出,因而称为乘算型DA转换器。
乘算型DA转换器一般不仅可以进行乘法运算,而且可以作为使输入信号数字化地衰减的衰减器及对输入信号进行调制的调制器使用。
4)一位DA转换器
一位DA转换器与前述转换方式全然不同,它将数字值转换为脉冲宽度调制或频率调制的输出,然后用数字滤波器作平均化而得到一般的电压输出(又称位流方式),用于音频等场合。
2.DA转换器的主要技术指标:
1)分辩率(Resolution) 指最小模拟输出量(对应数字量仅最低位为‘1’)与最大量(对应数字量所有有效位为‘1’)之比。
2)建立时间(Setting Time) 是将一个数字量转换为稳定模拟信号所需的时间,也可以认为是转换时间。
DA中常用建立时间来描述其速度,而不是AD中常用的转换速率。
一般地,电流输出DA建立时间较短,电压输出DA则较长。
其他指标还有线性度(Linearity),转换精度,温度系数/漂移。
3.本开发板上使用的MAX504是10位D/A转换器,其特点如下:
(1)由单个5V电源供电
(2)电压输出缓冲
(3)内部2.048V参考电压
1LSB(MAX)
(4)INL=
2
(5)电压不随温度变化
(6)可变的输出范围:0V~VDD,VSS~VDD
(7)上电复位
(8)串行输出
表4-1 管脚定义
4.MAX504在开发板中的连接
J1002
DAOUT
图4-1 Max504的连接
图中是两路DA输出,RFB连接VOUT、BIPOFF连接AGND,使得输出电压范围为
0~2V REFIN,即0~4.069V。
时钟和输入信号分别与SPI接口的时钟、发送端相连。
可以通过SPISend函数(spi.c)MAX504发送数据。
发送数据时要注意,MAX504可接受12位的数据,但低两位不起作用。
SPISend函数一次只能发送8位的数据,所以发送数据时应先将数
据左移两位,然后先发送高八位,再发送低八位数据。
CLR和CS分别由MAX504_CLEAR()
和MAX504_ENABLE()、MAX504_DISABLE()函数(Max504.c)控制。
六、实验步骤
1.新建工程,将“Exp3 D/A实验”中的文件添加到工程。
2.定义宏(Max504.c)
#define MAX504_CS 0x2 //EXIO1
#define MAX504_CLR 0x1 //EXIO0
#define SIOLSB 0x40
#define MAX504_ENABLE() do{CLREXIOBIT(MAX504_CS);}while(0)
#define MAX504_DISABLE() do{SETEXIOBIT(MAX504_CS);}while(0)
#define MAX504_CLEAR() do{CLREXIOBIT(MAX504_CLR);Delay(1);
SETEXIOBIT(MAX504_CLR);}while(0)
#define Max504_FULL 4.096f
3.编写D/A输出函数(Max504.c)
图4-2 D/A输出函数
4.编写主函数(main.c),输出方波信号
图4-3 主函数
4.下载运行程序,调节示波器,如CH1 5.00V,M 25.0ms,观看波形。
七、思考题
1.D/A转换器的分类。
2.D/A转换器的主要技术指标。
3. MAX504的特点及使用方法。