STM8程序烧录时怎么加密

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STM8程序烧录时怎么加密相关的知识,希望对你有一定的参考价值。

三、利用id做软件加密
1,如果板子上有外部存储器,可以先编写一个程序,利用算法把id计算得到一些值存入外部存储器,然后再烧写真正的程序,真正的程序去校验外部存储器的数据是否合法即可

2,利用板子上按键组合,或是上电按住某些键,程序在这个时候利用算法把id计算得到一些值存入程序区(stm8为EE区),程序运行时去验证程序区数据是否正确

3,轩微编程器有软件加密的功能,编程器会读芯片id,根据算法直接改写缓冲区,达到软件加密的作用

4,读出的id通过一定算法,例如异或加上一个数,得到的数据存入flash(只运行一次,运行后标志位也存入flash),下次读到这个标志位,就不运行这个程序。

四、做软件加密时注意
1,不要在程序中直接出现id地址,例如STM32:1FFFF7E8 1FFFF7EC 1FFFF7F0 STM8: 0x4865~0x4870
2, 利用校验和或是crc对程序区进行校验,防止改程序
参考技术A STVD下载程序的时候打开READ OUT PROTECTION就行 参考技术B stvp设置option byte,读保护位,并下载~ 参考技术C 推荐使用misuo试试。

misuo是一款专业的手机加密软件,可对相册或存储卡内的照片、视频、音频、文档等多种文件类型进行加密,随时随地贴心保护手机隐私和私密文件。本回答被提问者和网友采纳

可以用IAR直接烧录stm32吗? 用的是jlink,怎么烧?

参考技术A 如果要用jlink来烧的话,需要再安装一个jlink的专门的烧写工具。
烧写步骤如下:
首先使用IAR编写好你的c程序后,按"build all"就会自动生成一个以hex为后缀的文件。
然后打开JLINK 专门的烧写工具(一般买JLINK的时候附带的光盘上都会有的,没有的话自己下一个也行),打开后导入刚才的hex文件。先按菜单上的“connect”连接你的stm32芯片。连接成功后再按'erase chip'清除芯片上原有的程序。再按"program&verify"就可以把hex文件也就是你的程序烧到stm32裸片上了。

ps:我有一个教你分别使用jlink、jtag、ISP烧写ARM7芯片(烧ARM7和烧stm32的方法是一样的)的小视频,需要的话留个邮箱我发给你。追问

公司那个哥跟我说用iar download 就可以,搞了半天只是那个out文件,唉!
以前没用过见笑啦,哈哈
视频发我邮箱吧 soloautumn@hotmail.com
谢谢!

追答

视频已发,请查收。
视频前半段讲仿真调试的,后半段才讲烧写。

本回答被提问者采纳
参考技术B 不行,iar可以调式。想用Jlink烧录得换个软件,J-FLASH吧

以上是关于STM8程序烧录时怎么加密的主要内容,如果未能解决你的问题,请参考以下文章

STM8编程有啥软件,调试下载用啥软件,烧录用啥工具,大概价位是多少!新手想学STM8

烧录时发生:permission denied:'/dev/ttyUSB0'问题的解决

STM8S 单片机通过 STVP下载程序后无法自动复位运行

怎么把c语言程序烧进单片机

SWIM接口及STM8烧录过程

为啥新唐N76E003单片机用串口烧录不了