智能车制作

标题: 话说AD(目前我见过的最好的) [打印本页]

作者: zbmcu    时间: 2013-2-28 21:20
标题: 话说AD(目前我见过的最好的)
转载:送给专研128的人!
关于HCS12(X)单片机AD的深层次的一些东西(2009-07-14 17:16:33)转载标签: 杂谈  
关于AD,一直有人问一些东西,应该是属于AD比较深的东西,答应总结一个贴子.
大部分来自中电网陈刚版主的精典问答,如果要用加速度传感器,请看完下面的,如果想用好
多路AD转换请看完下面的.
一般小车可能不需要,因为一般用的是单次转换单通道无FIFO模式.
1为什么要多次转换?
ATD模块有8个结果寄存器,所以它的AD转换有这样的功能,就是对一个或多个通道连续进行转换,将结果顺序放入这8个结果寄存器中。这样用户如果要取一个通道的平均值,或取多个通道的值,都很方便了,就不用软件一次一次地去转换了
2 ATDCTL3 那个S8CS4C等决定的转换序列长度是什么意思?
ATDCTL3中的S8CS1C决定了一个转换序列的长度,即一个转换序列共转换多少次。你可以选择做一次AD转换的过程,是对一个通道连续转换多次,还是对多个通道连续进行转换,这由ATDCLT5MULT位决定。
如果选择了多通道,MULT=1,那么CCCBCA、只是控制第一个转换的通道,那么我就没有找到该如何制定具体由哪几个通道转换的控制字。。。比如光要013三个通道转换。。。难道本身转换就是8个通道全部转一遍的?
S8CS1C就控制每轮进行多少次转换,最多为8。比如可以选择为6,那么每6次转换称为一个序列。如果选择了多通道转换,那么CCCBCA选择首个转换的通道,后面的通道按通道号排列。比如S8CS1C选择转换数为6MULT设为1,而CCCBCA选择通道4,那么转换开始后,AD模块将按通道4、通道5、通道6、通道7、通道0、通道1的顺序依次进行转换,并将转换结果依次放入6个结果寄存器中。要注意并不能间隔选择通道。
HC12系列单片机中,当控制寄存器5S8CM=0(即一个转换序列转4次),MULT=0(即单通道转换)时,是在一个转换序列中对一个通道连续转换四次;而在S12系列中,当转换序列长度设置为1MULT=0时,每进行一个序列的转换是对该通道转换一次,还是转换四次?
S12系列中,当转换序列长度设置为1S8C:S1C=0001),MULT=0时,只对一个通道进行一次转换。
5 关于控制寄存器ATD0CTL3FIFO的使用
假定要转换的序列为3,即通道345,转换模式为连续转换(SCAN=1
1)当FIFO=0时,转换结果是存储在ATD0DR0-ATD0DR2中,还是存储在ATD0DR3-ATD0DR5中?
当一个序列转换结束后,下一个转换序列的结果还是存储在这几个对应寄存器中,对吗?
2)当FIFO=1时,转换结果是存储在ATD0DR0-ATD0DR2中,还是存储在ATD0DR3-ATD0DR5中?
当一个序列转换结束后,下一个转换序列的结果是存储在紧接其后的几个对应寄存器中,循环存储(即存储到ATD0DR7后,返回ATD0DR0,在从ATD0DR0-ATD0DR7存储),对吗?
假定要转换的序列为3,即通道345,转换模式为连续转换(SCAN=1
1)当FIFO=0时,转换结果是存储在ATD0DR0-ATD0DR2中;当一个序列转换结束后,下一个转换序列的结果还是存储在这几个对应寄存器中。
2)当FIFO=1时,第一次转换结果存储在ATD0DR0-ATD0DR2中;当一个序列转换结束后,下一个转换序列的结果是存储在紧接其后的几个对应寄存器中,循环存储(即存储到ATD0DR7后,返回ATD0DR0,再从ATD0DR0-ATD0DR7存储)。
多通道转换
通道转换是不是通过设置这二个寄存器,ATDCTRL3中转换序列的长度来采集设置需要的通道数.还有ATDCTRL5中的MULT来设置启动多通道转换?
是的,ATDCTRL5设置成多通道转换后,ATDCTRL3设置采集的通道数,此外ATDCTRL5中还需要设置多通道采集的起始通道。比如采集7个通道,起始通道是1,那么就采集从17通道,如果起始通道是2,就采集27,还有0通道。
多通道转换应该是同时进行的吧?各个通道的转换结果分别放在哪个数据寄存器(这一点我非常困惑)?
多通道转换也不是同时的,可以看AD的系统框图,只有一个采样保持电路,前面通过8通道选择器来选择通道,所以不能同时,只是多通道一次采集过程可以连续采集多个通道。每个通道的结果都保存在各自的结果寄存器reslut registers
MC9SDg128上面有16AD通道,而寄存器上好像只能启动8个通道吧?另外8个通道该如何使用?
DG128是两个8通道的AD,看dg128的数据手册总的memory mapAD0的寄存器在基址的$0080-$009F 32个字节的地方, AD1的寄存器在基址的$0120-$013F 32个字节的地方。

作者: liuyuliuyu1216    时间: 2013-2-28 22:47
0不错
作者: 201000171238    时间: 2013-2-28 22:57

作者: exiao    时间: 2013-2-28 23:19
谢谢分享
作者: 蛋求无悔    时间: 2013-2-28 23:29
很好
作者: 可欣    时间: 2013-3-1 00:06
好东西啊
作者: subingkiun    时间: 2013-3-1 06:48

作者: Peaker    时间: 2013-3-1 07:44
总结不错
作者: 风中柳    时间: 2013-3-1 23:47

作者: Hold人民币    时间: 2013-3-14 15:39
ATDCTRL5设置成多通道转换后,ATDCTRL3设置采集的通道数,,在哪设置??难道是 ATDCTL3和 ATDCTL5????

作者: hj.exe    时间: 2013-3-16 23:16
谢谢~
作者: 石悦    时间: 2013-3-18 22:33
好东西

作者: dlyt03    时间: 2013-3-19 09:10
谢谢,学习了!!
作者: yyq20104668    时间: 2013-3-19 23:39
先赞一个。
作者: kmhz3    时间: 2013-4-13 17:22
学习了~
作者: ~~.枭·}雄~~    时间: 2013-4-15 12:24

作者: 602王帅    时间: 2013-4-20 10:20
有种恍然大悟的感觉。

作者: 暖暖10312138    时间: 2013-5-18 16:09
狠狠 很好!很强大!:)
作者: lwg1994    时间: 2013-5-20 15:28
非常好。。我这AD转换一直搞不清,终于在看了这个之后,全部清楚了、谢谢了。。。
作者: yaohuan824    时间: 2013-6-2 14:45
mark

作者: 天然呆~    时间: 2014-3-16 21:22
好东西啊,我找了好久呀,赞个
作者: 15632613458    时间: 2014-5-13 20:21
很好啊  不过我还没学好
作者: 冷技    时间: 2015-3-11 19:05
真心不错
作者: 这里还有鱼    时间: 2015-3-12 08:51
好东西
作者: 微光刺眼    时间: 2015-3-12 20:49
谢谢




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2