初级会员

- 积分
- 109
- 金钱
- 109
- 注册时间
- 2012-8-14
- 在线时间
- 0 小时
|

楼主 |
发表于 2013-6-19 14:38:07
|
显示全部楼层
回复【3楼】正点原子:
---------------------------------
#define BASE_ADDR 0X1810
我的步骤是:
VS_Init();
VS_HD_Reset(); //硬复位
VS_Soft_Reset(); //软复位
LoadPatch(); //加载频谱分析代码,我用的是specanaappl1053b-2.c里面长度为970的数组,没有加载FLAC解码插件,我看手册上是这么说的
// 如果用943的频谱加载代码,bands的值就完全是乱的,大概在20000+左右震荡
//设置新的频谱条数以及频率
VS_WR_Cmd(SPI_WRAMADDR,BASE_ADDR+0x58);
for(i=0;i<(sizeof(VS_NEW_BANDS_FREQ_TBL)/sizeof(VS_NEW_BANDS_FREQ_TBL[0]));i++)
{
VS_WR_Cmd(SPI_WRAM,VS_NEW_BANDS_FREQ_TBL); //这是自己设置的新的频率数组
}
if(i<15)
VS_WR_Cmd(SPI_WRAM,25000);
VS_WR_Cmd(SPI_WRAMADDR,BASE_ADDR+1);
VS_WR_Cmd(SPI_WRAM,0);
//读取bands的数据
VS_WR_Cmd(SPI_WRAMADDR,0x1812);
bands = VS_RD_Reg(SPI_WRAM);
LCD_ShowNum(60,145,bands,7,16); //这里读取出来的bands和设置的频率的个数对不上,比如我设置了14个新的频率
// 但bands读出来 = 10。 |
|