WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-基础功能-http OTA升级程序
<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/product/audioCamera.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>
说明
这节先测试一下OTA功能, 应用到自己的服务器, 程序说明, 移植教程, 固件打包
测试
1,用户把这节工程放到开发环境的下面的目录(和hello word同一级目录)

2,当前版本设置的为0, 然后这边服务器上放了一个版本为1的


3,不需要改动其它,直接编译下载,然后打开日志窗口
保证供电充足,安装好手机卡和天线




固件版本变成了1


程序应用到自己的服务器
1,固件下载地址改为自己的服务器地址

2,假设需要更新了, 改一下版本
最长不能超过32个字符

3,编译完成以后把下面的bin文件放到服务器上,就可以了

程序说明
1,关于flash分配(当前使用的flash是16MB的)
nvs 偏移了36K以后分配了 16K
ota_data 紧接着分配了 8K
phy_init 紧接着分配了 4K
咱第一次烧录程序的地方 紧接着分配了 1600K //这是咱的工厂程序, 就是咱自己烧录的程序运行的地方
后期咱更新的时候预留了1600K
最后的文件系统分配了1M

如果用户预期自己的程序后面会超过1600K, 那么就需要把下面三个地方增大(保持大小一样)
提示: factory程序前面使用了64K + 1600K + 1600K + 1600K = 4864K + 后面的1M = 5888K
当前是16M的flash(16384K), 分配的时候只要总的不超过16384K就可以

2,这里会打印一些sha256, 最后一个是打印的当前程序的sha256
当前没有使用这些参数,后面有事件再去更新底层,使用起来

3,配置更新的时候这里设置了个回调函数

用户可以在回调函数里面做一些打印或者配置

其它事件

4,执行OTA更新,只需要调用一下下面的函数

5,最后需要执行一下下面的函数

程序下载完就会立即运行新的程序, 把这个check程序放到后面再运行, 如果下载的程序有问题,就有可能重启,便不会执行下面的程序
重启后程序就会执行回滚;

移植使用
1,把当前工程里面的下面两个文件拷贝到其它工程对应的文件夹里面

2,把版本控制文件也拷贝过去

3,调整下flash分配(直接复制粘贴过去)

4,再把下面的复制粘贴过去就可以了




固件打包
1,支持OTA以后,多了一个 ota_data_initial.bin


bootloader.bin 烧录到0x00地址
audioCamera.bin 烧录到0x10000地址
partition-table.bin 烧录到0x8000地址
ota_data_initial.bin 烧录到0xd000地址

.
浙公网安备 33010602011771号