本帖最后由 johdon23 于 2015-3-31 14:12 编辑
我需要用到一个指针,地址超过0x10000。在IAR下,通过设置“Data Model"为“Large”,可以支持超过16位的地址指针。
但是在CCS中,同样的设置却无效。当地址超过0x10000时,会被强行设为0!!!
举例:驱动库中关于Flash操作的函数 - void FlashCtl_write8 (uint8_t *data_ptr, uint8_t *flash_ptr, uint16_t count)
如果我在调用FlashCtl_write8 函数时,传递给flash_ptr的值大于0x10000,将会被编译器强行设为0!
|