我是去年开始真正接触DSP的,之前接触过51,凌阳的61,之前对编程都没有感觉,真正有感觉是在用DSP上面点亮第一个LED,我么有用开发板,而是直接用公司产品上面,(后面觉得找一块好的开发板还是有必要的,毕竟开发板上能将DSP的所有外设都扩展看来),我是先从2407入手的,感觉看2407的架构比直接去看28的架构要省时,而且上手比较快,看24的汇编能具体知道内部是怎么操作的,28就不要去看汇编了,那会很痛苦。28选了两本书《TMS320X281x DSP原理及程序开发》和《TMS320X281x DSP应用系统设计》,这两本书都不错。
学习2812是最近的事情,因为有了硬件开发平台,边看书边学习边实验可以理解的更深。以前是用2407开发的,而且是用的汇编语言,刚开始时觉得好累,不是一般的累,每一句汇编都要找到相关的解释才能看懂;还有寻址方式,不像C语言里那样可以用指针什么的,在汇编里一定要清楚每条指令所能用的寻址方式,不然程序肯定跑飞。
现在学习2812,因为直接上C语言了,所以对2812的硬件内核和外设设置没有一个总体上的了解,有些程序编起来还是会无从下手,大部分程序可以完成,但程序的实际执行顺序并不是很清楚,所以我觉得基本的汇编语言还是应该学习一下的,那样会使自己的程序水平上一个台阶。
2812的头文件定义为编程提供了很大的方便,模块化更加强,具体设置就参考相关的寄存器设置就行。
在此,我总结下学习2407的经验,2812只是初步谈不上经验,有什么不对的地方希望能够提出
1)把存储器映射结构搞清楚
说的具体点就是dsp内到底有那些存储器(ram,rom,flash,etc),这些存储器到底是如何分配的,这个可以参考相关的.cmd文件的写法,它定义了存储器映射和输入输出段的位置
2)编译器的堆栈操作
有关这点我还是没有具体弄清楚,就是中断或是子程序调用时,系统自己的堆栈操作。2407有一个8级硬件堆栈,而2812没有,这个区别比较大,所以在编一边针对堆栈操作的程序(eg. rtos)时就要特别注意了。
3)中断系统
每个mcu的中断系统搞清楚了,会给编程带来很大的便利,所以一定要对所用的mcu的中断过程了解的清清楚楚。
4)数据结构
设计好的,适合的数据结构会使自己的程序编写变得结构清楚而且“容易”。
好了,就先说这么多吧。现在学习2812,有很多地方不同,大家一起讨论,多多交流,肯定能够更深的理解这块2812.
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
虚拟现实和多媒体计算
功率电阻从原理到选型的工程实践指南
数据采集技术第二讲:配置管理软件MAX
F346构成的程控运放音频启动开关放大电路
由CW1524A组成的4W直流变换器
小信号放大新思路,低成本仪表放大器的差分输出设计
历届Corel世界设计大赛最高奖作品
PLD工具ABEL5.10
现代战争中防空导弹武器系统的光电对抗技术
利用Wave-Inspector进行数字系统查障
多媒体Hi-Fi功放
XILINX FPGA CPLD设计 ISE 4.LI快速入门[新手教程]
光谱创联 新质未来|新时代 新需求 新架构
如何精确的使用示波器进行测量!
低压CPLD EPM7512A的混合电压系统设计
Tektronix 公司产品梗概
EMC与成本双优解 车载灯光域控制器集成方案落地
中国AR/VR市场规模持续扩大,五年复合增长率达41.1%
μA741构成的直接耦合音频功率放大器
NI PAC平台引领工业控制发展新技术
通过灵活且智能的电力控制提升汽车的可持续性
国产有限元软件再上新台阶
非线性响应破局!新一代eFuse跳变曲线如何提升能效?
电源测量的导线布局如何影响测量精度?
激光雷达如何破解自动驾驶“视觉困境”?
Protel 99 SE的一些经验
压敏电阻技术全解析与选型的专业指南
protel软件使用的误区及几个不易搞清的概念
TAS5111型数字功放电路
黑龙江省省长宋法棠致海外留学人员的一封信