【2017年整理】AD转换模块介绍

上传人:豆浆 文档编号:986638 上传时间:2017-05-24 格式:DOC 页数:9 大小:148KB
返回 下载 相关 举报
【2017年整理】AD转换模块介绍_第1页
第1页 / 共9页
【2017年整理】AD转换模块介绍_第2页
第2页 / 共9页
【2017年整理】AD转换模块介绍_第3页
第3页 / 共9页
【2017年整理】AD转换模块介绍_第4页
第4页 / 共9页
【2017年整理】AD转换模块介绍_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《【2017年整理】AD转换模块介绍》由会员分享,可在线阅读,更多相关《【2017年整理】AD转换模块介绍(9页珍藏版)》请在金锄头文库上搜索。

1、 手把手教你写 S12XS128程序(9)-A/D 转换模块介绍1时间:2009-11-30 22:10 来源:电子设计吧 作者:dzsj8 点击: 365 次1、 A/D 转 换 原 理A/D 转 换 的 过 程 是 模 拟 信 号 依 次 通 过 取 样 、 保 持 和 量 化 、 编 码 几 个 过 程 后转 换 为 数字格式。a)取样与保持一般取样与保持过程是同时完成的,取样-保持电路的原理图如图 16所示,由输入放大器 A1、输出放大器 A2、保持电容 CH和电子开关 S组成,要求 A V1 * AV2 = 1。原理是:当开关 S闭合时,电路处于取样阶段,电容器充电,由于 A V1

2、* AV2 = 1,所以输出等于输入;当开关 S断开时,由于A2输入阻抗较大而且开关理想,可认为 CH没有放电回路,输出电压保持不变。图 16 取样-保持电路取样-保持以均匀间隔对模拟信号进行抽样, 并且在每个抽样运算后在足够的时间内保持抽样值恒定,以保证输出值可以被A/D 转换器精确转换。b)量化与编码量化的方法,一般有舍尾取整法和四舍五入法,过程是先取顶量化单位 ,量化单位取值越小,量化误差的绝对值就越小,具体过程在这里就不做介绍了。将量化后的结果用二进制码表示叫做编码。2、A/D 转换器的技术指标a)分辨率分辨率说明 A/D 转换器对输入信号的分辨能力,理论上, n 位 A/D 转换器能

3、区分的输入电压的最小值为满量程的 1/2n 。也就是说,在参考电压一定时,输出位数越多,量化单位就越小,分辨率就越高。S12 的 ATD 模块中,若输出设置为 8 位的话,那么转换器能区分的输入信号最小电压为19.53mV。b)转换时间A/D转换器按其工作原理可以分为并联比较型(转换速度快 ns 级)、逐次逼近型(转换速度适中 us 级)、双积分型(速度慢抗干扰能力强)。不同类型的转化的 A/D 转换器转换时间不尽相同, S12 的 ATD 模块中,8 位数字量转换时间仅有 6us,10 位数字量转换时间仅有 7us。手把手教你写 S12XS128程序(10)-A/D 转换模块介绍 2时间:2

4、009-12-09 21:32 来源:电子设计吧 作者:dzsj8 点击: 368 次S12内置了 2 组 10 位/8 位的 A/D 模块:ATD0 和 ATD1,共有 16 个模拟量输入通道,属于逐次逼近型 A/D 转换器(这个转换过程与用天平称物的原理相似)。1、 功 能 结 构 图图 17 A/D 模块功能结构图图 17所示的是 A/D 模块的功能结构,这个功能模块被虚线划分成为图示所 示的虚线所隔离的三个部分:IP 总线接口、转换模式控制 /寄存器列表,自定义模拟量。IP 总线接口负责该模块与总线的连接,实现 A/D 模块和通用 I/O 的目的, 还起到分频的作用;转换模式控制寄存器

