首页 理论教育 不间断的自动排序模式

不间断的自动排序模式

时间:2023-06-29 理论教育 版权反馈
【摘要】:不间断自动排序模式即连续转换模式,在该模式下SEQ1/SEQ2能在一次排序过程中,对多达8个转换通道进行自动排序。在每次转换的开始,该值就被自动装载到自动排序状态寄存器AUTO_SEQ_S R中。 采用SEQ1的双排序模式下的转换。如果每次SEQ CNTRn减到0时,中断标志位被设置1,可以在中断服务子程序ISR中对排序器通过软件复位。这在排序器的启动/停止操作模式下很有用。例5-1也可用于SEQ2和级联模式下的16状态排序器SEQ。

不间断的自动排序模式

不间断自动排序模式(Uninte rrupted Auto sequenced Mode)即连续转换模式,在该模式下SEQ1/SEQ2能在一次排序过程中,对多达8个转换通道进行自动排序。

下面的描述适用于双8状态排序器。连续转换模式下,SEQ1/SEQ2可一次对8个转换进行排序。SEQ1的转换结果保存在RESULT0~RESULT7中,SEQ2的转换结果保存在RE⁃SULT8~RESULT15中。在MAXCONV寄存器中的MAX CONVn位置存放了每次转换的数量。在每次转换的开始,该值就被自动装载到自动排序状态寄存器AUTO_SEQ_S R中(SEQ CNTRn位)。MAX CONVn共有3位(或4位,与工作模式有关),变化范围从0~7(或0~15)。寄存器AUTO_SEQ_SR中的SEQ CNTRn位在载入初始值后,每转换完一路就减1,减到0意味着转换全部完成。一次自动转换完成的转换数为MAX CONVn+1。

【例5-1】 采用SEQ1的双排序模式下的转换。

设在SEQ1中有7路(状态)转换,即ADCIN2和ADCIN3各两次,ADCIN6、ADCINA7和ADCIN12各1次。则MAX CONV1=6,CHSELSEQn各寄存器中按表5-2所示内容放入数值。

在SOC触发信号到来后,AUTO_SEQ_SR中的SEQ CNTRn位自动载入6,转换开始后,每转换完一路就减1。一旦SEQ CNTRn=0,就会发生如下情况:

5-25-1 寄存器CHSELSEQn中的数值表(www.xing528.com)

978-7-111-36250-0-Chapter05-4.jpg

1)如果ADCTRL1寄存器中的CONT RUN位为1,那么转换又自动开始,即SEQ CNTRn重新载入6,且SEQ1指向CONV00。这种情况下,必须在下一个转换序列开始前读出结果寄存器中的数据,以免数据被下次转换结果覆盖。

2)如果CONT RUN位为0,那么排序器停止在最后的状态CONV06,SEQ CNTRn保持0不变。为了在下次SOC时可重复上述采样过程,必须使用ADCTRL2寄存器中的RST SEQ1位来复位排序器。

如果每次SEQ CNTRn减到0时,中断标志位被设置1,可以在中断服务子程序ISR中对排序器通过软件复位(用RST SEQ1位)。这在排序器的启动/停止操作模式下很有用。

例5-1也可用于SEQ2和级联模式下的16状态排序器SEQ。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