针对STM32系统固件升级时使用同一个文件易被非法复制使用的缺陷,提出并实现了一种一个STM32芯片使用一个唯一升级文件的固件升级方案。升级固件时,由服务器为不同的STM32芯片生成不同的bin文件,该bin文件是以STM32的CPUID为密钥,应用AES算法加密原始bin文件得到的。升级时STM32以自身的CPUID作为密钥对文件解密,如果作为解密密钥的CPUID和作为加密密钥的CPUID不同,则解密出的bin文件不能运行。解密后,再应用IAP技术把新的bin文件写入Flash。实际测试证明,