dsp语句执行时间问题??

2019-03-26 15:47发布

本帖最后由 huangyiqian1000 于 2014-9-4 08:34 编辑

ACtemp=AC_current/4096*3.3;
result1 = result1+ACtemp*ACtemp;(这是用来采样交流电流,来计算有效值)像这样的计算语句执行要多长时间。(ACtemp和result1均为float)
我把这语句放到timer1定时器中断里边就会影响到以timer0为触发源的ADC采样。
我把timer1的周期设为30000(为500US),timer0的周期为60*1000000(为1S),时钟脉冲为60MHZ。
有考虑到用IQ来做写,但是都不执行不知道是什么原因。
ACtemp=_iq29(AC_current/4096*3.3);
result1 = _IQ29(result1+ACtemp*ACtemp);
@maychang @soso @chenzhufly @dontium @常见泽1 @ltbytyn @ltbytyn @chunyang @tiankai001 @jishuaihu @lonerzf @huo_hu   此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
awpbuhui
1楼-- · 2019-03-26 22:02
< 不要用除法,除法耗资源太多。AC—current是AD口寄存器的16位整数,ACtemp = (float)(AC_current >>12) * 3.3
lelee007
2楼-- · 2019-03-27 01:25
< 定点dsp
huangyiqian1000
3楼-- · 2019-03-27 03:13
awpbuhui 发表于 2014-9-4 10:45
不要用除法,除法耗资源太多。AC—current是AD口寄存器的16位整数,ACtemp = (float)(AC_current >>12) * 3 ...

不能右移 会出现错误Description Resource Path Location Type
#31 expression must have integral type isr.c /myFirstProject123com/Application line 84 C/C++ Problem

lelee007
4楼-- · 2019-03-27 08:53
 精彩回答 2  元偷偷看……
lelee007
5楼-- · 2019-03-27 14:19
浮点数右移?
lelee007
6楼-- · 2019-03-27 16:08
浮点数移位操作的意义是啥?

一周热门 更多>