基于原程序修改是,STM8S需改成STM32F100,FLASH为华邦W25Q32,
关键因子:8位数种子KEY+日期时间=8位密码
关键事物:下位机(STM32)、上位机(APP或PC)
1、一次一密是基于系统生成8位数种子KEY存入FLASH
2、8位数种子KEY+日期时间(时间不包含秒并忽略分钟个位数,为防止上位机和下位机运行时间误差)生成8位密码,然后把8位密码存入FLASH
3、8位密码在固定时间周期重新生成一次(每30秒生成一次,可随意改动),重新生成的8位密码存入FLASH覆盖原有8位密码
4、当恢复出厂设置后,种子KEY会变,重新生成种子KEY存入FLASH覆盖原因种子KEY
5、上位机测试端也要填入和下位机一样种子KEY,下位机因恢复出厂设置后重新生成了种子KEY,同样需要重新输入到上位机测试端里面
6、上位机系统时间也要下位机一样(时间不包含秒并忽略分钟个位数,为防止上位机和下位机运行时间误差),上位机生成8位密码算法与下位机一样生成8位密码,相隔同样的时间(每30秒生成一次,可随意改动)重新生成一次8位密码
7、当这个8位密码在使用过一次后(正确验证通过后)就会被删除,重新生成新的8位密码需要等待设置间隔时间(每30秒生成一次,可随意改动)生成,时间没到之前验证密码错误
8、如:生成一次一密8位密码周期时间为三十秒,这个8位密码正确验证后删除,再次输入也是无效的,需要等到三十秒后生成新的开锁密码存入FLASH,才能使用新的8位密码验证
具体价格电联商议!