模数转换模块

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

【任务要求】

使用单片机的模数转换模块实现对模拟电压的测量,并在液晶上显示相应的电压值。

【相关知识】

一、AC16内部模数转换模块概述

AC16内部包含一个10 位的AD转换器,其结构为逐次逼近ADC,共有九个输入(AD0-AD3、AD8-AD11、AD27),如下表所示:

ADC模块还包含一个温度传感器,它的输出连接到一个ADC模拟通道输入。

二、常用的相关寄存器

1.状态和控制寄存器1(ADCSC1)

2.状态和控制寄存器2(ADCSC2)

3.数据结果寄存器

? 数据高结果寄存器(ADCRH)

ADCRH包含10位转换结果的高2位。当设置为8位转换时,ADR8 和ADR9 都等于0。每次转换完成,除非自动比较被允许而且不满足比较结果,ADCRH将被更新,。在10位数据模式中,读ADCRH 将暂时禁止下一次转换,直到读取了ADCRL 中的内容。如果直到下一个转换完成都没有读ADCRL,这个中间转换结果将会丢失。在8位数据模式中,没有对ADCRL 的互锁。在这种情况下,MODE位被改变,ADCRH中的任何数据都无效。

? 数据低结果寄存器(ADCRL)

ADCRL 包含10位转换结果的低8位,一个8位转换的所有8位。每次转换完成,这个寄存器都被更新,除非自动比较被允许而且不满足比较结果。在10位数据模式中,读ADCRH 将暂时禁止下一次转换,直到读取了ADCRL 中的内容。如果直到下一个转换完成都没有读ADCRL,这个中间转换结果将会丢失。在8位数据模式中,没有对ADCRH 的互锁。在这种情况下,MODE 位被改变,ADCRL 中的任何数据都无效。

4.配置寄存器(ADCCFG)

? 时钟分频选择

? 转换模式

? 输入时钟选择

5.引脚控制寄存器

? 引脚控制1寄存器(APCTL1)

引脚控制寄存器用于禁止MCU引脚的I/O 口用作模拟输入。APCTL1 用于控制和ADC 模块的通道0-7相关的位。

? 引脚控制2寄存器(APCTL2)

三、初始化

可使用Codewarrior的DeviceInitialization来进行AC1 6内部模数转换模块的初始化,设定界面如下图所示:

【硬件连接】

在实训板上通过电位器W2提供了一个可变的模拟电压,连接到单片机的24脚(PTB1/AD1P0),对应模数转换电路的AD0。

相关文档
最新文档