飞思卡尔单片机AD模块简述(2)

时间:2020-12-20 22:15:31

(5)ATD控制寄存器4

  Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
读/写 SMP2 SMP1 SMP0 PRS4 PRS3 PRS2 PRS1 PRS0
复位值 0 0 0 0 0 1 0 1

SMP [ 2 : 0 ]:采样时间选择位。

SMP2 SMP1 SMP0 采样时间(ATD时钟周期的个数)
0 0 0 4
0 0 1 6
0 1 0 8
0 1 1 10
1 0 0 12
1 0 1 16
1 1 0 20
1 1 1 24

 

 PRS [ 4 : 0 ]:ATD时钟预分频因子。假设MCU内部总线时钟频率为BUSCLK,那么可以通过那下面公式计算出ATD时钟频率ATDCLK,默认预分频因子为5.

ATDCLK = BUSCLK / ( 2 * ( PRS + 1 ) )

注:设置预分频因子时,应使ATDCLK不小于0.25MHz,同时不大于8.3MHz。

(6)ATD控制寄存器5

 

  Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
0 SC SCAN MULT CD CC CB CA
 
复位值 0 0 0 0 0 0 0 0

 ATD控制寄存器5的地址为¥02C5,如果写该处理器时,会停止当前的ATD转换序列,并开始一次新的ATD转换序列。

SC:特殊通道转换使能位。1表示对特殊通道进行转换,0表示关闭特殊通道转换。

SCAN:连续转换序列模式位,用于决定ATD转换序列是执行一次还是连续执行。1表示连续执行ATD转换序列,0表示只进行一次ATD转换序列。

MULT:多通道采样模式选择位。1表示多通道采样,0表示单通道采样。

CC [ 3 : 0 ]:转换计数。表示当前转换的结果将要写入的结果寄存器编号。

 

CC CB CA 模拟量输入通道
0 0 0 AN0
0 0 1 AN1
0 1 0 AN2
0 1 1 AN3
1 0 0 AN4
1 0 1 AN5
1 1 0 AN6
1 1 1 AN7

(7)ATD状态寄存器0

  BIt7 BIt6 BIt5 BIt4 BIt3 BIt2 BIt1 BIt0
SCF 0 ETORF FIFOR CC3 CC2 CC1 CC0
         
复位值 0 0 0 0 0 0 0 0

SCF:转换序列完成标志位。当一次转换序列完成后,置该标志位。如果转换序列连续进行(SCAN=1),在每一次完成后都会置位该标志位。

ETORF:外部触发溢出标志位。当处于边沿触发模式(ETRIGLE=0),如果当序列转换正在进行时又检测到一个有效边沿信号时,此标志位置位。

FIFOR:先入先出溢出标志位此标志位表示在A/D转换完成标志(CCF)还没有被清零时,结果寄存器又被写入了数据。在先进先出模式下,此标志位表示结果寄存器中的数据和输入通道是否处于同步状态,在非先入先出模式下,此标志位结果寄存器中的数据在读出之前已经被新数据覆盖。

CC [ 3 : 0 ]:转换计数器,表示当前转换的结果将要写入的结果寄存器编号。如果在先进先出模式下(FIFO=0),转换计数器在转换队列的开始和结束时被初始化为000;如果在先进先出模式下(FIFO=1),转换计数器不被初始化,当达到最大值时,转换计数器又被重新置为最小值。

CC3 CC2 CC1 CC0 结果寄存器序号
0 0 0 0 0
0 0 0 1 1
0 0 1 0 2
0 0 1 1 3
0 1 0 0 4
0 1 0 1 5
0 1 1 0 6
0 1 1 1 7
1 0 0 0 8
1 0 0 1 9
1 0 1 0 10
1 0 1 1 11
1 1 0 0 12
1 1 0 1 13
1 1 1 0 14
1 1 1 1 15