前言
- 【AT91SAM7X-EK开发板】板载AT91SAM7X256,这个芯片,可以烧写加密字节,防止通过JTAG,回读烧写的程序文件。
- AT91SAM9X256,芯片加密后,芯片可以连接,但无法通过JTAG编程,无法【回读】芯片的烧写程序。如果发现某芯片正常工作,但无法编程或【回读】,芯片可能被加密了。
不加密的芯片
- 默认代码烧写后,芯片不加密。
- 可以反复的擦除烧写
- 烧写的程序,可以【回读】
- 所以如果不加密,程序烧写后,别人可以通过JTAG,轻松的读取你烧写的文件,虽然是二进制文件,但可以【抄板】【山寨】,甚至可以反汇编【逆向】。劳动成果轻松被别人获取!
如何加密芯片
- AT91SAM7X256,本身有个加密的选项字节,可以软件编程的方式修改,这样,代码烧写后,别人无法【读取】。
- 可以通过J-Flash,可以加密芯片,防止读写
- 加密后,可以连接芯片,【重新上电后,JTAG无法正常连接】,但是无法编程与读取Flash的烧写内容
清除加密位
- AT91SAM7X256,有一个【erase】引脚,这个引脚,默认低电平,如果开机时,如果【拉高】,会【erase】掉Flash的加密,这样,芯片就可以【erase chip】擦除整个芯片,并且正常的编程了
- 当然这个操作,此时整个芯片全部被擦除了
- 【erase chip】后,拔掉短接的【ERASE】,就可以正常的烧写程序了
小结
- ATmel的芯片很强大,功能可靠,属于老一代MCU中比较靠谱的
- 可以通过【加密芯片】的方式,保护自己的【知识产权】,保护自己的程序不被轻易的读出。