最近刚开始学28335,看到ADC模块,有很多疑问,以下都是我自己的理解,请各位大神指点一下,帮我指出里面有问题的地方,感激不尽!!
1.我想对一个通道的值多次采样求平均,有两个想法,但是不知道对不对:
a.排序器设置1个转换序列SEQ1有5个转换,但是只采集一个通道,也就是一个转换序列对1个通道连续转换5次,最后将结果寄存器的5个值拿出来求平均。
b.排序器设置1个转换序列SEQ1有1个转换,5次转换序列后将结果求平均。
不知道各位是怎么处理的?
2.自动转换序列与排序器连续运行
自动转换序列是否是针对一个转换序列中MAXCONV+1个转换来说的?只要排序器被触发,MAXCONV+1个转换永远会一次性转换完(不被其他寄存器设置所改变),能不能回到CONV00继续下一次转换序列就需要看排序器的运行方式是否是连续的?
3.排序器运行方式(连续、启动/停止)
a.连续模式下是否只需要一个触发源,然后排序器就会一直按周期连续运行下去?
b.启动/停止需要有周期的触发源和复位排序器才能让其按周期连续的运行下去?
4.寄存器SEQ_OVER的描述
0:转换完MAX_CONVn个通道后,排序器指针复位到初始状态。
1:最后一个排序状态后,排序器指针复位到初始状态。
请问这两个有什么区别,第一个我懂,第二个没见过啊。
5.寄存器INT_MOD_SEQ1中断模式
0:每个SEQ1序列结束后,INT SEQ1置位
1:每隔一个SEQ1序列结束后,INT SEQ1置位
第二个是指两个SEQ序列产生一个中断?那样结果寄存器里面的值不是会被第一个SEQ1序列的转换值所覆盖,那样与一个SEQ1序列产生一次中断没区别啊。 |