第10章AD转换模块
DSP-10章AD和11章SPI

[1]允许发送/禁止发送 [0]使能中断/禁止中断.
3.状态寄存器SPISTS:[7]超时标志
(超时:没有取走接收的数据前又接到一个字符)
[6]中断标志 [5]发送缓冲器满标志 4.波特率配置SPIBRR 5.仿真接收缓冲寄存器SPIRXEMU(读时不清中断标志) 6.接收缓冲寄存器SPIRXBUF(右对齐方式) 7.发送缓冲寄存器SPITXBUF 8.发送/接收移寄存器SPIDAT(先高后低) 9.中断优先级控制寄存器SPIPRI
3.ADC时钟预定标:结构如下:
ACQPS3~ACQPS0 */2 CPU clock *1~16 PS S/H (2.PS)
若CPS=0,PS=CLK(fclk=fc)
1 A/d 11.ACLK 一次APC转换时间 S/H时间+AD转换时间
CPS=1,PS=2CLK(fCLK=fc/2)
4.校准模式
五.ADC转换应用举例:
本节介绍一个A/D采样的例程,该程序用事件管理器B的定时器4定时时间 到来触发A/D采样的启动。采样时采用级连模式,一次作16个转换,转换通道分 别是0-15。转换完成后,在A/D中断服务子程序中将转换结果读出。该程序只考 虑了作一次A/D采样。
.include “F2407REGS.H” .def _c_int0 (1)建立中断向量表 .sect “.vectors” RSVECT B _c_int0 INT1 B GISR1 INT2 B PHANTOM INT3 B PHANTOM INT4 B PHANTOM INT5 B PHANTOM INT6 B PHANTOM RESERVED B PHANTOM SW_INT8 B PHANTOM : SWINT31 B PHANTOM
ad 转换原理

ad 转换原理
AD转换原理是指将模拟信号转换为数字信号的过程。
这个过
程由三个主要步骤组成:采样、量化和编码。
首先是采样步骤。
在采样过程中,模拟信号被定期测量和记录,生成一系列离散的采样值。
这些采样值表示了模拟信号在不同时刻的幅度。
然后是量化步骤。
在量化过程中,采样值被映射为一组离散的量化级别。
通过将采样值分配给最接近的量化级别,模拟信号的幅度被近似表示为离散数值。
这个过程引入了量化误差,即原始模拟信号与量化表示之间的差异。
最后是编码步骤。
在编码过程中,量化后的信号通过数字编码器转换为二进制码字。
编码器将每个量化级别映射为一个二进制代码,以便数字信号可以被存储和传输。
常见的编码方法包括二进制、格雷码和翻转码等。
通过AD转换,模拟信号可以被数字系统处理和分析。
然而,由于采样频率和量化分辨率的限制,AD转换引入了采样误差
和量化误差。
合理选择采样频率和量化分辨率可以平衡系统的复杂性和信号质量。
总结而言,AD转换原理包括采样、量化和编码三个步骤,它
们共同将模拟信号转换为数字信号,实现了模拟和数字之间的转换。
这个过程在许多领域中广泛应用,如通信、音频处理、图像处理等。
第10章 AD与DA转换器接口

