Other Parts Discussed in Thread: AM1808
TI 工程师 好!
现在我用XDS100V2调试AM1808 的DDR2 ,用的是spectrum daemon板推荐的镁光MT47H64M16HR-37E,对AM1808_StarterWare_1_00_03_03\tools\gel里
的am1808.gel做了修改后下载程序进CPU内部RAM,执行以下程序测试DDR2的读写
while(1)
{
*(unsigned short* )0xC0000020 = 0xFFFF;
*(unsigned short* )0xC0000024 = 0xFFFF;
count = *(unsigned short* )0xC0000020;
temp2 = *(unsigned short* )0xC0000024;
*(unsigned short* )0xC0000020 = 0;
*(unsigned short* )0xC0000024 = 0;
count = *(unsigned short* )0xC0000020;
temp2 = *(unsigned short* )0xC0000024;
}
开始执行几次循环还是正确的,大概执行3-5次循环之后在执行*(unsigned short* )0xC0000020 = 0xFFFF;时在ccs5的Memory browser里可以看到0xC0000020 地址里的值改为0xFFFF,当执行下句*(unsigned short* )0xC0000024 = 0xFFFF;时看到Memory browser里在0xc0000024地址附近的值几乎都变红了,就是都同时改变成新值了,这时读出来的值也是错误的,不知这是何种原因造成的,难道是ccs5的问题??搞不懂执行一句操作怎会改变那么多值??
请给指个方向吧,谢谢