工具/软件:Code Composer Studio
在我的 cmd 文件中、我将 LS1设置为 LS5作为 CLA 程序存储器。在我的程序中、我通过写入和重新读取来检查这个空间是否正常。代码如下所示、
空 RamCheck (空)
{
uint16 *addr;
uint32 i;
int iRamCheckErr=0;
ADDR =(UINT16 *) 0x008000;
对于(I = 0x000000;I < 0x003000;I++)
{
*(addr + I)= 0x5555;
如果(*(addr + i)!= 0x5555)
{
iRamCheckErr=1;
}
*(addr + I)= 0xaaaa;
如果(*(addr + i)!= 0xaaaa)
{
iRamCheckErr=1;
}
*(addr + I)= 0x0000;
}
ADDR =(UINT16 *) 0x00C000;
对于(I = 0x000000;I < 0x010000;I++)
{
*(addr + I)= 0x5555;
如果(*(addr + i)!= 0x5555)
{
iRamCheckErr=1;
}
*(addr + I)= 0xaaaa;
如果(*(addr + i)!= 0xaaaa)
{
iRamCheckErr=1;
}
*(addr + I)= 0x0000;
}
if (iRamCheckErr=1)
{
while (1)
{
;
}
}
}
目前、在测试主程序跳转到引导程序的过程中、我发现无法写入 LS1和 LS5之间的空间。 因此、读取的值与写入的值不匹配、程序停止。
因此、我想知道无法写入该 RAM 空间的情况。
谢谢。