‘壹’ 怎么学好DSP 的c语言编程
汇编忽略它 做接口或病毒可以考虑下下
VB太低级,不过可以做实实在在的程序
C语言是中级语言,通过C可以掌握面向过程编程的精髓,前提是你得学得下去才行。
java面向对象,现在主流。入门不难。
个人建议:C --> C++ --> java
‘贰’ 运用C语言对DSP编程的问题
不同的厂商提供了不同的库文件包,比如TI给64x系列另外开发了图像处理和数字信号处理库文件,AD公司等都有自己的文件包,dsp的c语言先把基本的语法学好就可以了,包括文件操作部分,完了结合不同型号的DSP再学习。英文资料不少,中文资料有但是好多是骗人的,最好看看老外写的东西。
‘叁’ DSP怎样用C语言写程序啊
TI有C语言的例程的,是一个安装文件,安装之后才会出现那个文件夹。文件夹里面是芯片上外设的使用方法的程序,很简单,学过ANCIC的人能够看懂。
‘肆’ DSP实验 让我用C语言编写程序完成计算sin(2.3π)+cos(1.7π)的值
sin(2.3*pi)+cos(1.7*pi)
娘的,楼下的你当我白痴啊,你不会用快速傅里叶变换啊,计算点数越大就越省时间,1024点计算,比你得到的那个时间起码要缩短一半以上,还有很多改进型的FFT,更省时间
‘伍’ 浅谈如何学习DSP软件开发
对于学习DSP重要的是理清外设的工作 构架,相应的寄存器如何设置,没有必 要对寄存器花太多的时间去研究,用的 时候能找到(寄存器的名称都是英文的 缩写,很好理解的)。学习DSP,先找 本中文教材入个门,之后你会发现好多 地方、尤其是真正要用的,往往也是最 复杂的地方书上都找不到,更谈不上做 什么项目了,这时候就要开始深入研究 Data Sheet,以及官网的源代码示例 有了之前的中文教材基础看起来就快多 了;学习DSP重要的不是会编程,而是 算法的研究(Matlab/Simulnk仿真就不
‘陆’ dsp的程序问题。解释一下dsp c 语言的问题
从这些宏定义可以看到C语言是如何支持硬件编程的。
以#define IMR *(volatile unsigned int *)0x0004 为例:
1)0x0004,这个容易理解,是一个十六进制的常数
2)再看(volatile unsigned int *),这是一个强制转换,将0x0004转换成(volatile usigned int *)
3)现在解释volatile usigned int *是什么。* 表示指针(地址),这个指针指向一个 usigned int的数。最前面的volatile有特殊含义:这个指针必须保存在RAM中(不是FLASH或DSP寄存器中)
4)综合上面1)2)3)可知: (volatile unsigned int *)0x0004 的含义是:
0x0004是一个地址,在这个地址内保存的是一个unsigned int 类型的整数。这个地址存在于RAM
5)*(volatile unsigned int *)0x0004 最左边多一个*,表示取地址指向单元的内容。综合起来的意思是:从0x0004地址单元中取出一个usigned int 类型的数据值
6)#define IMR *(volatile unsigned int *)0x0004 的意思是,将从0x0004地址单元中取出一个usigned int 类型的数据值定义为IMR
7)根据DSP硬件,在DSP中RAM中的 0x0004地址单元恰好是中断管理寄存器!
8)绕了半天,#define IMR *(volatile unsigned int *)0x0004 的意思是:在C语言程序中,定义了一个宏标示符 IMR 来表示DSP中的中断管理寄存器。在程序中,可以通过这个宏标示符来使用这个寄存器:
unsigned int v = IMR; //取出中断管理寄存器的值并赋给v
‘柒’ DSP的C语言,菜鸟起步,高手帮帮忙;感激不尽
这是非整数的定点计算, 无论加减法, 乘除法, 都需要移位.
‘捌’ DSP中C语言
你好 你的问题我可以解决 这个10.000L L代表的是长整型long型 32位数据
位数越多可表示的精度越大