5、列表中有控制该模块的所有的寄存器, 执行左右对齐运 行和连续扫描。自定义模拟量负责实现模拟量到数字量的转换。 包括了执行一次简单转换所 需的模拟量和数字量。2、 HCS12 中 A/D 转化模块特 点8/10 位精度; 7 us, 10-位单次转换时间.; 采样缓冲放大器; 可编程采样时间;左/ 右对齐, 有符号/无符号结果数据; 外部触发控制; 转换完成中断; 模拟输入8 通道复用; 模拟/数字输入引脚复用; 1 到8 转换序列长度 ; 连续转换模式;多通 道扫描方式。ATD 模块有模拟量前端、 模拟量转换、 控制部分及结果存储等四部分组成。其中模拟前端包括多路转换开关、 采样缓冲器、 放大

6、器等, 结果存储部分主要有 8个16 位的存储器和反映工作状态的若干标志位。 手把手教你写 S12XS128程序(11)-A/D 寄存器说明 1时间:2009-12-11 12:26 来源:电子设计吧 作者:dzsj8 点击: 369 次1、ATD0 控制寄存器 2-ATD0CTL2ATD0CTL2主要控制 ATD0 的启动、状态标志以及上电模式,对寄存器进行写操作时,将中断当前的转化过程。寄存器 ATD0CTL2 如图 18 所示:图 18 ATD0CTL2寄存器ADPU:A/D 使能控制位,相当于一个开关,用来启动/ 禁止 A/D 转换1 = A/D 模块上电0 = 禁止 A/D,以减少功

7、耗AFFC: A/D 快速转换完成标志位清零1 = 快速标志位清零顺序,每次读取结果寄存器自动清零0 = 正常标志位清零顺序,需要软件方式对状态标志位清零AWAI: A/D 等待模式1 = 等待模式下,ATD 继续运行0 = 等待模式下, ATD停止运行,以降低功耗ETRIGP、ETRIGLE、ETRIGE:ETRIGLE ETRIGP ETRIGE 描述x x 0 忽略外部触发0 0 1 下降沿触发0 1 1 上升沿触发1 0 1 低电平触发1 1 1 高电平触发【注意】ETRIGE:外部触发使能控制位,该功能借助引脚 AN7,当 AN7接收到外部触发时,启动 A/D 转换,否则不进行转换。

8、 0-忽略外部触发;1-有外部触发时开始转换,此时 AN7 不能用于 A/D 转换 。ASCIE:A/D 转化序列转换结束中断使能控制位1 = 允许 ATD 转换序列转换结束后发生中断0 = 禁止 ATD 中断ASCIF:A/D 转换序列转换结束中断标志,只用于读。1 = 发生中断0 = 为发生中断手把手教你写 S12XS128程序(12)-A/D 寄存器说明 2时间:2009-12-12 12:06 来源:电子设计吧 作者:dzsj8 点击: 340 次2、ATD0 控制寄存器 3-ATD0CTL3ATD0CTL3主要控制结果寄存器的映射,设置转换序列的长度,还可以暂时冻结ATD0 模块,尤

9、其确定 ATD0 在 BDM 状态下的行为。寄存器 ATD0CTL3 如图19 所示:图 19 ATD0CTL3寄存器S1C、 S2C、 S4C、 S8C: 转 换 序 列 长 度 选 择 位 控 制 位【注意】ATD 的每次启动要进行若干次扫描循环,每次扫描循环称为一个转换序 列。FIFO:结果寄存器 FIFO 模式控制位,1 = 结果寄存器映射到转换序列0 = 结果寄存器没有映射到转换序列FRZ0、FRZ1:背景调试冻结控制位FRZ Response00 Ignore IFREEZE(冻结模式下继续转换)01 Reserved(冻结模式下保留 )10 Finish conversion t

10、hen freeze(完成转换后冻结)11 Freeze Immediately(冻结模式下立刻冻结 ) 手把手教你写 S12XS128程序(13)-A/D 寄存器说明 3时间:2009-12-14 11:50 来源:电子设计吧 作者:dzsj8 点击: 325 次3、ATD0 控制寄存器 4-ATD0CTL4ATD0CTL4用于选择时钟,选择采样转换时间以及选择 8 位/10 位转换方式。寄存器 ATD0CTL4 如图 20所示:图 20 ATD0CTL4寄存器SRES8 : A/D 精度选择控制位1 = 将采集到的模拟量以 8 位二进制数表示0 = 将采集到的模拟量以 10 位二进制数表示

