天天看点

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

  2017年快要过去了,总感觉并不十分充实。在这个年末,我也开始进入学习DSP的阶段了,我将在接下来的一年时间里,在博客园记录自己学习DSP的经历。所用到的DSP型号为TMS320F28335,当然,有时也会跟TMS320F2812进行对比。

一、第一个DSP程序 Hello DSP

  就像第一个C语言程序输出 “Hello World !”一样,采用DSP输出“Hello DSP !”也是那么的富有开始意义。开始吧,不管有什么困难,都会一个个的得到解决。

  本次实验平台:PC: Windows7 64bit

         软件: CCS6.0

         DSP型号:TMS320F2812

二、一步一步建立程序

  2.1 打开CCS6.0后,Project->New CCS Project 按照下图设置好。Connection项根据自己的仿真器型号选择,我的是XDS100v2。设置好后,点击finish。

  

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

  2.2 编写main.c函数

  点击finish后得到下图。

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

  于是这里需要添加各种头文件。在程序所在的文件夹内建立两个文件header和source。将各个头文件和源文件加入到其中。

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)
第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

  并且添加头文件的路径:

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

  2.3 编写mian.c程序

  2.4 编译程序

  编译以后发现有很多的警告,还有错误。别急我们一个一个来解决。

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

  通过阅读,发现,这里的问题都是CMD文件中存储空间的分配导致的问题。

   其中一个解决办法是调节2812_RAM_Ink.cmd文件中的memory和section。但是我调节了一下,可能是自己对CMD文件认识还不够,发现错误并没有消除,于是只能请教度娘了。最后功夫不负有心人,终于找到了解决方法。谢谢这位大大。

https://www.cnblogs.com/bg8ly/archive/2015/11/20/4981065.html  在Project-Properties-Build-Advanced Options-Library Function Assumptions下,Level of printf/scanf support required(--printf_support)选择minimal。这是由于标准的printf()/sprintf()提供了非常多的特性支持,造成了在DSP上实现时,产生的代码尺寸非常大,使得原来2812上的存储空间不够,所以有报错和警告。

  这时再进行编译,错误时没有了,但是还有警告

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

  这里警告的意思是外设没有分配SECTION,这里需要在CMD文件中给这些外设的分配SECTION就可以了。这里我按照《手把手教你学DSP-基于TMS320X281X》中P148页中进行修改。

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)
第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

View Code

  此时,再编译后,没有错误和警告。

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

三、硬件试验

  这里将硬件连接好,进行调试。结果如下

第一个DSP程序 Hello DSP !(一步一步建立CCS6.0 工程)

四、总结

  这次试验总体来说还是比较顺利的,其中遇到了一下问题,也一一都解决了。其中CMD文件非常重要,需要深入的理解。

  今后应该一星期会有一篇记录出来。希望自己能够不断进步。

  2017-12-27