【发布时间】:2019-03-01 23:46:33
【问题描述】:
我有 3 个基于 ESP8266 的自制设备。它们中的每一个都是针对不同的应用程序而设计的,而且它们都只是为了爱好。
有时我只是想对代码做一点小改动,或者添加一个新功能,所以我一直致力于通过网络进行 OTA 更新。
每个板都有相同的代码,但每个板都有一个定义在代码上的唯一 ID 和一些可以从网络上的数据库访问的唯一配置。理想情况下,我可以更新板 #01 中的代码,该板将在数据库表中搜索启动时的先前配置,并且一切正常。
问题是,当代码更改时,ID(在代码上定义)丢失了,我不想手动编译 3 个不同的二进制文件,每个板一个,ID 是唯一的区别它们之间。当然,我必须在我第一次编写这个板时就这样做,但我不想每次更新都这样做。
有什么办法可以OTA更新代码但保留板子上的ID?也许是一种将这个 ID(甚至是其他标志)写入内存的非替换部分的方法。
【问题讨论】:
-
您在什么框架或开发环境中工作?阿杜诺?微蟒?卢阿?免费RTOS?还有什么?
-
我正在使用 Arduino 环境