C2000

1860阅读 0评论2013-06-06 dragonerer
分类:Android平台

C2000是32位处理器,寻址是16位寻址,如果想8bits寻址和ccs版本没关系,和仿真器也没关系。需要特殊的指令。



在CCS5.3也是一样的,这跟芯片相关,跟CCS无关。关于这个问题,下面有相应的解决方法,你可以参考,如果要进行8bits寻址,需要特殊指令。

Solution:

The smallest addressable memory cell on the F28xx is 16-bits.This is mentioned in the TMS320C28x C/C++ Language Implementation User's Guide (SPRU514) in Section 6.3 called Data Types.

There are compiler instrinsics __byte() and __mov_byte() to access data in increments of 8-bits.

This info from the TMS320C28x Optimizing C/C++ Compiler User's guide (SPRU514) may help (page 82):

By ANSI/ISO C definition, the sizeof operator yields the number of bytes required to store an object. ANSI/ISO further stipulates that when sizeof is applied to char, the result is 1. Since the TMS320C28x char is 16 bits (to make it separately addressable), a byte is also 16 bits. This yields results you may not expect; for example, size of (int) = = 1 (not 2). TMS320C28x bytes and words are equivalent (16 bits).

To access data in increments of 8 bits, use the __byte() and __mov_byte() intrinsics described in Section 7.4.4.

 

Reference:

Eric

上一篇:详解FlashBurn的hex文件烧写--DM6437平台
下一篇:没有了