学习DSP(三)安装C2833x/C2823x C/C++ 头文件和外设示例-压缩包
进入http://www.ti.com.cn/product/cn/tms320f28335 下载C2833x/C2823x C/C++ 头文件和外设示例
即SPRC530,目前最新版本是V131。安装好后进入C:\tidcs\c28\DSP2833x\v131。
或者安装controlSUITE,进F:\ti\controlSUITE\device_support\f2833x 进去里面还有v132 v133,进去看了,是DSP2833x_examples_ccsv4的,没有CCS5的。
先到目录下的doc文件夹下 controlSUITE_DSP2833x_HeaderFiles_Quickstart_Readme.pdf 看看,2833x系列头文件入门。
v133\DSP2833x_headers 也就是28335的头文件 ,里面有cmd文件,gel文件,外设的.h头文件,还有全局变量定义源文件。
cmd文件,gel文件具体文件干什么的,现在不知道,先放着,以后在慢慢研究,不急,还是准菜鸟一枚。
打开其中一个.h头文件,多是位域,结构体,联合体等定义。
v133\DSP2833x_headers\source 存放着DSP2833x_GlobalVariableDefs.c文件,按意思应该是全局变量定义,先打开看看。
*********************************************
#ifdef __cplusplus
#pragma DATA_SECTION("XintfRegsFile")
#else
#pragma DATA_SECTION(XintfRegs,"XintfRegsFile");
#endif
volatile struct XINTF_REGS XintfRegs;
*********************************************
哦哦,看不懂,先上百度,google查查。
#ifdef __cplusplus 用于C++代码,当然那个else就是用于C代码了。采用#pragma编译器声明,将XintfRegs变量分配到XintfRegsFile数据区,C或C++采用不同的#pragama声明方式,当对一个C++程序进行编译时,编译器自动定义__cplusplus
以下转自http://www.61ic.com/Article/CCS/Experience/201307/49745.html >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
volatile的作用: 作为指令关键字,确保本条指令不会因编译器的优化而省略,且要求每次直接读值.
简单地说就是防止编译器对代码进行优化.比如如下程序:
XBYTE[2]=0x55;
XBYTE[2]=0x56;
XBYTE[2]=0x57;
XBYTE[2]=0x58;
如果对外部硬件上述四条语句分别表示不同的操作,会产生四种不同的动作,那么编译器就不能像对待纯粹的程序那样对上述四条语句进行优化只认为
XBYTE[2]=0x58;而忽略前三条语句(即只产生一条机器代码),此时编译器会逐一的进行编译并产生相应的机器代码(四条).
一般说来,volatile用在如下的几个地方:
1、中断服务程序中修改的供其它程序检测的变量需要加volatile;
2、多任务环境下各任务间共享的标志应该加volatile;
3、存储器映射的硬件寄存器通常也要加volatile说明,因为每次对它的读写都可能由不同意义;
另外,以上这几种情况经常还要同时考虑数据的完整性(相互关联的几个标志读了一半被打断了重写),在1中可以通过关中断来实
现,2中可以禁止任务调度,3中则只能依靠硬件的良好设计了。
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<以上转自http://www.61ic.com/Article/CCS/Experience/201307/49745.html
f2833x\v133\DSP2833x_common 按意思应该是个公用文件,先打开看看,
\include 下的 DSP28x_Project.h
#ifndef DSP28x_PROJECT_H
#define DSP28x_PROJECT_H
#include "DSP2833x_Device.h" // DSP2833x Headerfile Include File
#include "DSP2833x_Examples.h" // DSP2833x Examples Include File
#endif // end of DSP28x_PROJECT_H definition
意思很明显DSP28x_Project.h ,包含DSP2833x_Device.h和DSP2833x_Examples.h文件。
DSP2833x_Examples.h在v133\DSP2833x_common\include下,里面是PLL倍频分频,CPU速度,一些包含和定义。
DSP2833x_Device.h在 v133\DSP2833x_headers\include下,里面是是汇编指令定义,助记符定义,文件包含等。
v133\DSP2833x_common\source 下是一些.C源程序和一些.asm汇编代码。 如DSP2833x_Adc.c是ADC的初始化函数。
学习DSP(三)安装C2833x/C2823x C/C++ 头文件和外设示例-压缩包的更多相关文章
- 风炫安全web安全学习第三十五节课 文件下载和文件读取漏洞
风炫安全web安全学习第三十五节课 文件下载和文件读取漏洞 0x03 任意文件下载漏洞 一些网站由于业务需求,往往需要提供文件下载功能,但若对用户下载的文件不做限制,则恶意用户就能够下载任意敏感文件, ...
- Android Animation学习(三) ApiDemos解析:XML动画文件的使用
Android Animation学习(三) ApiDemos解析:XML动画文件的使用 可以用XML文件来定义Animation. 文件必须有一个唯一的根节点: <set>, <o ...
- centos8 安装vmware需要的内核头文件 kernel-headers.
centos8 安装vmware需要的内核头文件 kernel-headers. uname -r (查看内核版本) rpm -qa kernel-headers (查看kernel-headers版 ...
- 【deep learning学习笔记】注释yusugomori的RBM代码 --- 头文件
百度了半天yusugomori,也不知道他是谁.不过这位老兄写了deep learning的代码,包括RBM.逻辑回归.DBN.autoencoder等,实现语言包括c.c++.java.python ...
- Linux - Unix环境高级编程(第三版) 源代码编译(即头文件apue.h如何使用问题)【转】
本文转载自:http://blog.csdn.net/hadas_wang/article/details/43203795 1. 下载代码:http://www.apuebook.com/code3 ...
- 51单片机C语言学习笔记6:51单片机C语言头文件及其使用
很多初学单片机者往往对C51的头文件感到很神秘,而为什么要那样写,甚至有的初学者喜欢问,P1口的P为什么要大写,不大写行不行呢?其实这个是在头文件中用sfr定义的,现在定义好了的是这样的 sfr P1 ...
- Android(java)学习笔记260:JNI之native方法头文件的生成
1. JDK1.6 ,进入到工程的bin目录下classes目录下: 使用命令: javah packageName.ClassName 会在当前目录下生成头文件,从头文件找到jni协议方法 下面举 ...
- Android(java)学习笔记204:JNI之native方法头文件的生成
1. JDK1.6 ,进入到工程的bin目录下classes目录下: 使用命令: javah packageName.ClassName 会在当前目录下生成头文件,从头文件找到jni协议方法 下面举 ...
- C学习笔记(9)--- 预处理器,头文件
1.预处理器: 预处理器不是编译器的组成部分,但是它是编译过程中一个单独的步骤.简言之,C 预处理器只不过是一个文本替换工具而已,它们会指示编译器在实际编译之前完成所需的预处理. 我们将把 C 预处理 ...
随机推荐
- ECharts 使用实例
HTML与JavaScript代码: <%@ page language="java" contentType="text/html; charset=UTF-8& ...
- Spark机器学习笔记一
Spark机器学习库现支持两种接口的API:RDD-based和DataFrame-based,Spark官方网站上说,RDD-based APIs在2.0后进入维护模式,主要的机器学习API是spa ...
- 四种简单的排序算法的php实现
无聊,用php写几个排序算法,算法介绍请移步这里,这里使用php实现了几个简单的,如下 //选择排序 function selection_sort($arr){ $len = count($arr) ...
- poj2262
Goldb ...
- poj 3616 Milking Time DP
题意:在给予的N个时间里,奶牛Bessie在M个时间段里进行产奶,但是每次产奶后都要休息R个时间 M个时间段里,分别有开始时间start和结束时间end,和该时间段里产奶的效率efficiency 求 ...
- [转载]C宏定义的小结
FROM:http://blog.csdn.net/sunboy_2050/article/details/6103530 实现代码实例 程序代码: #include <stdio.h> ...
- Windows Live Writer 代码插件改造
源码和插件都在后面,如果不想看我神神叨叨的可以直接到文章后面下载 一 .找插件 在使用Windows Live Writer 经常要用到插入代码的功能,根据博客园中教程,分别使用了: WindowsL ...
- [置顶] 【cocos2d-x入门实战】微信飞机大战之十二:分数的本地存储
转载请表明地址:http://blog.csdn.net/jackystudio/article/details/12036237 作为一个单机游戏,连分数存储的的功能都没有,让它怎么在单机游戏圈里混 ...
- 多个Activity和Intent(转)
根据www.mars-droid.com:Andriod开发视频教学,先跳过书本<Beginning Android 2>的几个章,我是这两个资源一起看,需要进行一下同步.先初步了解一下应 ...
- eclipse中Java代码导入包,出现main.java前缀
1.工程右击,按照下图指示的选择 2.按照下图,进行删除选中项,然后点击OK保存