本人使用28377s作为信号采样,使用ADC中断进行采样,使用了ADCa0~5, ADCb0~5这几个口,发现有一个量A在实际波形中超前B,然而在dsp中使用画图画出来滞后于B。检查了ADC口接收的到的信号,相位正确;交换了ADC口接收的信号,相位仍然错误,排除了dsp芯片的问题。以下为错误波形,A应该滞后于B。
然后我尝试另一个简单的程序,该程序采用epwm作为中断,波形相位与实际吻合,不知是否是中断问题,以下为正确波形
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.
本人使用28377s作为信号采样,使用ADC中断进行采样,使用了ADCa0~5, ADCb0~5这几个口,发现有一个量A在实际波形中超前B,然而在dsp中使用画图画出来滞后于B。检查了ADC口接收的到的信号,相位正确;交换了ADC口接收的信号,相位仍然错误,排除了dsp芯片的问题。以下为错误波形,A应该滞后于B。
然后我尝试另一个简单的程序,该程序采用epwm作为中断,波形相位与实际吻合,不知是否是中断问题,以下为正确波形
您好,上述几个程序都是我自己编写的,在上一版电路中这两个程序采样都没有问题都能够正常使用,在这一版电路中有一个程序出现了相移所以。
TI的例程还没有尝试
我尝试烧写过TI例程,未发现相移,但大部分官方例程均为ram中进行编译和运行。尝试烧写例程中flash的那个例程出现了错误如下,不知是否是CCS版本问题,ccs版本9.0.1:
个人认为是未选择仿真器型号或者不匹配,于是将Property里面确定了仿真器型号以及dsp信号,于是出现了更多的error:
程序由于太大ram中放不下无法运行,在main函数中加入了Memcopy函数配合#pragma DATA_SECTION以及#pragma CODE_SECTION将部分flash中的函数放到ram中运行。该工程之前一版硬件调试时采样未出现相移情况,这一版出现了。但是将ADC口的波形引出在示波器上进行观察,未发现相移情况,故排除硬件原因,确认是代码原因。但由于错误不明显所以无法具体排查较为头疼。