11、SMP0、SMP1 : 采样时间选择控制位SMP 1:0 采样时间00 2 A/D 时钟 周期01 4 A/D 时钟 周期10 8 A/D 时钟 周期11 16 A/D 时钟 周期PPS0:4 : 5 位 模数计数器预分频器- 分频系数从2 到64- A/D时钟计算公式 :ATDClock = BusClock/(PRS + 1) 0.5- A/D时钟频率应满足:【注意】对于 AD转换来说,它的转换周期包括采样时间和运算时间。如果频率太高,则采样时间过短。这对于输出阻抗比较大或信号频率比较高的信号来说,就会产生较大的采样误差,那么 AD转换的精度就会受较大的影响。 手把手教你写 S12XS12

12、8程序(14)-A/D 寄存器说明 4时间:2009-12-17 19:39 来源:电子设计吧 作者:dzsj8 点击: 336 次4、ATD0 控制寄存器 4-ATD0CTL5ATD0CTL5用于选择转换方式,选择转换通道,设置单/多通道转换和单次/ 连续转换模式以及对齐方式。寄存器 ATD0CTL5 如图 20所示: 图 20 寄存器 ATD0CTL5【注意】ATDCTRL5 设置成多通道转换后,ATDCTRL3 设置采集的通道数,此外ATDCTRL5中还需要设置多通道采集的起始通道。比如采集 7个通道,起始通道是 1,那么就采集从 17 通道,如果起始通道是 2,就采集 27,还有 0通

13、道。【注意】在 S12系列中,当转换序列长度设置为 1(S8C:S1C=0001),MULT=0 时,只对一个通道进行一次转换。 手把手教你写 S12XS128程序(15)-A/D 寄存器说明 5时间:2009-12-27 00:47 来源:电子设计吧 作者:dzsj8 点击: 300 次5、ATD0 状态寄存器 5-ATD0START0、ATD0START0ATD0START0反映当前的转换通道、A/D 转换是否结束、是否有外部触发等;ATD0START1反映转换序列中相应的转换是否完成。寄存器ATD0START0、ATD0START1 如图 21所示: SCF -转换序列完成标志在单次转换

14、模式时,当转换完成后置位 (SCAN = 0)在连续转换模式时,当第一次转换完成后置位 (SCAN = 1), 当 AFFC = 0,写1 清零。ETORF -外部触发覆盖标志如果在转换过程中高/低电平出现,置位FIFOR当结果寄存器在读出之前已经被写入时,置位 ( CCF 没有清零) CC2:0转换计数器-3 位计数器指向下一个将要转换的通道 CCF7 -CCF0 -独立通道转换完成标志位每个相应的通道转换结束后置位,当相应的A/D 结果寄存器被读出时 清零, 注意当AFF C 位不同时的情况 手把手教你写 S12XS128程序(16)-A/D 转换应用实例时间:2009-12-27 00:

15、51 来源:电子设计吧 作者:dzsj8 点击: 396 次第十六讲: A/D 转换应用实例要让 ATD 开始转换工作,必须经过以下三个步骤:1.将 ADPU 置 1,使 ATD 启动;2.按照要求对转换为数、扫描方式、采样时间、时钟频率及标志检查等方式 进行设置;3.发出启动命令;如果上电默认状态即能满足工作要求,那么只要将 ADPU 置 1,然后通过控 制寄存器发出转换命令,即可实现转换。【例程 2】程序描述:由通道 ATD0 进行单通道 A/D 转换,转换值在 B 口显示程序如下:#include /* common defines and macros */#include /* derivative information */#pragma LINK_INFO DERIVATIVE mc9s12dg128b/*定义变量*/word AD_wValue;/AD 转换结果/*时钟初始化*/void PLL_Init(void) /PLLCLK=2*OSCCLK*(SYNR+1)/(REFDV+1) /锁相环时钟=2*16*(2+1)/(1+1)=48MHzREFDV=1; /总线时钟=48/2=24MHzSYNR=2;while(!(CRGFLG&0x08); CLKSEL=0x80;/*AD 初始化*/void AD_Init(void) AT

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号