[分享] 分享一下关于DSP开发的步骤

fish001   2020-2-4 21:38 楼主

    1.开发环境CCS(CodeCo

  mposerStudio)是TI公司开发的一个完整的DSP集成开发环境。由于TI的DSP使用非常广泛,使得CCS也就成为使用最为广泛的DSP开发软件之一。现在,所有TI公司的DSP都可以在该环境里进行开发,可实现全空间透明仿真,不占用用户任何资源,软件配有汇编/链接、C编译器、C源码调试器等。不同的系统有不同版本的CCS开发环境,TMS320F28l2的集成开发环境是CCS2000。在购买开发板时都会免费赠送CCS开发软件,另外也可以在TI的网站上免费下载该软件,开发环境的安装使用一般在DSP开发板的使用说明书中有详尽的叙述,在此不做赞述。

  2.编程语言CCS开发环境支持两种语言:汇编语言和C语言。TI的每个DSP系列都有对应的一套汇编指令,如果采用汇编语言编程,需要熟悉这些指令,难度和效率可想而知。现在TI的工程师在不断改进CCS的C程序优化编译器,目前C优化的效率可达到手工汇编的90%甚至更高。当然有的时候如果计算能力和内存资源是瓶颈,ASM还是有优势,比如G.729编解码。但是针对一般的应用开发,C语言是最好的选择,只要有一定的C语言的基础,就完全可以进行DSP的开发编程。

  应用实例及开发流程

  1.实例介绍400Hz的逆变电源的控制部分实现的主要功能有:(1)AD转换,(2)SPWM生成,(3)与显示单片机的串口通信,(4)与其他并联电源的CAN总线通信;(5)捕捉同步信号。妥实现以上这些功能,显然普通的单片机是无法完成的,因此我们选择了专门用作控制的数字信号处理器TMS320F2812。在此仪对TMS320F28l2生成SPWM波的开发过程作详细介绍。

  PWM(PulseWidthModulation)控制就是对脉冲的宽度进行调制的技术,即通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形。

  SPWM波形(SinuSOIdalPWM)就是脉冲的宽度按正弦规律变化而和正弦波等效的PWM波形,在逆变电路中的应用最为广泛。在此例中SPWM的功能是给三相逆变电路的6个IGBT(绝缘栅双极晶体管)提供触发脉冲,从而使直流电逆变为400Hz的正弦交流电。

  2.开发流程(1)编写软件SPWM的生成主要是应用TMS320F28l2的事件管理器模块(EVA/B),所以编写程序前要做的主要工作就是了解熟悉这一模块的结构和工作原理,至于其他用不到的模块可暂时不作了解。程序编写的第一步就是要对用到的模块的各种寄存器进行设置,第二步就是算法的设计编写。

  本文末尾是笔者编写的已经通过编译的一段生成SPWM(正弦脉宽调制波)的主程序。

  (2)调试程序编写完程序后,就要在仿真环境下进行调试,先编译再运行,通过示波器可以直接观察DSP引脚上输出的SPWM波形,直到与要求的波形相符为止。

  (3)烧写程序在仿真环境下调试好程序后,需要把程序烧写到DSP的片上FLASH存储器中。烧写时必须先安装专门的烧写软件,安装后就可以直接在CCS环境下操作烧写。烧写完成后就可以脱离仿真器,开发板就可以上电独立运行,并和其他的外围电路相连而实现它的功能。

  习方法知参考资源一、习方法初学DSP常常会感觉到技术文档太多,无从下手。根据我的自学经历,这时最应该弄明白的就是DSP芯片的内部硬件工作原理,如果有微机原理和单片机基础的话,这应该是很容易掌握的,如果没有这方面的基础,建议先去找一本微机原理的书看,看明白后再来看DSP的原理。另外,DSP的外设模块有很多,这时没有必要都去了解,只是了解你所用到的模块就可以了。

  了解了DSP的工作原理之后,就要去看关于软件开发环境的书,包括软件的安装和使用。然后就找几个完整的工程(购买开发板时都会赠送各模块的完整工程)来看,在似懂非懂的大体了解了一个完整工程的创建及结构后,就可以开始分析和你所用到的模块相关的程序。现在有大量现成的例程和算法可以参考,切忌自己闷头摸索,一定要去找相关的程序来参考,这会起到事半功倍的效果。

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复