2. DAC0832 的引脚定义 DI0~DI7: 数字量输入。 ILE: 输入锁存允许。
CS : 片选。
WR1 : 写信号1 WR 2 : 写信号2 XFER 2 : 传递控制
控制第一级缓
冲器的锁存
控制第二级缓
冲器的锁存
VREF:基准电压。
AGND:模拟信号地。
VCC:工作电源。 DGND:数字信号地。 IOUT1:
DI0-3:低4位数字量输入数据线 DI4-11:高8位数字量输入数据线 /CS=0,/WR1=0时,B1//B2=0,打开低4位锁存器 /CS=0,/WR1=0时,B1//B2=1,打开高8位锁存器 /XFER=0,/WR2=0时,打开12未DAC寄存器 Vref 参考电压输入 Iout1、Iout2模拟电流输出 AGNG、DGNA模拟数字信号地线 Rfb 反馈电阻输入
DAC1210与系统总线的连接
3. DAC1210 软件设计
若220H221H选择/CS,地址为222H223H选择/XFER, 则地址为220H时选择4位输入寄存器,为221H时选择8位 输入寄存器,为222H时选择12位DAC寄存器。待转换的 数据已经放在DATAH和DATAL两个存储单元中,则可用 下面的程序完成一次转换。 MOV DX,220H ;低4位寄存器地址 MOV AL,DATAL ;低4位数据 OUT DX,AL ;输出低4位 INC DX ;高8位寄存器地址 MOV AL,DATAH ;高8位数据 OUT DX,AL ;输出高8位数据 MOV DX,222H ;DAC寄存器 OUT DX,AL ;启动12位数据转换
D/A 转换器能够转换的二进制数的位数。
例如8位D/A,转换后电压满度为5V,
则其能分辨的最小电压=5v/2820mv
微机原理第5版周荷琴

采样脉冲S(t)是周期Δ、宽度t0的矩形脉冲序列。 采样脉冲出现时, S接通t0秒, 其余时间断开。 结果, 输出宽度t0、周期Δ的脉冲序列x(nΔ), 序列幅
度被x(t)所调制, 这个过程就是采样。
x(nΔ)序列即为采样所得的离散模拟量。
➢量化单位q:每个 分层包含的电压 范围;
➢q越小, 采样精度 越高。
中国科学技术大学
10.1 概述
第10章 A/D和D/A
数字量编码:数字量可用若干种代码来编码。 图中为3位二进制编码,即用000~111表示数字 量0~7。
采样率fS:采样间隔t的倒数,t越小,fS越高, 即每秒采集的点数越多,数字信号越接近于原 信号。
N=d12-1+d22-2+…+dn2-n ➢ 系数di=0或1,是二进制小数中第i位上的数码。 ➢ 2-n是小数各位上的加权。第1位加权最大为1/2(最高
有效位MSB);最右边第n位加权最小为1/2n(最小 有效位LSB),等于量化单位q。
➢ 自然二进制编码的小数点不表示出来。
中国科学技术大学
10.1 概述
中国科学技术大学
10.1 概述
2. 编码
第10章 A/D和D/A
数字量编码:经采样和量化后,模拟量数 字量,数字量要用代码表示。
编码的形式:如,二进制码、BCD码、ASCII 码等。
常用编码形式:自然二进制编码,双极性二 进制编码。
选定编码方式:特定器件中编码方式是固定 的,有些器件可通过外部连线来选择几种编 码方式。
中国科学技术大学
10.1 概述
自然二进制码
第10章 A/D和D/A
量化过程将参考电压VR设定的满量程(FSR)电压 值分成2n等分,然后看采样值落在哪个分层内,便量 化成相应的数字量。因此输入模拟量与满量程的比值 是小于1的小数。用二进制小数形式表示数字量,即 自然二进制码。
第10章AD及D

2.ADC 0809接口与应用
图10-2 是ADC0809与8031单片机的一种常用接口电路图。8路模拟量的变化范围在0~5V间,ADC0809的 EOC转换结束信号接803l的外部中断1上,803l通过地址线P2.0和读、写信号来控制转换器的模拟量输入通 道地址锁存、启动和输出允许。模拟输入通道地址A、B、C由P0.0~P0.2经锁存器提供。ADC0809时钟输 入由单片机ALE经2分频电路获得,若单片机时钟频率符合要求,也可不加2分频电路。
MOVX @DPTR,A ;启动A/D LP: JB P3.3,LP ;等待A/D转换结束
MOV DPTR,#0FF0lH ;A/D高8位数据口地址A0=0,R/ =l MOVX A,@DPTR ;读高8位数据 MOV @Rl,A ;存入片内RAM
INC R1 MOV DPTR,#0FF03H ;低4位数据口地址A0=1,R/ =1 MOVX A,@DPTR ;读低4位数据 MOV @R1,A ;存入片内RAM
ADC0809是28引脚DIP封装的芯片,各引脚功能如下: IN0~IN7(8条):8路模拟量输入,用于输入被转换的模拟电压。 D7~D0为数字量输出。 A、B、C:模拟输入通道地址选择线,其8位编码分别对应IN0~IN7,用于选择IN7~IN0上哪一路模拟电压 送给比较器进行A/D转换。
ALE:地址锁存允许,高电平有效。由低至高电平的正跳变将通道地址锁存至地址锁存器,经译码后控制八路 模拟开关工作。
②查询方式 A/D转换芯片有表明转换完成的状态信号,例如ADC0809的EOC端。因此,可以用查询方式,软件测试EOC的
10AD转换器

