This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
你好!
请问下,我的LM4F如何实现加密(防止源代码被他人读取)。
还有,加密以后,还能用BOOTLOAD 升级吗?如何升?
1. 现在TI的LM4F芯片全部切换到TM4C为前缀的型号了。
2. TI M4的芯片可以通过在程序中国锁定JTAG口的方式加密,一旦加密后芯片就不能通过JTAG口访问了
3. 芯片加密后,可以通过BOOTLOAD升级。但不能读出芯片的代码
4. 如果需要通过JTAG重写芯片,需要专用的工具解锁JTAG,JTAG一旦解锁,芯片内部的FLASH包括EEPROM都会被全部擦除。
还是不太清楚您的意思。
按你这么说,我是不是只要在源代码里面,把BOOTCFG寄存器中的DBG1和DBG0都置为0,或是1,那么就可以disable JTAG了?
那么,我有几个问题:
1. 如果只是这样,那么规格书里面提到的FMPRE(Flash 存储器保护读取启用寄存器)是不是就没用了(反正我只要锁定JTAG就可以了)?
2. BOOTCFG和FMPRE等寄存器修改以后都需要提交的,提交是不是就是意味着把寄存器内容,写入非易失性存储器,那么每次上电都写一次,有没有问题?
FMPRE也就是FLASH存储器保护寄存器使用的范围是指系统内部。而不是指系统外部。
对FLASH分区读取管理是为了在一些系统中,由于系统操作的权限不一样,为了防止低权限的去非法操作,实现的存储区分区保护。
例如我们移植一个小的实时系统,我们就可以把系统内核部分设置成只读。
而禁止JTAG口,是为了防止外部操作通过JTAG口去访问FLASH。这是两个不同的概念。
您的意思是是不是,例如我在FLASH的前16K的地方,做了一个SD卡的boot_loader(用SD卡升级用户应用代码),而且我的boot_loader不用再次升级,那么我就可以用FMPRE把这个16K保护起来?
还有,就是如果我把JTAG口锁起来,那么下次调试的时候,是不是只能用LMFlashProgrammer先把FLASH清空掉,才能再次用JTAG连接IC?还是有其它办法可以解锁JTAG?谢谢