This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

求助!TMS320F2812多通道采集ADS8556的六道信号离奇出

Other Parts Discussed in Thread: TMS320F2812, ADS8556, TMS320C28346

TMS320F2812多通道采集ADS8556的六道信号离奇出,DSP只是采集数据,不作任何算法处理,采集数据正确(六道数据各个值正常),如果采集完成一组数据,做个平均滤波矫正等,采集数据就会出错(六道数据“串码”,第一道数据进入第二道缓冲区内,第二道进入第四道缓冲区内。。。。没有规律)

我的数据处理和数据采集,不相关啊(数据处理函数只是调用采集数据,没有变化采集数据),序思路是 使能ADC工作,开启多通道采集数据,等待采集完成(一定数量,比如64 个点),复位ADC,关闭多通道,算法处理。请问能具体指点下,什么情况可能会造成如此错误(有算法,数据串码)?

  • 求助啊!请大家指点啊

  • 这是周末啊,注意劳逸结合。

    另外你发错版了,这个属于c2000,我给你转过去。。。

  • 你在用ADS8556的时候使用并行方式还是串行方式进行数据采集的?

    我在用TMS320C28346采样ADS8556的时候是这么做的:将ADS8556的BUSY/INT管脚连接到DSP芯片,并且配置为外部中断信号,将该信号的下降沿作为中断源启动DMA读取外部总线数据(即ADS8556转换结果),当采完一周波数据之后进入DMA中断,进行数据处理。

    我不是很清楚你这里的所谓使能ADC工作,开启多通道采集数据具体指的是什么内容,而且你在进行算法处理的时候,会将原始数据和计算结果数组重叠吗?

  • 不好意思,公司网不给力,只能回家登陆!我是使用MCBSP接口,串口读取ADS8556的数据;ADS8556有个复位管脚啊,我用I/O口控制,复位ADC,使能ADC啊。我在中断中无法完成数据处理,我采集64个数据后,停止读取ADC数据后,再处理数据。错误是:六道数据,一道数据64个数,一道的数进入二道,二道进入三道。。。,而且64个数据整体错乱空间,像是缓冲区搞错似的,一道缓冲区成了二道的数据。我不清楚我说明白了吗。

  • 第一次发帖,不好意思,谢谢!我公司网不行,只能休息时间发帖啊

  • 在不进行数据处理的情况下,采集数据时正确的吗?  你采集的是直流信号还是交流信号,你是怎么判断数据错乱的?如果是交流信号,会不会因为你进行计算之后,花费更多时间,导致后续采样产生了相移?

  • 我使用六道信号,应用时采集正弦信号。我测试时,只在第一道和第六道上加了信号,其余四道接地,采集64个点正好是一周期,发现是有两道数据采集信号是一个周期,但两道信号不一定是第一道和第六道,整体“串了缓冲空间”,可能是第二道和第三道,或者别的数据道上。我怀疑缓冲区“乱了”,数据读数时读回来后“放错”缓冲区了; 我正在努力寻找问题,最有可能是程序时序问题。

  • McBSP访问ADS8556的确挺容易出现时序问题的,你接第一道和第六道,由于读取完第六道数据后紧接着就是第一道数据,实际读取的时候就相当于连续的两道数据,如果每次岔道都是连续的话,应该就是复位之后再读取时产生的时序问题。

  • 好的,我明天试试,先谢谢了!

  • 谢谢,我解决了!