打印

Δ-ΣADC模块 --操作模式

[复制链接]
1074|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
电子信使|  楼主 | 2015-7-24 08:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
设置者可以配置ADC,使其工作在下面的四种模式之一:
1.单采样
2.多采样
3.连续
4.多采样(Turbo)
通过往控制寄存器写启动位或者发送开始转换信号(Start of Conversion,SoC),来启动ADC转换器。当转换结束后,设置一个状态位,并且转换结束信号(End of Conversion, EOC)高有效,直到CPU或DMA读取转换值为止。
沙发
电子信使|  楼主 | 2015-7-24 08:32 | 只看该作者
单采样
       在触发器作用下,执行单次采样。在这种模式下,ADC在待机模式下等待SOC信号有效。当SOC有效,ADC执行一次采样转换,并捕获结果。为了检测EOC,系统可以轮询一个控制寄存器或者配置外部的EOC信号来产生一个中断或者调用DMA请求。当传输完成后,ADC进入待机状态。直到下一个SOC事件。

使用特权

评论回复
板凳
上山砍老虎| | 2015-7-24 08:35 | 只看该作者
连续采样
        连续采样用于对一个输入信号多个连续的采样。在这个模式下不实现复用多个输出。在第一个转换结果可用以前,有3个转换延迟。这是对基本抽取器的时间要求。当第一个结果之后,连续的以给定采样率的转换结果就是可用的。

使用特权

评论回复
地板
上山砍老虎| | 2015-7-24 08:39 | 只看该作者
多个采样
        除了在采样之间需要复位外,多个采样模式类似于连续模式。当在多个信号直接切换输入时,这个模式是有用的。在每个采样之间,重新填充抽取器,这样前面的采样不会影响当前的转换。当完成采样后,自动初始化下一个采样。使用固件轮询、中断和DMA传输转换结果。

使用特权

评论回复
5
zb0830| | 2015-7-24 08:40 | 只看该作者
多个采样(Turbo)
       分辨率为8-16位多个采样(Turbo)模式和多采样模式相同。对于17-20位的分辨率,由于只在每个转换结束时,才复位ADC。所以,性能大约比多个采样模式快4倍。
        SOC信号用于启动ADC。一个数字时钟或者UDB的输出能用于驱动这个输入信号。此外,采样周期必须大于转换周期。在系统中,如果需要ADC和其他硬件同步,则需要使用SOC信号。这个信号是可选的,如果ADC运行在连续模式下,则不需要这个信号。
       当每次转换完后,EOC信号为高。这个信号可用于触发一个中断或者DMA请求。

使用特权

评论回复
6
peace555| | 2015-7-24 09:07 | 只看该作者
从ADC的数字数出也会超过范围10%,如果ADC配置为10位操作,通常一个10位的差分的ADC输出范围-512到511,对应-1.024到+1.022。由于这个额外的10%的范围,数字输出直到计数±563前不会饱和(而不是-512到511)。

使用特权

评论回复
7
peace555| | 2015-7-24 09:07 | 只看该作者
除非分辨率设为8位或16位时,一般不需要关心的问题。当分辨率设置为8位时,必须要注意不能使计数值从其最大的正值/负值卷回到所对应的一个负值或者负值。防止产生这个问题使用API函数,使得返回一个比设定分辨率大的一个值。比如:      
1)分辨率设为16位,其最大的正值和负值会超过32767~-32768的范围,所以使用ADC_GetResult32()函数,而不是使用ADC_GetResult16()函数。
2)对分辨率为8时,其最大的正值和负值会超过127~-128,所以使用ADC_GetResult16()函数。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

49

主题

388

帖子

0

粉丝