TI中文支持网
TI专业的中文技术问题搜集分享网站

CCS 结构体内存对齐

CCS 中如何实现结构体内存对齐,就像VS 中的  #pragma pack(1) 语句????????

sworman chen:

顶一下,速求TI 工程师解答。。。。

CCS 中如何实现结构体内存对齐,就像VS 中的  #pragma pack(1) 语句????????

sworman chen:

回复 sworman chen:

再顶一下 急

CCS 中如何实现结构体内存对齐,就像VS 中的  #pragma pack(1) 语句????????

sworman chen:

回复 sworman chen:

????

CCS 中如何实现结构体内存对齐,就像VS 中的  #pragma pack(1) 语句????????

Terry Deng:

回复 sworman chen:

结构体内存本身就是对齐的啊。你具体想实现怎样的效果呢,最好举个例子

CCS 中如何实现结构体内存对齐,就像VS 中的  #pragma pack(1) 语句????????

sworman chen:

回复 Terry Deng:

Dear  Terry Deng:

你好,我是想在CCS 中实现 #pragma pack(1) 命令(即 设置结构体的边界对齐为1个字节,也就是所有数据在内存中是连续存储的)

如声明下列结构体。

#pragma pack(1)#define mPACKET// 基础参数设置对象typedef struct _BasePara_Obj_{  int_least8_t   MotorFamily;  int_least8_t   MotorType;  int_least8_t   Commutation;  int_least8_t   HallType;  int_least8_t   MotorFeedBack;  int_least8_t   LoadFeedBack;  int_least8_t   LoadFeedBackMode;}mPACKET BasePara_Obj;

但在 CCS 中似乎不支持#pragma pack(1) 预处理指令,出现 #163-D unrecognized #pragma  warning ,请问如何处理呢??

CCS 中如何实现结构体内存对齐,就像VS 中的  #pragma pack(1) 语句????????

sworman chen:

回复 sworman chen:

@Terry Deng

CCS 中如何实现结构体内存对齐,就像VS 中的  #pragma pack(1) 语句????????

sworman chen:

回复 sworman chen:

有 TI 的大师可以解决一下吗???

CCS 中如何实现结构体内存对齐,就像VS 中的  #pragma pack(1) 语句????????

10#:

回复 sworman chen:

C28x是32位的处理器,支持的最小数据单元是16bit即一个字,因此,硬件上不支持按字节进行对齐,请查看编译器手册TMS320C28x Optimizing C_C++ Compiler Vx.y.z User Guide(文档序列号:SPRU514 – 可以通过www.ti.com/lit/spru514链接直接打开最新版本编译器对应的文档)第7.1.7章节说明如下:

CCS 中如何实现结构体内存对齐,就像VS 中的  #pragma pack(1) 语句????????

10#:

回复 10#:

另外,可以支持的预处理指令(#pragma)也可以在同一个文档中搜索到,在6.10 Pragma Directives章节有详细介绍。

赞(0)
未经允许不得转载:TI中文支持网 » CCS 结构体内存对齐
分享到: 更多 (0)