单片机论坛

 找回密码
 立即注册

QQ登录

只需一步快速开始

搜索
查看: 434|回复: 0
打印 上一主题 下一主题
收起左侧

为自己的DA14580工程添加OTA功能

[复制链接]
跳转到指定楼层
楼主
yeah哟 发表于 2019-5-15 19:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
简介此方法基于DA14580官方SDK_5.0.4更模可以为自己的工程增加OTA功能
详细步骤如附件
相关工具另外发帖

简介此方法基于DA14580官方SDK_5.0.4更模可以为自己的工程增加OTA功能
一开发准备
1DA14580官方SDKDA1458x_SDK_5.0.4
2官方SDK5OTA文档
3转换工具
4手机APP

二工程代码更改步骤
1同时打开自己的工程和官方SDK中的例程ble_app_ota.uvprojx

2更改自己蓝牙的地址不要与其它蓝牙地址冲突就行

3更改宏定义

4包含头文件

5更改广播数据和设备的名称将广播数据更换成官方ota例程的数据这一问据如果不一致会导致手机软件suota搜不到设备名称可以随意设定

6编译自己的工程会出现错误根据错误提示将没有定义的函数或变看官方ota例程中全局搜索并对比每一处更改为一样即可
              错误一user_profile_callbacks
在官方ota例程中全局搜索
将官方ota与自己工程不一致的地方复制到自己工程
错误二on_spotar_status_change
将官方ota与自己工程不一致的地方复制到自己工程

错误三变量没有定义
SDK5.0.4\SDK5.0.4\DA1458x_SDK_5.0.4\DA1458x_SDK\5.0.4\sdk\ble_stack\profiles\spota 目录下的spotar文件夹复制到自己工程的src文件夹并在工程中添加
将文件添加完成后就可以编译通过了


编译通过后请转至文档最后还有一段代码需添加
三转换文件准备
程序更改已经完成下面进行bin文件与imag文件的生成
1转换工具需要两个工程输出的HEX文件
先编译工程生成HEX文件cocobit_19_5_11_1

然后随意更改任意一处加个延时或者定义变量反正要与上一个程序不一样因为OTA时会验证程序是否一样更改后生成cocobit_19_5_11_2

将两个HEX文件更改为fw_1和fw_2放入转换工具的input文件夹中
创建两个头文件要求第二个头文件的版本信息和时间都需要比第一个的高
如果是580的工程就更改下名字585就该另外一个


四生成bin和image文件
1安装python环境
              去官网https://www.python.org/downloads/ 下载安装包
              为计算机添加安装目录搭到环境变量如图把python的安装目录添加到pth系统变量中即可
测试python安装是否成功cmd打开命令行输入 python 命令如下图即成功

2运行脚本
访首换工具文件夹然后输入命令运行脚本
成功生成文件

3查看output文件夹运行脚本前可以把文件夹内容都境
然后将fw_multi_part_spi.bin文件用SmartSnippets烧录到flash
五烧录bin文件与OTA功能验证
1烧录的时候选择
烧录成功重新上电
2打开手机SOUTA手机APP就可以搜索到设备相关的名称和地址
3将转换工具生成的img文件放到手机Suota文件夹
4在手机APP上点击设备选择updata device
选择send to device

升级完成之后选择重启设备
链ˣ整个过程完毕
六测试
测试OTA功能是否正常在工程改一下设备名称编译生成HEX文件后再按照上述步骤将HEX改成fw_2.hex然后在头文件fw_2_version.h把时间更改为现在的时间保证要大于之前的时间或者版本即可
将生成的fw_image_2.img文件用手机升级即可升级完成之后手机发送重启命令设备没有完成重启必须手动重启才能使程序生效那是因为还有一段代码没有复制过去
重启代码如下添加后可完善OTA程序即OTA完成后可用app复位不用手动复位


完整的Word格式文档51黑下载地址
详细步骤.docx (2.26 MB, 下载问: 1)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾段博腾段博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 顶 踩
回复

使用道具 举报

您需要登己才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51黑电子论坛单片机 联系QQ:125739409;技术交流QQ群582644647

Powered by 单片机教程网

快速回复 返回顶部 返回列表
ձһhƬձƵ ձƵɫwww ձƵ:ɫ