DSPwilliam hill官网
直播中

杰仔嘻嘻

9年用户 21经验值
擅长:处理器/DSP
私信 关注

烧写flash 芯片(TMS28034),第二次烧写出现 要解锁"Unlock Flash"

我用CCS3.3 烧写flash 芯片(TMS28034)时 第一次烧写FLASH的时候我没设置过"Code Security Password" 代码系统默认是:FFFF   在烧写成功后 我装上机测试后  再次进入CCS3.3来擦除烧写第二次,但是芯片第二次烧写的时候就出现 要解锁"Unlock Flash"了,我就算输入了8个"FFFF"也无法解锁Flash。请问这个情况怎样解决呢 我全部试过6块芯片 有2块就试过在烧写第3次才出现解锁Flash .
以下是我的默认代码:
.sect "csmpasswds"

      .int        0xFFFF                ;PWL0 (LSW of 128-bit password)
      .int        0xFFFF                ;PWL1
      .int        0xFFFF                ;PWL2      .int        0xFFFF                ;PWL3
      .int        0xFFFF                ;PWL4
      .int        0xFFFF                ;PWL5
      .int        0xFFFF                ;PWL6
      .int        0xFFFF                ;PWL7 (MSW of 128-bit password)
        
;----------------------------------------------------------------------

; For code security operation, all addresses between 0x3F7F80 and
; 0X3f7ff5 cannot be used as program code or data.  These locations
; must be programmed to 0x0000 when the code security password locations
; (PWL) are programmed.  If security is not a concern, then these addresses
; can be used for code or data.  

; The section "csm_rsvd" can be used to program these locations to 0x0000.

        .sect "csm_rsvd"
        .loop (3F7FF5h - 3F7F80h + 1)
              .int 0x0000
        .endloop

;//===========================================================================
;// End of file.
;//===========================================================================


已退回2积分

回帖(44)

杰仔嘻嘻

2015-2-11 17:26:54
我现在每次试机都浪费了一个芯片   求帮忙下
举报

杰仔嘻嘻

2015-2-11 19:51:01
CSM_PWL_P0            003f7ff8   00000008  00000007  00000001  

CSM_PWL               003f7ff8   00000008  00000008  00000000
举报

马刺牛逼

2015-2-11 22:51:18
仿真器和芯片目标配置是不是对的
举报

杰仔嘻嘻

2015-2-12 14:15:05
是对的 我烧了100个了  都可以正常运行  但是第二次烧写的时候就锁住
举报

杰仔嘻嘻

2015-2-12 14:20:37
接触dsp已经有一段时间了,从Hellodsp得到了很多帮助,前段时间本人也进行了第一次烧写,幸运的遇到了FLASH锁死的情况,不知该哭该笑,我们系很少人玩DSP,少写过的人不多,遇到锁死的就更少了,没人给解决,只能在网上搜,最终皇天不负有心人,搞定!!废话不多说,下面就分享一下该怎么解锁(部分借用网络资源,在此感谢!!):
根据得到的.out文件,通过hex2000.exe来得到相应的ASCII码文件,文件中
00 08 00 3F 7F F8 EE EE FF FF FF FF FF FF FF FF FF FF FF FF FF FF
为密码区,其中00 08 00 3F 7F F8为密码区地址,后面16组为实际密码,LSB到HSB。
需要:对应的.out 和.map文件,分别用来生成hex文件和查看链接关系。
配置:build.bat 批处理文件,用windows的命令提示符来得到所需要的hex文件,编码为ASCII;用记事本打开 内填写hex2000.exe在你电脑中的目录
          build.cmd 命令文件,采用hex2000.exe程序选项命令来得到所需文件。
          具体命令 :
               -memwidth 16 设定存储器格式为16bit  ,不用管
               -romwidth 16 设定rom格式为16bit&,不用管
               -a           设定输出文件格式,填写你的.OUT名如我的是Tlv320aic23x.out
               -o           设定输出文件名,随便起个名字,是你得到密码的文件名
               -map         设定输出映射文件,填写你的.map名  如我的是Tlv320aic23x.map
               -boot        设定引导数据流,不做操作
hex2000.exe 程序文件, ccs自带的,路径为..C2000cgtoolsbinhex2000.exe
更多有关此程序的命令选项请参考相关资料。
具体你要做的是:
1、回帖,下载压缩包并解压
2、把文件夹中的.out和.map文件换成你的文件,
3、按照上面说的修改buildhex.cmd里面的内容,然后将文件夹拷贝到ccs安装目录下(不知道不考行不行,没试)
4、打开ccs连接目标板
5、双击build.bat会产生一个记事本文件,打开找到00 08 00 3F 7F F8即可

