飞思卡尔MC9S12XS128技术手册(AD转换部分)
英文资料:飞思卡尔MC9S12XS256RMV1官方技术手册
1.1 XS12系列单片机的特点
XS12系列单片机特点如下:
·16位S12CPU
—向上支持S12模糊指令集并去除了其中的MEM, WAV, WAVR, REV, REVW 五条指令;
—模块映射地址机制(MMC);
—背景调试模块(BDM);
·CRG时钟和复位发生器
—COP看门狗;
—实时中断;
·标准定时器模块
—8个16位输入捕捉或输出比较通道;;
—16位计数器,8位精密与分频功能;
—1个16位脉冲累加器;
·周期中断定时器PIT
—4具有独立溢出定时的定时器;
—溢出定时可选范围在1到2^24总线时钟;
—溢出中断和外部触发器;
·多达8个的8位或4个16位PWM通道
—每个通道的周期和占空比有程序决定;
—输出方式可以选择左对齐或中心对其;
—可编程时钟选择逻辑,且可选频率范围很宽;
·SPI通信模块
—可选择8位或16位数据宽度;
—全双工或半双工通信方式;
—收发双向缓冲;
—主机或从机模式;
—可选择最高有效为先输出或者最低有效位先输出;
·两个SCI串行通信接口
—全双工或半双工模式
·输入输出端口
—多达91个通用I/O引脚,根据封装方式,有些引脚未被引出;
—两个单输入引脚;
·封装形式
—112引脚薄型四边引线扁平封装(LQFP);
—80引脚扁平封装(QFP);
—64引脚LQFP封装;
·工作条件
—全功率模式下单电源供电范围3.15V到5V;
—CPU总线频率最大为40MHz
—工作温度范围–40 C到125 C
第十章模拟—数字转换
10.1 介绍
ADC12B16C是一个16通道,12位,复用方式输入逐次逼近模拟—数字转换器。
ATD的精度由电器规格决定。
10.1.1 特点
·可设置8位、10位、12位精度
·在停止模式下,ATD转换使用内部时钟
·转换序列结束后自动进入低耗电模式
·可编程采样时间
·转化结果可选择左对齐或右对齐
·外部触发控制
·转换序列结束后产生中断
·模拟输入的16个通道为复用方式
·可以选择VRH、VRL、 (VRL+VRH)/2特殊转换方式
·转换序列长度1到16
·可选择连续转换方式
·多通道扫描
·任何AD通道均可配置外部触发功能,并且可选择4种额外的触发输入。
4种额外的触发输入可以为芯片内部或外部触发。
具体根据使用用途选择何种触发方式。
·当选用多通道采样方式时可配置从哪个通道开始先采样。
10.1.2 选择方式
10.1.2.1 转换模式
可编程转换模式,可选择单通道,多通道,单序列和多序列连续转换模式。
10.1.2.2 MCU选择模式
·停止模式
—ICLKSTP=0 (in ATDCTL2 register)
进入订制模式会终止当前转换序列。
如果转换序列取消,退出停止模式后重新开始转换序列。
这与向控制寄存器ATDCTL5写入新值时重新开始新的转换序列具有相同的效果。
—ICLKSTP=1 (in ATDCTL2 register)
AD转换序列在停止模式下继续执行,其时钟使用通用时钟ICLK作为AD转换时钟。
当转换模式从运行到停止模式转换时,对于这时产生的转换结果或阀值比较结果将不存入结果寄存器。
CCF标志位置位,比较结束。
当在停止模式中转换时,如果要退出停止模式时,AD转换须有一个停止恢复时间tATDSTPRC将总线时钟切回到AD时钟。
这段时间内不要更改AD转换寄存器。
·等待模式
ADC12B16在停止模式时,与在正常转换模式时功能相同。
等待模式为省电模式,进入等待模式时需要停止当前转换序列。
·冻结模式
进入冻结模式是,ADC23B16C会有继续转换,结束和停止AD转换三种方
式,具体取决于FRZ1和FRZ0控制位的设置。
冻结模式有助于调试与仿真。
10.1.3 结构图(略见MC9S12XS256RMV1第270页)
10.2 信号描述
以下列出的是ADC12B16C模块的全部输入引脚。
10.2.1.1 ANx(x=15~0)
这些引脚为模拟输入引脚,也可以配置为数字端口或ATD的外部触发引脚。
10.2.1.2 ETRIG3, ETRIG2, ETRIG1, ETRIG0
可配置为ATD的外部触发信号。
根据具体情况选择。
10.2.1.3 VRH, VRL
模拟转换参考电压
10.2.1.4 VDDA, VSSA
为ADC12B16C的电源
10.3 存贮器页面和寄存器定义
此部分介绍了ADC12B16C的全部寄存器
10.3.1 内存图(略见271页)
10.3.2 寄存器描述
此部分介绍了ADC12B16C的全部寄存器和具体的控制位
10.3.2.1 AD转换控制寄存器0 (ATDCTL0)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候,特殊模式下Bit7总置0。
WRAP[3-0] 循环转换起始通道控制位,具体配置见274页。
10.3.2.2 AD转换控制寄存器1 (ATDCTL1)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候
表10-3 ATDCTL1控制寄存器描述10.3.2.3 AD转换控制寄存器2 (ATDCTL2)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候
10.3.2.4AD转换控制寄存器3 (ATDCTL3)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候
10.3.2.5 AD转换控制寄存器4 (ATDCTL4)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候
表10-12 ATDCTL4控制寄存器描述10.3.2.6 AD转换控制寄存器5 (ATDCTL5)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候
表10-14 ATDCTL5控制寄存器描述10.3.2.7 AD 状态寄存器0 (ATDSTAT0)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候(对CCF[3:0]无意义)
10.3.2.8 ATD Compare Enable Register (ATDCMPE)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候
表10-17 ATDCMPE寄存器描述
10.3.2.9 ATD Status Register 2 (ATDSTAT2)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候(对转换序列无影响)
这16个位是是转换结束标志,当转换结束时置1 ,否则为0
10.3.2.10 AD中断允许寄存器(ATDDIEN)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候
这16个位是控制相应通道数字中断是否有效,置1时允许数字中断输入,置0
时不允许数字中断输入。
一般使用时这16个位均置0。
10.3.2.11AD转换结果寄存器(ATDDRn)
写入时会终止当前转换序列
读操作:任何时候
写操作:任何时候
AD转换结果依次存放在16个结果寄存器中。
结果总为无符号的数据。
左,右对齐分别由ATDCTL3寄存器中的DJM位控制。
如果转换序列自动比较允许的话,这些结果寄存器中存放比较结果。
存放格式根据DJM位来选择。
在这种模式下,ATDDRn寄存器被用作比较结果锁存器,这些值在转换序列结束时丢失。
注意:
当转换序列没有使用自动比较时,结果会按照寄存器顺序依次存放在与通道相对应的结果寄存器中。
在这种情况下,如果向ATDDRn中写入初始值时,AD结果可能会溢出。
10.3.2.12.1 左对齐输出结果(DJM=0)
可见,当选择左对齐输出结果时,输出结果按照由低向高排列放入结果寄存器中10.3.2.12.2 Right Justified Result Data (DJM=1)
右对齐时,输出结果从低位开始排列。