lgs_blackhole 发表于 2023-2-19 14:58:33

【已解决】请问谁用过STC32G12K128加密

STC32G12K128加密后传输能烧录,但烧录后程序不运行,用不了。
另外这个IC的ID号加密功能也用不了。


不知是IC本身的问题还是我操作不对,两大加密功能都用不了。


STC8A8K64D4的加密后传输和ID号加密我都用过,没问题。


梁工 发表于 2023-2-19 20:53:21

程序加密后传输:

此功能主要是实现将用户代码加密后再下载,
以防止代码下载过程中被第三方串口监控软件
将用户的原码数据截取,从而确保了代码的安全.

程序拥有者产品出厂时将源程序和加密钥匙
一起烧录MCU中,以后需要升级软件时,就可将
程序加密后再用"发布项目程序"功能,生成
一个用户自己界面的只有一个升级按钮的
简单易用的升级软件,给最终使用者自己升级,
而拦截不到您的原始程序

此功能仅对如下系列及新出的单片机有效:
    STC8xx系列
    STC15xx系列 (不包括STC15F204EA)
    IAP15xx系列

只下载加密代码的使用方法
1. 点击"打开程序文件"按钮,打开加密过的文件
2. 选择"本次下载的代码为加密代码"选项
3. 点击"下载/编程"按钮开始编程

重新加密代码的使用方法
1. 点击"生成新密钥"或者"打开密钥"
2. 点击"加密代码"按钮
3. 在打开对话框中选择未加密的文件
4. 在保存对话框中输入加密后的文件名

更新IC内部密钥的使用方法
1. 点击"生成新密钥"或者"打开密钥"
2. 选择"下载用户代码前先更新用户密钥"选项
3. 点击"下载/编程"按钮开始编程

lgs_blackhole 发表于 2023-2-19 21:49:52

此功能仅对如下系列及新出的单片机有效:
    STC8xx系列
    STC15xx系列 (不包括STC15F204EA)
    IAP15xx系列
STC32G12K128是属于新出的单片机,那STC32G12K128有没有这个加密后传输的功能?

8051启蒙者 发表于 2023-2-20 11:39:02

STC32G12K128使用加密后传输, 需要将EEPROM大小设置为128K !

第二个问题待回复

乘风飞扬 发表于 2023-2-20 12:23:47

STC32G的加密ID号保存地址是从0xfe0000开始,而不是从程序的起始地址0xff0000开始。

如果按照8系列的方式设置地址,例如设置存储地址为0x0400,那么读取时需要到Flash的0xfe0400地址去读取,缓冲区可设置为:
const unsigned char far ID_ADDR _at_ 0xFE0400;如果想将加密ID号存放在程序区的前64K位置,需要在存储地址上加0x10000偏移量,例如设置存储地址为:0x10400,这样缓冲区就可以设置为:
unsigned char code ID_ADDR _at_ 0x0400;

lgs_blackhole 发表于 2023-2-20 18:59:37

8051启蒙者 发表于 2023-2-20 11:39
STC32G12K128使用加密后传输可将EEPROM大小设置为128K。第二个
STC32G12K128使用加密后传输, 需要将EEPROM大小设置为128K !


===可以了,非常感谢

lgs_blackhole 发表于 2023-2-20 19:00:38

乘风飞扬 发表于 2023-2-20 12:23
STC32G的加密ID号保存地址是从0xfe0000开始,而不是从程序的起始地址0xff0000开始。

如果按照8系列的方式 ...

感谢回复,可以了!
页: [1]
查看完整版本: 【已解决】请问谁用过STC32G12K128加密