打印
[PIC®/AVR®/dsPIC®产品]

PIC33f 使用dsp指令进行数据运算的问题

[复制链接]
1270|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
galjewf|  楼主 | 2020-7-10 15:10 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 galjewf 于 2020-7-10 15:27 编辑

DSP芯片特点是有DSP指令进行数据运算速度更快。

看了一下程序员参考手册里关于DSP指令这一块,还是没搞懂怎么进行数学的运算。

比如说我要进行一个最简单的加法运算,是要到下图的这些指令吗?

那么我在main.c文件中进行加法运算,是不是要在函数中调用ADD这条指令?要用的话这个ADD不是汇编语言吗,那么在.c文件中又是怎么实现的呢?

第一次接触DSP芯片,总感觉无从下手,连这种最简单的问题都不能自己搞懂

使用特权

评论回复
评论
galjewf 2020-7-10 16:00 回复TA
刚刚看了一下网上的资料,我是在MPLAB IDE上用C语言编程,一个简单的乘法运算: a=b*c; 编译时候,C语言编译器会自动讲上述语句用DSP指令编译成汇编语句吗。 
沙发
ynwa| | 2020-7-10 15:30 | 只看该作者
在C的项目中使用嵌入式汇编混合编程当然是可以的,要用DSP核运算时直接使用DSP指令。
另外,也可以直接调用XC16编译器的内建函数。

使用特权

评论回复
评论
galjewf 2020-7-10 15:36 回复TA
那么请问,标准PIC33f项目的编程是直接用汇编吗 
板凳
galjewf|  楼主 | 2020-7-10 15:51 | 只看该作者
在下需要用这款芯片做一些实验,比如滑块平均滤波算、PID算法控制电机的,这些都涉及到数学的运算,需要使用DSP指令。那本人是不是要把C语言项目改成汇编语言的项目呢

使用特权

评论回复
地板
ynwa| | 2020-7-10 16:09 | 只看该作者
galjewf 发表于 2020-7-10 15:51
在下需要用这款芯片做一些实验,比如滑块平均滤波算、PID算法控制电机的,这些都涉及到数学的运算,需要使 ...

C项目里可以混合汇编,算法可以用汇编写,然后在C的主程序里调用。
另外,XC16编译器提供了DSP库,你可以先看一下DSP库的帮助文档,直接用库函数就可以了。

使用特权

评论回复
评论
galjewf 2020-7-10 16:21 回复TA
谢谢指导,哈哈 
5
淘猫汤姆| | 2020-7-10 17:17 | 只看该作者
galjewf 发表于 2020-7-10 15:51
在下需要用这款芯片做一些实验,比如滑块平均滤波算、PID算法控制电机的,这些都涉及到数学的运算,需要使 ...

千万别着急正汇编,XC里面的DSP函数库就是调用DSP指令的,一定要充分利用

使用特权

评论回复
6
galjewf|  楼主 | 2020-7-13 11:20 | 只看该作者
淘猫汤姆 发表于 2020-7-10 17:17
千万别着急正汇编,XC里面的DSP函数库就是调用DSP指令的,一定要充分利用

我现在在MPLAB IDE用的编译器好像是Microchip C30 ,Asm30。有什么办法调用XC的函数库吗?

如果不行,PIC33的汇编语言语法学习又该从何下手,也是汇编0基础,求大佬指条明路

使用特权

评论回复
7
CoolSilicon| | 2020-7-13 16:35 | 只看该作者
为什么这么执着汇编??
特别是新手来说, 你可以先用C语言来实现, 再研究效率问题....
一上手就选个地狱难度, 何必呢?!!

使用特权

评论回复
8
淘猫汤姆| | 2020-7-13 17:29 | 只看该作者
galjewf 发表于 2020-7-13 11:20
我现在在MPLAB IDE用的编译器好像是Microchip C30 ,Asm30。有什么办法调用XC的函数库吗?

如果不行,PIC3 ...

C30里面也有DSP库,注意看文档,一个单独的文件哦

使用特权

评论回复
9
galjewf|  楼主 | 2020-7-13 18:05 | 只看该作者
CoolSilicon 发表于 2020-7-13 16:35
为什么这么执着汇编??
特别是新手来说, 你可以先用C语言来实现, 再研究效率问题....
一上手就选个地狱难度, ...

也没有执着汇编,就是因为本人不清楚C30里面还有用C语言就可以调用DSP库的方法,楼下已经看到了提示。也谢谢您的提醒和建议。

使用特权

评论回复
10
galjewf|  楼主 | 2020-7-13 18:06 | 只看该作者
本帖最后由 galjewf 于 2020-7-13 18:09 编辑
淘猫汤姆 发表于 2020-7-13 17:29
C30里面也有DSP库,注意看文档,一个单独的文件哦

好的,这就去找找,是不是《程序员参考手册》?不过如果可以的话,能告诉在下具体是哪个文档哪个章节吗

使用特权

评论回复
11
淘猫汤姆| | 2020-7-14 08:59 | 只看该作者
galjewf 发表于 2020-7-13 18:06
好的,这就去找找,是不是《程序员参考手册》?不过如果可以的话,能告诉在下具体是哪个文档哪个章节吗[em ...

http://ww1.microchip.com/downloads/en/DeviceDoc/51456b.pdf

中文
http://microchip.com.cn/newcommunity/Uploads/Download/Library/51456d_cn.pdf

使用特权

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

本版积分规则

9

主题

41

帖子

0

粉丝