这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 32,FFT,2407 求一32点的FFT程序(2407)

共2条 1/1 1 跳转至

32,FFT,2407 求一32点的FFT程序(2407)

院士
2006-09-17 18:14:16     打赏
32,FFT,2407 求一32点的FFT程序(2407)



关键词: 求一     32点     程序    

院士
2006-12-22 22:43:00     打赏
2楼
问 我要做一个测压模块,用2407,可我不会汇编,哪位好心人给我一份32点的FFT程序啊!!!
TI的没32点的,有看不懂汇编,急啊!!!

我信箱:xinxiang9000@yahoo.com.cn 1: TI的网站上有现成的库文件下载 2: 去ti下载个库改改就好了,下载的库有128,256等点的,改成32点的 3: 我不会汇编啊我看不懂汇编啊,试着改过128R的,只知道改N,和TF,具体里面的循环我看不懂,没改成功!!!郁闷啊!!

哪位能不能给我发份啊,我用刘和平书上的做32FFT,单独使用时还可以,但加到主程序里就不行了 4: fft要占用一些资源书上的软件是对的,要定义好资源 5: 这是排序程序,但不对反转排序有问题,我只会C,不会改,请高手帮我看看哪个地方出错了

re_array是排序后的结果数组,初始化为0
in_date_real是输入数据的实部,
虚部在re_array中已经初始化为0了

我是用C调用_re_save

     .def  _re_save
N    .set    32
     .global    _re_save
     .global    _in_array
     .global    _in_date_real
     
_re_save:
      POPD    *+
      SAR     AR0,*+
      SAR     AR1,*
      LAR     AR0,*+,AR3
      LAR     AR2,#_in_array
      LAR     AR3,#_in_date_real
      LAR     AR0,#N
      LAR     AR4,#(N-1)
LOOP:
      LACC    *+,0,AR2
      SACL    *BR0+,AR4
      BANZ    LOOP,*-,AR3
      MAR     *,AR1
      SBRK    #2
      LAR     AR0,*-
      PSHD    *
      RET

计算时,排序位置不对,并且会修改in_date_real里原实部的数据,跟踪显示是在第三次存数组时出的错,以后还有7次的错,但其它的操作是正确的

请高手指点!!!



6: ???我该怎么分配资源啊,就那三句循环,郁闷啊!!! 7: 我明白了反向进位是必须在一页之内的,否则地址是错的,而我的re_array是分布在两页的,所以反向进位后地址是错的,所以结果不对。

我现在的问题是怎么把re_array分配到一页中,不让它跨两页。

请教老师们,我怎么在CMD中分配呢???
这个我是真的不会了!!! 8: 分析改变re_array地址问题我已经解决,但不是改CMD解决的,只是改了分配顺序,用CMD指定我还不会,希望高手能指点一二

因为我看DATA空间时发现CONST定义的也在DATA空间,能不能把它放到FLASH里呢???
还有就是象SINTAB,或显示的字符编码等都在DATA空间,这些肯定应该是存储在FLASH的,用时调到DATA空间的,这样既耗时,有占用空间,能不能把他们都放在FLASH空间,直接调用呢???

请高手指教!!! 9: ???没人愿意说一下吗??? 10: 不会这么复杂吧我就改了下参数,128_default什么的,改成64点的参数就能是64点的了,排序什么的我看也是对的. 11: 正常情况是的正常情况是的,只修改一下N就行了,但有例外的时候,我的运气就比较好,我郁闷了一个星期才找到真正原因,我只会C,看来还是学点汇编比较好!

有没有哪位大虾有例子,就是把某个数组放到指定的空间??? 12: kankan 13: 请教我想用C语言写出FFT的公式,请各位赐教.

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]