uo (V)
d0 输入 d1 uo 或 io
…
dn-1
D/A
输出
7 6 5 4 3 2 1 0
D
000 001 010 011 100 101 110 111
uo Ku (dn 1 2n 1 dn 2 2n 2 d1 21 d0 20 )
《数字电子技术基本教程》
Vi n 2
量化误差 =
如:采样的电 压分别是7/8V (0.875)和 0.9V时,编码 都为111,但前者 无误差,后者 存在误差。
输入 信号 1V 7/8V
二进制 代表的模拟 代码 电压 111 110 7=7/8 (V)
输入 信号 1V
二进制 代表的模拟 代码 电压
111
7=14/15(V) 6=12/15(V) 5=10/15(V) 4= 8/15(V) 3= 6/15(V) 2= 4/15(V) 1= 2/15(V) 0 = 0 (V)
vo RF i
V R i REF (d3 23 d 2 22 d1 21 d 0 20 ) 2 24
缺点:电阻值分散,相差太大
《数字电子技术基本教程》
10.2.2 倒T型电阻网络DAC
电阻网络中的种类少 (仅R和2R两种)
R
不论模拟开关接到运算放大器的 反相输入端(虚地)还是接到地, 也就是不论输入数字信号是1还是0, 各支路的电流不变。
《数字电子技术基本教程》
DAC0832
特点 ① 8位DA转换器 ② COMS工艺 ③ 倒T型电阻网络 ④ 内部有2个数据寄存器 ⑤ 直通、单缓冲、双缓冲三种工作方式
《数字电子技术基本教程》
VCC(+5V) NC GND VEE Io D7 D6 D5 D4 1 2 3 4 5 6 7 8 引脚排列图 DAC0808 16 15 14 13 12 11 10 9 COP VREF(-) VREF(+ ) VCC D0 D1 D2 D3 D0 D1 D2 D3 D4 D5 D6 D7 2.4kΩ 5 13 6 7 8 DAC0808 9 10 11 12 3 14 15 2 4 16 Io RL +VREF(+5V) 2.4kΩ
ad转换电路原理

ad转换电路原理
AD转换电路是指将模拟信号转换为数字信号的电路。
在数字
化时代,许多信号需要进行AD转换以便进行数字处理和存储。
AD转换电路由模拟部分和数字部分组成。
模拟部分包括采样和保持电路、放大电路和滤波电路。
采样和保持电路负责将连续模拟信号转换为离散的采样值,并保持在一个存储元件中。
放大电路将采样值放大到适合转换的范围。
滤波电路消除采样过程中引入的噪音和干扰,保证转换结果的准确性。
数字部分主要由ADC(模数转换器)和数字处理电路组成。
ADC是核心部件,将模拟信号转换为相应的数字代码。
常见
的ADC有逐次逼近型ADC、逐次比较型ADC和闪存型ADC 等。
数字处理电路可以对ADC输出进行数字信号处理,如滤波、放大、数值计算等。
AD转换电路的原理基于采样定理和码化原理。
采样定理要求
模拟信号在采样过程中满足一定的采样频率,以保证采样后的信号的还原性。
码化原理是将连续的模拟信号转换为离散的数字信号,通过离散化的过程,将模拟信号的幅度转化为相应的数字量。
在实际应用中,AD转换电路的设计需要考虑诸多因素,包括
采样率、分辨率、信噪比、失真等指标。
同时,还需根据具体需求选择合适的ADC类型和精度。
总的来说,AD转换电路通过将模拟信号转换为数字信号,实现了对信号的数字化处理和存储。
它在通信、音频处理、自动控制等领域有着广泛的应用。
单片机第10章 AD-DA转换与单片机接口技术

