一、问题描述
在最近的项目中,遇到这样一个问题,单片机flash中存储了好多张数据补偿表,伴随着物料批次的不同,补偿表数据会进行修改,每次更改后需要重新生产一版程序,对于研发人员耗时耗力。就想在不动程序的情况下直接更新flash的补偿表。
二、解决方案
经过2天的研究与测试,测试出了两套方案。在做之前需要首先了解hex文件和bin文件的格式。
方案1:将补偿表数据生成hex文件,然后使用j-flash软件将生产hex文件和之前的程序文件合并。
方案2:将补偿表数据生成bin文件,然后使用j-flash软件单独更新bin文件。
三、方案对比
两种方案各有优缺点,方案1每次使用jlink刷程序只需要更新一次程序即可,方案2则需要每次更新2次程序,第一次更新原本的程序文件,第二次更新数据文件。方案1需要浪费一些研发人员的精力,进行一次合并,没法完全甩手,方案2则不需要研发人员参与,直接测试人员搞定即可。
四、后续
两种方式都已经进行了测试,可以在不影响程序的运行状态直接更新flash数据。下一篇文章我将
详细描述两种方案的具体操作。
我是点点,如果我写文章对大家有所帮忙,麻烦点个关注吧!
#天南地北大拜年#icon戳这里,一起放烟花>