打印

定点dsp能不能处理浮点数,如果不能为什么

[复制链接]
1701|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
969121641|  楼主 | 2013-10-3 13:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 969121641 于 2013-10-3 13:22 编辑

定点dsp能不能处理浮点数,如果不能为什么通过硬件仿真可以用printf输出正确的浮点数据?

//g_lpTemp,g_lpOrient分别指向存储图像数据的两个数组
问题是下面的函数在VC6.0++中都能正确的实现,为什么在CCS3.3硬件仿真过程中实现不了?
本人用的DSP5509,是定点DSP,但是函数中用到了浮点数,不知道是不是这个原因。但如果是这个原因,
为什么在下面的测试函数里可以得到正确的浮点数(通过CCS3.3的printf输出lvx,lvy等数据),即#ifndef TEST 中可以正确的输出浮点数结果?
void getOrientMap(unsigned char *g_lpTemp, unsigned char *g_lpOrient, int IMGW, int IMGH, int r)
{
int x,y,i,j;
int vx, vy;
long lvx, lvy;
unsigned char  *lpSrc = NULL;
unsigned char  *lpOri = NULL;
int angle;
unsigned int num;
double  fAngle;
........
vx = *(lpSrc + IMGW/2 + 1) - *(lpSrc + IMGW/2 - 1) +
*(lpSrc + 1)*2 - *(lpSrc - 1)*2 +
*(lpSrc - IMGW/2 + 1) - *(lpSrc - IMGW/2 - 1);
vy = *(lpSrc + IMGW/2 - 1) - *(lpSrc - IMGW/2 - 1) +
*(lpSrc + IMGW/2)*2 - *(lpSrc - IMGW/2)*2 +
*(lpSrc + IMGW/2 + 1) - *(lpSrc - IMGW/2 + 1);
lvx = lvx+(2*vx*vy);
lvy = lvy+(vx*vx - vy*vy);
....
#ifndef TEST
// 求弧度
fAngle = atan2((double)lvy,(double)lvx);
printf("(%d,%d)=>>lvx=%ld,lvy=%ld<<--fAngle=(%f)\n",x,y,lvx,lvy,fAngle);
// 变换到(0 - 2*pi)
if(fAngle < 0)        fAngle += 2*PI;
// 求纹线角度
fAngle = fAngle*EPI/2 + 0.5;
printf("<->fAngle1=%lf)",fAngle);
angle = (int)fAngle;
printf("angle=<<%d>>\n",angle);
....
}
下面是dsp硬件仿真结果:(右上角是方向图)
http://zhidao.baidu.com/question ... html?quesup2&oldq=1
以下是vc6.0编程实现(最右侧是方向图)

相关帖子

沙发
airwill| | 2013-10-3 15:02 | 只看该作者
定点DSP, 也是可以处理浮点数的, 只是用软件来完成浮点计算, 很慢而已.

使用特权

评论回复
板凳
gcxzhz| | 2013-10-3 18:35 | 只看该作者
那天刚看了 2812的可以用iqmath 这个库函数来解决  楼主可以看看5000的有没有这个库函数

使用特权

评论回复
地板
bennik| | 2013-10-4 22:45 | 只看该作者
gcxzhz 发表于 2013-10-3 18:35
那天刚看了 2812的可以用iqmath 这个库函数来解决  楼主可以看看5000的有没有这个库函数 ...

用IQmath可以的但是我用的是28系列的你那个去官网收收看

使用特权

评论回复
5
yibiaoyangcai| | 2013-10-6 18:30 | 只看该作者
二楼正解

使用特权

评论回复
6
zhangmangui| | 2013-10-6 21:57 | 只看该作者
可以用IQMATH处理一下   先了解一下这个
定点是可以处理的  但是浮点处理器速度快精度高

使用特权

评论回复
7
拿起书本| | 2013-10-13 15:45 | 只看该作者
定点的DSP是可以处理浮点的,但速度和效率上肯定会受到一定的影响的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

18

帖子

0

粉丝