10 11 30 29
U4
D0 D1 D2
3 4 7 8 13 14 17 18
D0 D1 D2 D3 D4 D5 D6 D7
第十章 A/D、D/A转换与单片机接口技术
10.0 你知道吗 10.1 A/D转换器及其与单片机的接口 10.2 D/A转换器及与单片机的接口
你知道吗 在自动控制领域中,通常用单片机进行实时控制和数据处理,我们知道,被 测和被控参数常常是一些连续变化的物理量即模拟量,如温度、速度、电压、 电流、压力等,而单片机只能加工和处理数字量,因此在单片机应用系统中处 理模拟量信号时,就需要进行模拟量与数字量之间的转换,即A/D和D/A转换。
二、双积分式A/D转换原理
双积分A/D转换采用间接测量原理,即将被测电压值VX转换成时间常数,通过测量 时间常数得到未知电压值。其原理如下图所示。它由电子开关、积分器、比较 器、计数器、逻辑控制门等部件组成。
积分器
由于双积分的二次积分时间比较长,因此
Vx VR
比较器
A/D转换速度慢,但精度高。
计数器 输出
五、ADC0809与单片机的接口电路
R1
D1
R2
D2
R3
D3
R4
D4
D5
R5
R6
D6
R7
D7
R8
D8
U1
P10 P11
P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8
P10 P11 P12 P13 P14 P15 P16 P17
P12
13 12
INT1 INT0
ADD-A﹑ADD-B﹑ADD-C:3根地址线。ADD-A为低位地址,ADD-C为高位地址, 用于选择8路模拟量,其地址状态与所选模拟量的对应关系见表10.1。 D0~D7:8位数字量输出端。 ALE:地址锁存允许信号,ALE为高电平时,将ADD-A﹑ADD-B﹑ADD-C的地址 状态送入地址锁存器中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注意: 在CPS为0时,PS和ACLK将和CPU时钟相等。
10.4 校准模式
校准模式:计算ADC模块的零点、中点和最大值时的 偏移误差。
偏移误差为二进制补码,保存在校准寄存器中(二 进制补码操作只适用于误差值为负的情况)。
ADC硬件自动将偏移误差量加到转换值上。
事件管理器A(EVA)启动排序器
①一旦复位和初始化之后,SEQ1就开始等待触发源 的到来。
②第 一 个 触 发 源 到 来 之 后 , 执 行 通 道 选 择 值 为 CONV00 ( I1 ) 、 CONV01 ( I2 ) 和 CONV02 ( I3 ) 的3个转换。
③转换完成之后,SEQ1等待另一个触发源的到来。
一次自动排序完成的转换数为MAX CONVn+1。
例1: 在双排序器模式下用SEQ1进行A/D转换。 设:用SEQ1完成7个通道的转换 排序自动转换:通道2、3、2、3、6、7、12。 MAX CONV1的值设为6
CHESELQn寄存器填入值
表中数值为十进制,x为不关心的值。
初始化ADC寄存器
连
一样。
使用中断方式1:在每次EOS到来时,产生中断请求。 (1)排序器设置MAX CONVn=1以转换I1和I2。 (2)在中断服务子程序a中,软件将MAX CONVn的 值改为2以转换V1、V2和V3。 (3)在中断服务子程序b中完成以下操作: .MAX CONVn改为1,用来转换I1和I2; .I1、I2、V1、V2和V3的值从ADC结果寄存器中读出; .复位排序器。 (4)重复第(2)步和第(3)步。
RESULT15)。
注意:F240xA器件的ADC模块和F24x器件的ADC模 块不兼容,ADC的程序代码不能相互移植。
10.2 自动排序器的工作原理
ADC的排序器:包括两个独立的最多可选择8个模拟转 换通道的排序器(SEQ1和SEQ2)。
这两个排序器可级连成一个可选择16个转换模拟通道 的排序器(SEQ)。
要求: 触发源1(定时器下溢)启动3个自动转换(I1、I2 和I3); 触发源2(定时器周期)启动3个自动转换(V1、V2 和V3)。 触发源1和触发源2在时间上是分开的,即间隔25μS。
注:触发源1和2可以是来自事件管理器EVA,外部引 脚或软件的SOC信号。
MAX CONV1的值置为2。 ADC模块的输入通道选择排序控制寄存器
软件触发
事件管理器A (EVA SOC)触发
外部引脚 (ADC SOC)触发
事件管理器B (EVB SOC)触发
外部引脚 (ADC SOC)触发
注:
1.排序器处于空闲状态:在接收到一个触发源之前, 排序器指针指到CONV00或者排序器已经完成一个 转换序列(即SEQ CNTR为0)。 无论何时,只要一个排序器处在空闲状态,一个启 动信号触发就可以启动一个自动转换序列。
2.如果一个新的启动触发信号来到时,当前转换序 列正在进行,则将ADCTRL2寄存器中的SOC SEQn 位置1(该位在前一个转换开始时被清0)。 但,如果此时SOC SEQn位已经为1,则该启动触发 信号丢失。
3.一旦被触发后,不能在转换中途停止或中断排序 器。 除非,程序等到了一个序列的停止信号或者对排序器 进行了复位。 复位使排序器立即返回到空闲的起始状态(SEQ1和 级连的排序器指针指到CONV00,SEQ2的排序器指针 指到CONV08)。
A/D转换时间
A/D转换可被分成两个时间段 。
Байду номын сангаас
说明
I. 如果ACQ PS3~ACQ PS0位段域的值全为0,即 预定标器的值为1;
II. CPS为0时,PS时钟将和CPU时钟一样。 III.对于预定标器的任何其它值,PS都会增加采样/
保持窗口的时间。 IV.如果CPS为1,则S/H窗口长度为原来的2倍。
④25μS之后另一个触发源到来,ADC模块开始执行另 外 3 个 通 道 选 择 值 为 CONV03 ( V1 ) 、 CONV04 (V2)和CONV05(V3)的转换。
在第二个转换序列完成之后, ADC模块的结果寄存器中得到的值
缓冲寄存器 结果寄存器0(RESULT0) 结果寄存器1(RESULT1) 结果寄存器2(RESULT2) 结果寄存器3(RESULT3) 结果寄存器4(RESULT4) 结果寄存器5(RESULT5)
10.2.2 排序器的启动/停止模式
可实现在时间上单独和多个启动信号触发源同步的 功能。 CONT RUN位必须设置为0。
在排序器完成第一个转换序列之后,不需要在中断服 务程序中复位,即排序器初始指针不需要指到 CONV00就可以被重新触发。 因此,一个转换序列之后,排序器指针指到当前的通 道。
例2 排序器工作在启动/停止方式
注意:在每次SEQ CNTR到0时将中断标志位置1,且 产生两次中断。
Case 2:两个序列的采样个数相等。
使用中断方式2:每隔一个EOS信号,产生一次中断 请求。 (1)排序器设置MAX CONVn=2以转换I1、I2和I3 (或者V1、V2和V3)。 (2)在中断服务子程序b或d完成以下操作: . I1、I2、I3、V1、V2和V3的值从ADC结果寄存器 中读出; .复位排序器。 (3)重复第(2)步和第(3)步。
如果位CONT RUN为1,则转换自动重新开始(即 SEQ CNTRn装入最初的MAX CONV1的值,SEQ1 的通道指针指向CONV00)。
在SEQ CNTRn每次到达0时,中断标志位被置为1,需要时用 户 可 以 在 中 断 服 务 子 程 序 中 用 ADCTRL2 寄 存 器 中 的 RST SEQn位将排序器手动复位。 复位之后,在下一个A/D启动信号来到时SEQ CNTR装入 MAX CONVn中的原始值,且SEQ1指针指向CONV00。
4.当SEQ1/2工作在级连方式下,到SEQ2的触发源被 忽略,而到SEQ1的触发源仍然有效。 级连方式可视为SEQ1有16个转换通道而非8个转换通 道。
10.2.4 在排序转换时的中断操作
排序器可以在两种工作方式下产生中断, 工作方式方式由ADCTRL2寄存器中的中断模式控 制位决定。
Case 1:第一个序列和第二个序列中采样的个数不
第10章 A/D转换模块
10.1 A/D转换模块概述
F2407的A/D模数转换模块(ADC) :
1. 带内置采样和保持(S/H)的10位ADC。 2. 16个的模拟输入通道(ADCIN0~ADCIN15)。 3. 两个独立的排序器(SEQ1和SEQ2。 4. 可 单 独 访 问 的 16 个 结 果 寄 存 器 ( RESULT0 ~
最多可选择8个自动转换通道双排序器工作方式和最 多可选择16个自动转换通道单排序器工作方式的操作 大致相同。
描述排序器的规定
排序器1(SEQ1): CONV00~CONV07; 排序器2(SEQ2): CONV08~CONV15; 级连排序器(SEQ): CONV00~CONV15。
10.2.1 连续的自动排序模式
CONV08~ CONV15
CONV00~ CONV15
注意
在双排序器模式下,来自“未被激活”的排序器的 A/D启动请求将在“被激活”的排序器完成采样之后 自动开始执行。
即 , 假 设 A/D 转 换 正 在 忙 于 处 理 SEQ2 的 操 作 , 当 SEQ1启动一个SOC信号后,A/D转换器在完成SEQ2 的操作之后立即开始响应SEQ1的请求。
1. SEQ1/SEQ2在一次排序过程中对8个通道进行任意 排序转换;
2. 每次转换结果保存到8个结果寄存器, SEQ1的结 果寄存器为RESULT0~RESULT7,SEQ2的结果 寄存器为RESULT8~RESULT15。
① 排序中的转换个数受MAX CONVn(MAXCONV寄 存器中的一个3位段域或4位段域)控制;
ADC结果缓冲区 I1 I2 I3 V1 V2 V3
说明
I. 在两种触发源的情况下,MAX CONV1的值被自 动装入SEQ CNTR1中。
II. 如果第二个触发源要求转换的个数和第一个不一 样,用户必须在第二个触发源来到之前,通过软 件改变MAX CONV1 的值;否则ADC模块将重新 使用原来的MAX CONV1中的值。
INT FLAG SEQn=1
A/D
ADC转换结束
说明
用户必须保证在下一个转换序列开始之前,读取 结果寄存器的值。 在ADC模块企图向结果寄存器写入数据,而用户 却企图从结果寄存器中读取数时,ADC模块的仲 裁逻辑保证在发生这种冲突时不会崩溃。
注意
SEQ CNTR为0后:
如果位CONT RUN为0,则排序器指针停留在最后状 态;
III.用户可以在第一个触发源引起的转换完成之后的 中断复位程序中改变MAX CONV1的值,为第二 个触发源引起的转换个数作准备。
10.2.3 输入触发源
排序器1(SEQ1)
软件触发 事件管理器A (EVA SOC)触发
排序器2(SEQ2)
软件触发 事件管理器B (EVB SOC)触发
级连排序器 (SEQ)
(SEQ1)
(SEQ2)
(SEQ)
EVA、软件和外部 引脚
EVB和软件
EVA、EVB、软件 和外部引脚
最大自动转换通道数
(如:排序器长度)
8
8
16
序列转换完成后 自动停止
是
是
是
触发优先权
高
低
不适用
A/D转换结果寄存器
0-7
8-15
0~15
排序控制器位分配 (CHSELSEQn)
CONV00~ CONV07
注意:第3个x采样为一个假采样,并没有要求采样。 但为了使中断服务子程序的开销和CPU的干扰最小, 可以利用中断方式2的中断请求特性。