asnowgober 发表于 2013-7-20 23:00:37

AD芯片时序求教


图中CNV信号在转换阶段怎么出现同时高低啊?
SCK信号在16个时钟信号前后叉叉代表啥意思啊?
SDO在16个时钟信号前后是高阻态?

siyeb 发表于 2013-7-21 22:12:48

PDF上写着,

1.当CNV上升沿的时候,开始转换,在转换完成的最小时间里你可以用同一根CNV控制另外一个设备。并在最小转换时间完成的到来吧CNV重新弄回高电平。

2.XX代表无所谓。你读完这个的转换数据以后是啥就没所谓了啊。

3.SDO的高阻态表示这个器件的输出不影响其他器件(在有多个SPI设备并联时)

4.好好看PDF啊亲。

asnowgober 发表于 2013-7-21 22:18:43

siyeb 发表于 2013-7-21 22:12 static/image/common/back.gif
PDF上写着,

1.当CNV上升沿的时候,开始转换,在转换完成的最小时间里你可以用同一根CNV控制另外一个设备 ...

用verilog写代码时,这个图上的时间参数应该要去关注哪几个呢?比如像tEN、tDIS要管吗?

siyeb 发表于 2013-7-21 22:21:58

要不要管?肯定要管,要不然要时序干啥时捏。

要管谁,要看你的采样率啊。

asnowgober 发表于 2013-7-22 12:57:57

siyeb 发表于 2013-7-21 22:21 static/image/common/back.gif
要不要管?肯定要管,要不然要时序干啥时捏。

要管谁,要看你的采样率啊。 ...

像这样一个时序,分成几个状态来写比较好呢,比如第一个状态为idle,第二个状态为cnv,第三个状态为read,idle一般为初始化状态,在idle状态下满足什么条件时,下一个状态就是cnv呢?

siyeb 发表于 2013-7-22 13:27:38

asnowgober 发表于 2013-7-22 12:57 static/image/common/back.gif
像这样一个时序,分成几个状态来写比较好呢,比如第一个状态为idle,第二个状态为cnv,第三个状态为read ...

我的思路,在初始化完成后就等待中断,在中断中转换、读取。具体实现还是要看你要实现什么功能。

yongjia 发表于 2013-7-22 14:30:31

这个需要好好看ADC的DATASHEET,没楼上2位说的那么简单。这个说SDI为高的情况下的一个转换和数据输出时序,这个是不检测忙信号的转换。让CNV在开始转前先从低变高,再变低,再变高,持续TCONV时间,要大于转换时间,然后再变低,提示转换完成,这个时候可以给cllk读数据,注意CNV信号,注意TNVH,TCONV

幸福的鱼 发表于 2013-7-24 12:43:10

tcnvh指的是cnv控制信号的最小脉宽,tconv是器件从cnv的上升沿开始转换数据到获得数据后的固有转换时间,cnv的控制和采样率有关,占空比没有太大的关系,可以对cnv上升沿后计数产生SCK读取时钟,将数据移入寄存器中
页: [1]
查看完整版本: AD芯片时序求教