你好!
我用2812外扩了一片AD,采样率为10MHZ,但是通过CCS观察到得数据的采样率只有1MHZ左右。
DSP与AD之间的接口为并行接口,数据映射到XINTF存储区域的地址为XINTF Zone6的0x100001。
需要采样512个数据。程序中我的设置为:
for(i=0;i<512;i++)
{
Voltage[i]=ADCDATA; // ADCDATA为0x100001的地址;
}
读数据时,XINTF的片选信号XZCS6引脚应该为低。但是检测到XZCS6引脚的脉冲频率为1MHZ左右。
从上面的程序中可以看到,我已经将读信号的速度设到最高了,还存在这个问题。
因此,我想请问一下,这个会是什么原因?是2812本身读信号的周期就比较长吗?
谢谢了。!
}
Young Hu:
修改一下DSP281x_Xintf.c中的XINTF时钟信号的配置看看。
你好!
我用2812外扩了一片AD,采样率为10MHZ,但是通过CCS观察到得数据的采样率只有1MHZ左右。
DSP与AD之间的接口为并行接口,数据映射到XINTF存储区域的地址为XINTF Zone6的0x100001。
需要采样512个数据。程序中我的设置为:
for(i=0;i<512;i++)
{
Voltage[i]=ADCDATA; // ADCDATA为0x100001的地址;
}
读数据时,XINTF的片选信号XZCS6引脚应该为低。但是检测到XZCS6引脚的脉冲频率为1MHZ左右。
从上面的程序中可以看到,我已经将读信号的速度设到最高了,还存在这个问题。
因此,我想请问一下,这个会是什么原因?是2812本身读信号的周期就比较长吗?
谢谢了。!
}
qin longhui:
回复 Young Hu:
谢谢蝈蝈。试过了。禁止了XREAD,LEAD , ACTIVE 和 TRAIL都设为1,甚至XTIMCLK设为0,效果都不大,只是到一点几MHZ。
你好!
我用2812外扩了一片AD,采样率为10MHZ,但是通过CCS观察到得数据的采样率只有1MHZ左右。
DSP与AD之间的接口为并行接口,数据映射到XINTF存储区域的地址为XINTF Zone6的0x100001。
需要采样512个数据。程序中我的设置为:
for(i=0;i<512;i++)
{
Voltage[i]=ADCDATA; // ADCDATA为0x100001的地址;
}
读数据时,XINTF的片选信号XZCS6引脚应该为低。但是检测到XZCS6引脚的脉冲频率为1MHZ左右。
从上面的程序中可以看到,我已经将读信号的速度设到最高了,还存在这个问题。
因此,我想请问一下,这个会是什么原因?是2812本身读信号的周期就比较长吗?
谢谢了。!
}
qin longhui:
回复 Young Hu:
还有别的什么方法吗?
谢谢了。
你好!
我用2812外扩了一片AD,采样率为10MHZ,但是通过CCS观察到得数据的采样率只有1MHZ左右。
DSP与AD之间的接口为并行接口,数据映射到XINTF存储区域的地址为XINTF Zone6的0x100001。
需要采样512个数据。程序中我的设置为:
for(i=0;i<512;i++)
{
Voltage[i]=ADCDATA; // ADCDATA为0x100001的地址;
}
读数据时,XINTF的片选信号XZCS6引脚应该为低。但是检测到XZCS6引脚的脉冲频率为1MHZ左右。
从上面的程序中可以看到,我已经将读信号的速度设到最高了,还存在这个问题。
因此,我想请问一下,这个会是什么原因?是2812本身读信号的周期就比较长吗?
谢谢了。!
}
Jay:
回复 qin longhui:
您采用FOR循环来进行测试,测试的结果包含了FOR循环的时间。
请修改程序如下:
for(i=0;i<512;i++)
{
Voltage[i]=ADCDATA; // ADCDATA为0x100001的地址;
Voltage[i]=ADCDATA;
Voltage[i]=ADCDATA;
Voltage[i]=ADCDATA;
Voltage[i]=ADCDATA;
Voltage[i]=ADCDATA;
Voltage[i]=ADCDATA;
Voltage[i]=ADCDATA;
Voltage[i]=ADCDATA;
Voltage[i]=ADCDATA;
}
看看检测到XZCS6引脚的脉冲频率为是否有所变化?
你好!
我用2812外扩了一片AD,采样率为10MHZ,但是通过CCS观察到得数据的采样率只有1MHZ左右。
DSP与AD之间的接口为并行接口,数据映射到XINTF存储区域的地址为XINTF Zone6的0x100001。
需要采样512个数据。程序中我的设置为:
for(i=0;i<512;i++)
{
Voltage[i]=ADCDATA; // ADCDATA为0x100001的地址;
}
读数据时,XINTF的片选信号XZCS6引脚应该为低。但是检测到XZCS6引脚的脉冲频率为1MHZ左右。
从上面的程序中可以看到,我已经将读信号的速度设到最高了,还存在这个问题。
因此,我想请问一下,这个会是什么原因?是2812本身读信号的周期就比较长吗?
谢谢了。!
}
qin longhui:
回复 Jay:
谢谢你,JAY!
我试了这种方法,但是XZCS6的脉冲频率变化很小,只有一点点增加。我最后要采样率为10MHZ,但是现在的读写速度实在太慢了。
请问还有别的什么办法吗?
谢谢了
你好!
我用2812外扩了一片AD,采样率为10MHZ,但是通过CCS观察到得数据的采样率只有1MHZ左右。
DSP与AD之间的接口为并行接口,数据映射到XINTF存储区域的地址为XINTF Zone6的0x100001。
需要采样512个数据。程序中我的设置为:
for(i=0;i<512;i++)
{
Voltage[i]=ADCDATA; // ADCDATA为0x100001的地址;
}
读数据时,XINTF的片选信号XZCS6引脚应该为低。但是检测到XZCS6引脚的脉冲频率为1MHZ左右。
从上面的程序中可以看到,我已经将读信号的速度设到最高了,还存在这个问题。
因此,我想请问一下,这个会是什么原因?是2812本身读信号的周期就比较长吗?
谢谢了。!
}
Terry Deng:
芯片的时钟有没有设置到最大150M
你好!
我用2812外扩了一片AD,采样率为10MHZ,但是通过CCS观察到得数据的采样率只有1MHZ左右。
DSP与AD之间的接口为并行接口,数据映射到XINTF存储区域的地址为XINTF Zone6的0x100001。
需要采样512个数据。程序中我的设置为:
for(i=0;i<512;i++)
{
Voltage[i]=ADCDATA; // ADCDATA为0x100001的地址;
}
读数据时,XINTF的片选信号XZCS6引脚应该为低。但是检测到XZCS6引脚的脉冲频率为1MHZ左右。
从上面的程序中可以看到,我已经将读信号的速度设到最高了,还存在这个问题。
因此,我想请问一下,这个会是什么原因?是2812本身读信号的周期就比较长吗?
谢谢了。!
}
qin longhui:
系统时钟是配置到了150MHZ的。这个是通过InitPll(0xA);语句倍频配置到的。
所以我想请大家帮我看看,能不能有明确的答案,是2812访问外设的速度最高就只到几MHZ吗?还是我配置的有问题?
P.S.系统时钟是150MHZ,XINTF ZONE6的XINTF 时钟我也配置到了最大。