00 3F 7F F8  这段数字后的数据为地址003f7ff8中的内容,也即密码区的首字节,根据前面
得到的ascii格式的文本文件,搜索3F 7F数据组合,然后其后的就是实际烧进去的数据。如果是
错误烧写锁定DSP的话,则把后续的指令代码作为密码写进去即可,一般为32bit,程序长跳转二进制代码。
如果是自己烧写了代码,则后续的16组数据即为所设密码。

具体写的是什么,可以参考对应的.map文件,其中列出了所有symble,以及他们的输入输出段,可以看到003f7ff8地址中对应的是那个symble和所占字节数。

我按照上面的这个方法试了但是我双击build.bat会产生一个记事本文件,我就产生不了,还有一个我不明白这个打开CCS  连接目标板  (CCS,我是打开了而且还连接了一颗锁了的芯片)
2 1 举报

杰仔嘻嘻

2015-2-12 15:28:51
引用: 马刺牛逼 发表于 2015-2-11 22:51
仿真器和芯片目标配置是不是对的

是对的。我现在就是试了下面的方法,但是我不知道怎样算是连接目标板,现在我双击那.bat文件不会产生一个记事本。
举报

杰仔嘻嘻

2015-2-12 16:48:32
引用: 杰仔嘻嘻 发表于 2015-2-12 15:28
是对的。我现在就是试了下面的方法,但是我不知道怎样算是连接目标板,现在我双击那.bat文件不会产生一个 ...

csmpasswds
*          0    003f7ff8    00000007     
                  003f7ff8    00000007     DSP2833x_CSMPasswords.obj (csmpasswds)



这个是FLASH文件里的

举报

杰仔嘻嘻

2015-2-12 16:49:31
引用: 杰仔嘻嘻 发表于 2015-2-12 15:28
是对的。我现在就是试了下面的方法,但是我不知道怎样算是连接目标板,现在我双击那.bat文件不会产生一个 ...

csm_rsvd   0    003f7f80    00000076     
                  003f7f80    00000076     DSP2833x_CSMPasswords.obj (csm_rsvd)

举报

杰仔嘻嘻

2015-2-12 16:51:15
引用: 马刺牛逼 发表于 2015-2-11 22:51
仿真器和芯片目标配置是不是对的

csm_rsvd   0    003f7f80    00000076     
                  003f7f80    00000076     DSP2833x_CSMPasswords.obj (csm_rsvd)


1:以上这个是FLASH文件里的,以下这个也是FLASH文件的

csmpasswds
*          0    003f7ff8    00000007     
                  003f7ff8    00000007     DSP2833x_CSMPasswords.obj (csmpasswds)

举报

杰仔嘻嘻

2015-2-12 16:56:53
引用: 马刺牛逼 发表于 2015-2-11 22:51
仿真器和芯片目标配置是不是对的

csm_rsvd   0    003f7f80    00000076     
                  003f7f80    00000076     DSP2833x_CSMPasswords.obj (csm_rsvd)

刚写错了不好意思是.map文件的

csmpasswds
*          0    003f7ff8    00000007     
                  003f7ff8    00000007     DSP2833x_CSMPasswords.obj (csmpasswds)
举报

yanhangy

2015-2-21 09:04:12
不错不错不错不错不错不错不错不错不错不错不错不错不错不错不错不错不错不错
举报

杰仔嘻嘻

2015-2-26 01:19:52
新年好  大家   这个问题谁可以解决下
举报

zr159

2015-4-21 15:47:28
大神,我这也是烧写的时候没有设置密码,但是再次链接仿真期的时候提示Unlock Flash,求一个方法
举报

wyqychb2

2015-6-2 13:43:30
我也遇到了同样的问题。
举报

wyqychb2

2015-6-2 13:44:02
我也遇到了同样的问题
举报

wyqychb2

2015-6-2 13:46:49
压缩包在哪里呢?
举报

johnhw

2015-6-5 23:01:17
不错不错,果断赞一个!
举报

王照东

2015-10-14 10:38:46
压缩包在哪里?
举报

王照东

2015-10-14 10:46:46
怎么解锁呢,没有压缩包呢
举报

更多回帖

发帖
×
20
完善资料,
赚取积分