CCS软件安装与建立第一个helloworld程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c_int00
在汇编语言中,所有允许被c语言访问的【变量】 在汇编语言中,所有允许被c语言访问的【变量】和【函数】都需要加 函数】 下划线 eg,一个c中的变量x在汇编中被称作 _x ,仅在汇编中使用的标识符不 eg,一个c中的变量x ,仅在汇编中使用的标识符不 用加下划线 c程序的入口点固定为_c_int00,由main()函数指定,由rts.lib库定义, 程序的入口点固定为_c_int00,由main()函数指定,由rts.lib库定义, 其他函数功能的实现必须经过main()函数的调用才行 其他函数功能的实现必须经过main()函数的调用才行
cmd文件 cmd文件
由3部分组成: 1)输入/输出定义:.obj文件:链接器要链 1)输入/输出定义:.obj文件:链接器要链 接的目标文件;.lib文件:链接器要链接的库 接的目标文件;.lib文件:链接器要链接的库 文件;.map文件:链接器生成的交叉索引文 文件;.map文件:链接器生成的交叉索引文 件;.out文件:链接器生成的可执行代码;链 ;.out文件:链接器生成的可执行代码; 接器选项 2)MEMORY命令:描述系统实际的硬件资 2)MEMORY命令:描述系统实际的硬件资 源 3)SECTIONS命令:描述“段”如何定位 3)SECTIONS命令:描述“段”如何定位
调试debug 调试debug
嵌入式调试和PC调试有较大的差别。 嵌入式调试和PC调试有较大的差别。 在一般PC中,调试器和被调试程序是运行在相同的硬件和软件平台上 在一般PC中,调试器和被调试程序是运行在相同的硬件和软件平台上 的两个进程,调试器进程通过操作系统专门提供的调试接口控制和访 问被调试进程。 而嵌入式中,调试器是运行在桌面操作系统上的应用程序,被调试程 序是运行在基于特定硬件平台上的操作系统,两个程序间需要实时通 信。仿真器处理主机和目标机之间的所有通信,这个通信口可以是串 信。仿真器处理主机和目标机之间的所有通信,这个通信口可以是串 行口,并行口或高速以太网接口。 仿真器通过JTAG和目标机相连 仿真器通过JTAG和目标机相连
小模型 大模型
数据模型,数据模型影响着数据的存放和访问。 小模型比大模型节省代码和数据空间,但带来很多存储器 放置的限制。 对于55x,在小模型下,直接访问的数据大小不大于一个 对于55x,在小模型下,直接访问的数据大小不大于一个 64K字的页。 64K字的页。 由于算法不知道静态数据和全局数据的最终地址,因此对 于他们应采用far方式访问。 于他们应采用far方式访问。
C程序的代码和数据如何定位
1,系统定义: 1,系统定义: .cinit 存放C程序中的变量初值和常量; 存放C程序中的变量初值和常量; .const 存放C程序中的字符常量、浮点常量和用const声明 存放C程序中的字符常量、浮点常量和用const声明 的常量; 的常量; .switch 存放C程序中switch语句的跳针表; 存放C程序中switch语句的跳针表; .text 存放C程序的代码; 存放C程序的代码; .bss 为C程序中的全局和静态变量保留存储空间; 程序中的全局和静态变量保留存储空间; .far 为C程序中用far声明的全局和静态变量保留空间; 程序中用far声明的全局和静态变量保留空间; .stack 为C程序系统堆栈保留存储空间,用于保存返回地 址、函数间的参数传递、存储局部变量和保存中间结果; 址、函数间的参数传递、存储局部变量和保存中间结果; .sysmem 用于C程序中malloc、calloc和realloc函数动态分 用于C程序中malloc、calloc和realloc函数动态分 配存储空间
CCS软件安装与使用 CCS软件安装与使用
安装
安装CCS 安装CCS 安装正确的仿真器驱动 Setup正确设置软件仿真还是硬件仿真 Setup正确设置软件仿真还是硬件仿真 ccs3.1需要在设备的property中设置autoccs3.1需要在设备的property中设置auto-generate board data file with extra configuration ccs3.3不需要 ccs3.3不需要 ccs3.3如果安装后不能运行提示,则需要手动“运行”中输入命令注 ccs3.3如果安装后不能运行提示,则需要手动“运行”中输入命令注 册 ccs3.1不存在手动注册问题 ccs3.1不存在手动注册问题
main()
未初始化段在存储器(通常为RAM)中保留空间,用于程序运行时创 未初始化段在存储器(通常为RAM)中保留空间,用于程序运行时创 建和存储变量,常用的有两个:.bss段和.stack段。 建和存储变量,常用的有两个:.bss段和.stack段。 .bss段用于为全局和静态变量保留空间,在程序开始执行时,由C引导 bss段用于为全局和静态变量保留空间,在程序开始执行时,由C 程序将.cinit段中的已初始化数据复制到.bss段中。 程序将.cinit段中的已初始化数据复制到.bss段中。 .stack段用作C .stack段用作C的系统堆栈,向被调函数传递参数,并为局部变量分配 空间。 go main 到main()函数 main()函数 从程序进入点_c_int00到main()函数之间,包含了大量的初始化函 从程序进入点_c_int00到main()函数之间,包含了大量的初始化函 数,所以只有执行到了main()函数之后,ccs才能显示c 数,所以只有执行到了main()函数之后,ccs才能显示c语言源程序
C程序的代码和数据如何定位
2,用户定义: 2,用户定义: #pragma CODE_SECTION (symbol, "section name"); #pragma DATA_SECTION (symbol, "section name")
Libraries
The following libraries are included with the TMS320C55x C/C++ compiler: rts55.lib contains the ISO run-time-support objFra Baidu bibliotekct run-timelibrary rts55x.lib contains the ISO run-time-support object run-timelibrary for the large memory model rts.src contains the source for the ISO run-time-support run-timeroutines
调试debug 调试debug
1,Reset CPU 复位DSP目标系统,初始化所有的寄存器,终止程序的执行 复位DSP目标系统,初始化所有的寄存器,终止程序的执行 2,Restart 将程序计数器(PC)的值恢复到程序的入口 将程序计数器(PC)的值恢复到程序的入口 3,go main 在程序的Main符号处设置一个临时断点,该命令仅在调试C 在程序的Main符号处设置一个临时断点,该命令仅在调试C语言 代码时有作用
相关文档
最新文档