主题中讨论的其他器件:MSP430F5659、 MSP-EXP430FR5994、 MSP-EXP430F5529LP
工具/软件:Code Composer Studio
Code Composer Studio 版本: 版本:8.3.0.00009
主机操作系统:Windows 10 64位
处理器:MSP430F5659
处理器选项:mspx、大数据和代码模型
调试器:MSP-EXP430F5529LP 和 MSP-EXP430FR5994
我正在尝试为需要读取高内存(地址0x10000或更高)的 CCS 编写插件。
我可以通过以下代码片段读取低内存:
long startAddress = 0x8000;
long toRead = 0x10;
IMemoryBlockRetrieval memoryblockretr =(IMemoryBlockRetrieval) context.getAdapter (IMemoryBlockRetrieve.class);
IMemoryBlockExtension memoryblock =((IMemoryBlockRetrievalExtension) memoryblockretr).getExtendedMemoryBlock (long.toString (startAddress)、(Object) context);
MemoryByte[] bytes= memoryblock.getBytesFromAddress (memoryblock.getBigBaseAddress ()、toRead);
它适用于 MSP430X 中的 RAM 和闪存。
但是、当我将 startAddress 更改为0x10000、0x18000或0xf0000时、它会分别从0x0000、0x8000或0x0000读取存储器。 它看起来丢失了4个最高有效位的地址。
从0x0xFF0读取0x20字节正确:我从0xFF0获取到0x10010的字节。
如何从0x10000或更高版本读取存储器?


