打印

28075的CSM问题咨询

[复制链接]
994|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Linmengjiao|  楼主 | 2017-5-24 17:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
se, ck, RAM, dc, DCS
我正在调试TMS320F28075这款芯片。在调试DCSM这一块时,对于密码这一块的变化,我不太清楚。在调试的过程中也出现一些问题。
      下面是我的CSM设置:
      ..sect "dcsm_otp_z1_linkpointer"
      .long 0x1FFFFFFF     ;Z1-LINKPOINTER1
;;    .long 0xFFFFFFFF     ;Reserved
      .long 0x1FFFFFFF     ;Z1-LINKPOINTER2
;;    .long 0xFFFFFFFF     ;Reserved
      .long 0x1FFFFFFF     ;Z1-LINKPOINTER3
;;    .long 0xFFFFFFFF     ;Reserved

      .sect "dcsm_otp_z1_pswdlock"
;;      .long 0xFFFFFFFF     ;Z1-PSWDLOCK
;;      .long 0xFFFFFFFF     ;Reserved

      .sect "dcsm_otp_z1_crclock"
;;      .long 0xFFFFFFFF     ;Z1-CRCLOCK
;;      .long 0xFFFFFFFF     ;Reserved

      .sect "dcsm_otp_z1_bootctrl"
;;      .long 0xFFFFFFFF     ;Z1-GPREG3
;;      .long 0xFFFFFFFF     ;Z1-BOOTCTRL

      .sect "dcsm_zsel_z1"

      .long 0x00000000      ;Z1-EXEONLYRAM
      .long 0x00000000      ;Z1-EXEONLYSECT
      .long 0x55555555      ;Z1-GRABRAM
      .long 0x55555555      ;Z1-GRABSECT

      .long 0x12345678      ;Z1-CSMPSWD0 (LSW of 128-bit password)
      .long 0x12345678      ;Z1-CSMPSWD1
      .long 0x12345678      ;Z1-CSMPSWD2
      .long 0x12345678      ;Z1-CSMPSWD3 (MSW of 128-bit password)
如果照上面的设置,如果是DEBGU仿真时,程序可以跑起来,当我拨除仿真器,开电让板子自跑时,程序会跑不起来,
经过我的调试,我发现在下面二句代码前调用CsmUnlock()做一次CSM密码读取操作时,就可以让板子自跑起来。
/**********************************************************************************************
这样是可以的
CsmUnlock();
memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (size_t)&RamfuncsLoadSize);
InitFlash();
************************************************************************************************/
/**********************************************************************************************
这样是不行的
memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (size_t)&RamfuncsLoadSize);
InitFlash();
CsmUnlock();
或者
memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (size_t)&RamfuncsLoadSize);
InitFlash();
************************************************************************************************/
在没有加载CSM段的时候,我的板子是可以跑起来的。加载了CSM后就不行了。要调用CsmUnlock();
我很诧义,在用TMS320F28335的时候,我写了密码后是不需要调用CsmUnlock();的。我不知道我
上面的CSM设置是否正确,对于dcsm_otp_z1_pswdlock,dcsm_otp_z1_crclock,dcsm_otp_z1_bootctrl这三个寄存器
的设置我不是很明白。我希望得到你们的帮助,你们能不能帮我详细的介绍一下CSM这一块的具体操作.

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