打印

TMS320F28335开发总结

[复制链接]
2389|43
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
FCCdsp|  楼主 | 2017-11-21 10:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
TMS320F28335开发总结




1.如何查看CCS5.2中包含的源文件有哪些?以及他们的位置?

CCS5.2工程中C语言源文件有两部分组成,一部分是在project路径下的.c文件,另外一部分是通过连接添加到工程里的(.project文件中的<linkedResources></linkedResources>字段)。因此CCS5.2中的源文件一部分在工程目录下,另外一部分在.project文件中的<linkedResources></linkedResources>字段包含的路径下。

2.CCS中GEL文件的作用是什么?

ccs的gel语言是一种交互式的命令,它是解释执行的,即不能被编译成可执行文件。它的作用在于扩展了ccsstudio的功能,可以用gel来调用一些菜单命令,对DSP的存储器进行配置等等。但是作者建议对于使用仿真器和DSP功能板的仿真环境用户来说,这种GEL语言文件是没必要加入到配置中的。gel语言的重要性在于针对计算机模拟环境的用户,使用gel可以为其准备一个虚拟的DSP仿真环境,但也不是非用不可的。


3.引用例子中的源文件时要注意什么?

使用CCS5.2导入例子中的源文件时,最好不要选择连接方式,而使用复制的方式,这样必要时可以更改这些源文件,而不会影响其他的程序的使用。

4.CCS5.2如果没有包含函数的声名头文件时也能运行但是结果会不正常,故当函数调用出现莫名其妙的问题时,要检查声名函数的头文件是否包含。

5.CCS5.2开发DSP28335程序时如何设置程序堆栈的大小?

CCS5.2默认情况下堆栈的大小都为0x400,在Project->Properties->Build->C200 Linker->Basic Options下设置。设置完堆栈的大小后,还要在cmd文件中分配堆栈存储空间的
段的位置和大小,栈空间的段名为.stack用于函数中的临时变量,堆空间的段名为.sysmem用于c语言malloc函数分配内存,malloc最大可分配内存为Project->Properties->Build
->C200 Linker->Basic Options下设置的大小减2。cmd文件中的堆栈段的大小不能小于Project->Properties->Build->C200 Linker->Basic Options下设置的大小。一般来讲不用
变动栈空间的大小和位置,如果函数中需要大的空间就申请堆空间。堆空间可以指定为外部内存,但要注意在第一次malloc函数调用之前一定要初始化外部内存。否则malloc能执行成功但是空间指向未定。
heap大小限制为32k word即0x10000。


6.如何添加头文件的相对路径?

首先在Project->Properties->Build选项下,点击Variables添加一个变量,然后就可以在Project->Properties->Build->C2000 Compiler->Include Options下用${}引用变
量。表示工程路径的系统变量是PROJECT_ROOT,可以在Project->Properties->Build->C2000 Compiler->Include Options下直接引用。注意Project->Properties->Resource-
>Linked Resources下的变量在Project->Properties->Build->C2000 Compiler->Include Options下无效,只有Project->Properties->Build下Variables选项卡中的变量才能用。


7.当程序烧写到flash中运行时,设置断点为什么总是出错?

当程序烧写到flash中时设置的断点为硬件断点,此断点对C28x系列DSP只能设置两个多的话就会报错,另外有些函数有可能会占用硬件断点,故设置断点失败时可查一下如何清理c函数的硬件断点。

8.CCS5 Debug模式下Tool->Graphs的用法的要点?


  • 进入CCS Debug模式,点击debug按钮右边的小箭头打开下拉列表,选中Debug Configurations,在target选项卡下选择Realtime Options->Halt the target before any debugger access。如果不选此项当target running时,graph波形会是一条为0的直线。
  • 在代码中打断点,运行到断点处,因为只有运行在断点处Graphs才能识别变量地址,才能在设定Start Address时使用数组名和&变量名的形式。
  • Graphs只能跟踪全局变量,所以缓冲区要设置为全局变量。



9.如果ccs出现莫名其妙的问题时,请删除.metadata
10.arm和dsp之间进行串口通信如果dsp先启动,arm后启动,通讯有异常,反之正常?

主要原因是arm启动时会有一个导致BRKDT错误的信号出现,此时如果dsp已经启动就会收到此错误,并停止工作,直到SW Rest或者DSP重启。解决方法是当收到此错误时,SW Reset SCI模块。

评论
在河之洲 2018-7-15 20:31 回复TA
总结很到位 

相关帖子

沙发
mituzu| | 2017-11-21 13:28 | 只看该作者
TMS320F28335开发总结的不错。

使用特权

评论回复
板凳
hellosdc| | 2017-11-21 13:29 | 只看该作者
怎么在Controlsuit下载程序?

使用特权

评论回复
地板
uiint| | 2017-11-21 13:29 | 只看该作者
串口能够下载吗

使用特权

评论回复
5
updownq| | 2017-11-21 13:29 | 只看该作者

使用特权

评论回复
6
mituzu| | 2017-11-21 13:30 | 只看该作者
主要是C2000的开发简单方便。

使用特权

评论回复
7
hellosdc| | 2017-11-21 13:30 | 只看该作者
以前工程文件导入都是失败的

使用特权

评论回复
8
uiint| | 2017-11-21 13:30 | 只看该作者
BootLoader怎么烧写?

使用特权

评论回复
9
updownq| | 2017-11-21 13:30 | 只看该作者
还是习惯使用2812的芯片开发。

使用特权

评论回复
10
android2| | 2017-11-21 18:23 | 只看该作者
Graphs只能跟踪全局变量,所以缓冲区要设置为全局变量

使用特权

评论回复
11
aspoke| | 2017-11-23 22:03 | 只看该作者
《TMS320F28335DSP原理与开发编程》这本书可以参考。

使用特权

评论回复
12
232321122| | 2017-11-23 22:03 | 只看该作者
ti的DSP28335,以及CCS开发环境等都需要学习。

使用特权

评论回复
13
ghuca| | 2017-11-23 22:03 | 只看该作者
TMS320F28335的全套TI官方文档大集合

使用特权

评论回复
14
aspoke| | 2017-11-23 22:09 | 只看该作者
《TMS320F28335DSP原理与开发编程》设计的设计方面资料很齐全。

使用特权

评论回复
15
232321122| | 2017-11-23 22:09 | 只看该作者
楼主的教程都太简单了。

使用特权

评论回复
16
ghuca| | 2017-11-23 22:09 | 只看该作者
这个资料涉及到TMS320F28835的全套用户指南、应用手册,操作系统手册等等

使用特权

评论回复
17
vivilzb1985| | 2017-11-30 20:34 | 只看该作者
在代码中打断点,运行到断点处,因为只有运行在断点处Graphs才能识别变量地址,才能在设定Start Address时使用数组名和&变量名的形式。

使用特权

评论回复
18
updownq| | 2017-12-2 21:56 | 只看该作者
hellosdc 发表于 2017-11-21 13:29
怎么在Controlsuit下载程序?

Controlsuit不能下载程序

使用特权

评论回复
19
sanfuzi| | 2017-12-2 21:56 | 只看该作者
不是使用CSL开发的吗?

使用特权

评论回复
20
gygp| | 2017-12-2 21:57 | 只看该作者
删除.metadata是什么

使用特权

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

本版积分规则

967

主题

1447

帖子

9

粉丝