-
谢谢版主本的信息.TrueStudio也有免费/限时/收费三种版本,呵呵 下个免费的看看
-
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //这个参数说明了在NVIC_IRQChannel 成员定义的IRQ 通道是使能还是无效的
使能了啊 ...
这句话只是使能了NVIC模块。
-
我也来顶一下!
用excel生成的64点采样数据,这样就不存在采样误差的问题,纯粹验证ST的FFT库。
50hz,基波1.65V,直流分量1.65V,这些都是不变的,只有初始相角发生变化,每次变化60度,生成6组样本数据。
初始相角0度时,计算得基波幅度为1482 --- AD数据数据之间参与运算,不是电压值
初始相角240度时,计算得基波幅度为1498
其他角度就不一一赘述了。
上述2个数据差了16个AD值,相对于3.3V的系统来说,就是0.13V了,这个误差是不是大点了??
求模和相角的程序:
void powerMag(long *fftbufout,u16 *mag,u16 *angle)
{
s32 lX,lY;
float X,Y,Mag;
angle = angle;
//direct current
lX= (fftbufout[0]<<16)>>16; /* sine_cosine --> cos */
lY= (fftbufout[0] >> 16); /* sine_cosine --> sin */
X= ((float)lX)/512; // X= 64*((float)lX)/32768;
Y = ((float)lY)/512; // Y = 64*((float)lY)/32768;
Mag = sqrt(X*X+ Y*Y)/NPT; // 先平方和,再开方
mag[0] = (u16)(Mag*65536); //
//50HZ
lX= (fftbufout[1]<<16)>>16; /* sine_cosine --> cos */
lY= (fftbufout[1] >> 16); /* sine_cosine --> sin */
X= ((float)lX)/512; // X= 64*((float)lX)/32768;
Y = ((float)lY)/512; // Y = 64*((float)lY)/32768;
Mag = sqrt(X*X+ Y*Y)/NPT; // 先平方和,再开方
mag[1] = (u16)(Mag*65536); //
if(lX!=0)
{
Mag = atan2f(Y,X);
// if(lY<0)
{
// angle[1] = ((-Mag*180*1000/3.1415926-5625)*2)/1000;
}
// else
{
angle[1] = (Mag*180/3.1415926)+360;
angle[1] = angle[1]%360;
};
};
}
欢迎ST和大家排砖!
-
我也在关注,这个事情,希望早点出来,并且还和STM32F一样便宜,呵呵
-
新手,学习中……
-
你找一下BSP_CFG.H看一看。
-
引用 7 楼 so927 的回复:
这三个更新,如果只安装第一个更新,就能编译过
后面两个安装之后就编译不过了。
那不要装后面两个
-
该了一下时钟,把时钟降低,再加上超时处理,好多了
-
我目前的问题与你一样。
我用taskDelete解决的,可是内存会减少!?不知道是不是此函数引起。
-
不一定要先学单片机的,现在主流的都是ARM,你可以直接学习ARM,在选个简单的操作系统UC/OS最合适你对操作系统的理解。
-
“多余”是指什么?
作为存储器接口,只要保证在CS有效时,各个信号及其关系正确即可,而不必在乎CS无效时的状态。
-
感觉像是多个机器同时占用总线了。。。
-
貌似友善的开发板是从Nor启动,然后通过在Nor里的程序烧写nand。
-
现在嵌入式很热门啊,我们这自动化的研究生,也都跟导师做嵌入式方向
-
GOD。好久了,感觉不到自己有所进步
-
看到有人回贴心里很高兴
。。。。。。
-
mark
-
MARK, 帮顶下。
-
下载 (148.19 KB)
2009-11-25 22:13
下载 (188.13 KB)
2009-11-25 22:13
下载 (147.52 KB)
2009-11-25 22:13
下载 (148.41 KB)
2009-11-25 22:13
a3.jpg
(147.89 KB)
下载次数:22
2009-11-25 22:13
a5.jpg
(149.12 KB)
下载次数:24
2009-11-25 22:13
-
顶下