【原创】TI C2833x介绍---系统自带的ADC(7)
0赞
28335的ADC有16个通道,可以通过最大转换通道寄存器AdcRegs.ADCMAXCONV来配置每次触发ADC采样所转换的通道数量,该寄存器的位说明如图1所示。
图1 ADCMAXCONV寄存器
在级联模式下,最大转换通道数由低4位控制;在双序列发生器模式下,SEQ1对应0-2位,SEQ2对应4-6位。每个序列发生器从初始状态开始转换,并顺序执行,在读取到结束状态标志位后又循环执行这种过程,除非被复位。其初始状态和结束状态如表1所示。
表1 序列发生器的初始与结束状态
|
SEQ1 |
SEQ2 |
级联模式 |
初始状态 |
CONV00 |
CONV08 |
CONV00 |
结束状态 |
CONV07 |
CONV15 |
CONV15 |
16个通道有4个通道选择排序控制寄存器ADCCHSELSEQ1-4 来控制,分别对应转换通道的序号,如表2所示。
表2 ADC输入通道选择排序控制寄存器
|
15-12 |
11 -8 |
7 -4 |
3 -0 |
ADCCHSELSEQ1 |
CONV03 |
CONV02 |
CONV01 |
CONV00 |
ADCCHSELSEQ2 |
CONV07 |
CONV06 |
CONV05 |
CONV04 |
ADCCHSELSEQ3 |
CONV11 |
CONV10 |
CONV09 |
CONV08 |
ADCCHSELSEQ4 |
CONV15 |
CONV14 |
CONV13 |
CONV12 |
每个转换通道经过配置,就能与ADC输入管脚相关联,则该管脚上输入的模拟信号就将从该转换通道进行转换,然后再写入相应的结果寄存器。从ADCINA0到ADCINA7,对应的位的值分别是0-7(对应二进制4个位是从0000到0111);从ADCINB0到ADCINB7(对应二进制4个位是从1000到1111),对应的位的值分别是8-15,这样只要在相应的通道里赋值给4位相应的值,就能将转换通道与ADC管脚相对应了。例如:
在CONVxy里写入0001,则该通道对应的是ADCINA1管脚上采样的信号;
在CONVxy里写入1000,则该通道对应的是ADCINB0管脚上采样的信号。