paradoxfx

【原创】TI C2833x介绍---外设寄存器的头文件(5)

在使用CCS调试的时候,为了方便的查看一些外设寄存器的内容,可以把定义外设所用的结构体、共用体或者它们的地址直接输入到watchwindow里面,此时可以在ccs展开结构体、共用体,直到看到相应的位;输入起来还是要花点时间的,因为watchwindow里面不像编辑器那样具

【原创】TI C2833x介绍---外设寄存器的头文件(4)

以前在使用TMS320LF2407A这样的芯片的时候,大家在一个新工程的开始往往都会去找一个叫“tms320lf2407.h”的头文件,几乎所有例程的开头你都会看到,因为它采用传统的方法定义了DSP的所有的外设、寄存器的地址。后来TMS320F2812刚刚推出来的时候,我记得论坛

【原创】TI C2833x介绍---外设寄存器的头文件(3)

前面两次讲了两种不同的寄存器定义以及调用的方法。直观上看,书写、记忆方面的不同是它们的区别,那它们的代码大小、代码的效率会不会有什么不同呢?我们可以看一下同一段代码,分别采用两种方法书写,编译生成的汇编文件的区别。以一个CPUtimer操作的程序为例。首先是

【原创】TI C2833x介绍---外设寄存器的头文件(2)

上次讲到了直接使用头文件定义寄存器的地址指针,然后直接对指针进行读写操作这种编程方法的优缺点。这种方法虽然容易上手,但是效率并不高;如果我们需要对寄存器的某一个位进行单独操作怎么办呢?(这种情况很常见,比如在一个定时器的控制寄存器的配置中

【原创】TI C2833x介绍---外设寄存器的头文件(1)

为了对一个外设进行编程,通常我们只需要对其控制寄存器(一般为xxxcon这样的命名)的整体或者相应的位进行编程。更为直接的方式是,直接把一个十六进制的数值写到外设所对应的存储器地址;但是在多次操作并且写不同控制值的时候,这样的写方式显然是重复度很高但是低效

【原创】TI C2833x编程环境介绍---(10)cmd文件的具体描述

【原创】TIC2833x编程环境介绍---(10)cmd文件的具体描述Thelinkerconcatenateseachsectionfromallinputfiles,allocatingmemorytoeachsectionbasedonitslengthandlocationasspecifiedbytheMEMORYandSECTIONScommandsinthelinkercommandfile.链接器将输入文件中的每一个

【原创】TI C2833x编程环境介绍---(9) cmd文件解释

上次提到了C程序的不同段在目标系统中被放置在不同的存储区域中,这次解释一下各个段的具体含义程序代码(.text)DSP中的程序代码由指令序列组成来进行数据操作、初始化系统设置等操作。在系统复位(上电)之前,程序代码就需要已经被定义好。在这个基本的系统限制前提下

【原创】TI C2833x编程环境介绍---(8)创建一个链接文件(cmd)

一个基于CCS的工程,即使源程序和汇编程序写的再完美无瑕,编译全部通过,但是如果.cmd文件不正确、甚至是一小段变量的地址分配不合理,都无法把编译出来的对象文件.obj链接成.out输出文件。那么为何.cmd文件如此关键?下面就详细讲来。&

【原创】TI C2833x编程环境介绍---(7)常用的编译选项

在把所有文件都放在同一个文件夹下、工程规模较小的情况下,CCS的编译选项一般不需要修改,使用默认值就可以较好地工作了。而在工程文件较多、需要更改优化级别、需要制定工程所使用的库、变量初始化等情况下,就需要修改编译器的选项了。下面是一个工程所有编译选项展

【原创】TI C2833x编程环境介绍---(6)CCS编程环境(3)

CCS5.x版本是2011年11月8日才推出的,而且版本数量升级很快。目前它已经完全可以支持32位与64位的winxp、win7与linux系统了(对linux的支持是很方便开发者的改进);当然一些老电脑会有些吃力了,其推荐的配置是双核CPU、4GB内存、典型安装需要2GB硬盘;在2GB内存、win7

【原创】TI C2833x编程环境介绍---(5)CCS编程环境(2)

在CCS3.3推出时,还没有2833x、2834x、2802x、2803x这些器件,所以它并不能直接支持2833x及后续器件的,需要升级编译器。通过更新cl2000.exe编译工具就可以实现了。ccs3.3及其以前的版本,只能正式支持32位的windows操作系统。(64

【原创】TI C2833x编程环境介绍---(4)CCS编程环境(1)

这几天在接手一个老的产品,用到了TMS320VC33DSP。器件是浮点的,编程方式与28335的很类似,所以上手没花什么力气,只是个别寄存器需要查一下VC33的userguide。不过这个编程环境可是个老大难,需要用到老版本的codecomposer4.1软件。不巧的是全公司又只有一个license,

【原创】TI C2833x编程环境介绍---(3)什么是COFF?

这次写博客离上次有点长,快3周了,理一下思路,继续我们的COFF,这一次可以把它写完。前面提到了,COFF工具主要是用来方便模块化编程的,为了达到更好的可移植性性,尽量做到使每个模块是与硬件“独立”的,比如可以在多个单独的.H头文件中定义所有的硬件寄

【原创】TI C2833x编程环境介绍---(2)什么是COFF?

CCS编程环境包含内建的编辑器(当然也可以使用其它的文本编辑器)、编译器(源程序编译)、汇编器、链接器,并使用了自动的编译过程(只需要点击buildall就行了)。其次,还内含了许多图形化的工具(比如前面提到的Graph图形显示)。一起其它的功能可以以插件的形式来提

【原创】TI C2833x编程环境介绍---(1)什么是COFF?

在TI介绍有关DSP编程环境的介绍中,经常会见到COFF这个概念。COFF是TI为了软件开发环境与流程的标准化而使用的一种通用对象文件格式(CommonObjectFileFormat,COFF)。对我们单个的、小规模的开发者而言,可能并不是会太容易注意到这些编程开发的特点。COFF的主要优势