本帖最后由 湉湉 于 2016-11-23 00:36 编辑 3 L w8 j- k' W5 G) H1 q 现在的MCU大部分都会提供读保护和写保护的功能。具体读保护和写保护作用,我把自己调试STM32的一些经验和大家分享下 1 读保护:保护保存在MCU上的执行代码不会被调试/下载工具拷贝出来。STM32 读保护有三个等级 L0 L1 L2 $ ?( p& i" c+ h3 q, z. c L0 是没有保护,可以随意读出来的,一般调试过程中选择。在L0 状态可以设置成L1 或者L2,修改完成不会擦除芯片已有的代码;7 k5 a0 `. m& J) R1 Z6 N L1 是可恢复读保护,L1-->L0状态,,会自动擦除已有的程序。L1->L2,这个设置还没有试过,(正常理解是不擦除); L2 是不可恢复读保护,此状态下,不可恢复到其他的状态,同时芯片里的程序不能再升级 类似OTP了;9 d5 Q( Y4 h: n" w) `3 e ` 这个主要是保护代码不会被其他人恶意拷贝,保护原作者的权益。& }! b% C9 i, N+ k- `5 \; o , |& c9 i" w0 B% s/ v. s 2 写保护: 保护存在MCU上的代码 不会被异常修改。正常的代码更新流程需要先失能对应的保护位,更新完成再次恢复之前的保护位。 这个主要是保护程序正常运行的时候,不会被异常更改。! Y0 ~: u4 x& h* N+ H; o+ s) s 3 如图的STM32 ST-LINK UNILITY 工具上的读写保护和一些用户设置,包括在调试的停时 看门狗是否继续计数等设置 |
设置了 L2 保护 芯片就变砖了
砖头,多么让人神往的名字,哈哈