JL杰理蓝牙芯片交流论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 760|回复: 0

AD15N如何通过代码支持在带电池情况下进行串口下载升级?

[复制链接]

3

主题

20

回帖

94

积分

版主

Rank: 7Rank: 7Rank: 7

积分
94
发表于 2023-6-17 11:51:39 | 显示全部楼层 |阅读模式

注册登录,了解更多芯片技术。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 steven 于 2023-6-17 11:55 编辑

一、简介
AD15N 下载时,通常需要使用强制升级工具供电进行串口升级,该升级工具会控制让芯片复位;
在独立供电的情况下,升级工具无法控制复位,无法进行升级;
本文将介绍 AD15N 如何支持带电池进行串口升级,该方案需要 占用uart1 以及 PB9(AD15)** 脚位;
注意:本方案对已经做成带电池无法升级的样机无效!需下载过本方案的代码后,才可支持带电池串口升级;
二、需要的文件
本章之后将以AD15N为例说明;
下载的文件包括:
  • agreement.h,存放于 include_lib\agreement 文件夹下;
  • agreement.a,存放于 include_lib\liba\sh55 文件夹下;
  • uart_update.c,存放于 app\bsp\common\uart_update 文件夹下;
  • uart_update.h,存放于 app\bsp\common\uart_update 文件夹下;
  • uart_update_lib.a,存放于 include_lib\liba\sh55 文件夹下;
三、步骤
  • 将下载的文件放入工程中;
  • 新增一个宏定义,可默认打开:

192124_e8075427_9509902 (1).png




  • 将库放入添加到工程中 :
  • 192131_ff116db2_9509902 (1).png




  • 将新文件添加到工程中 :

192140_2a7e2826_9509902 (2).png








  • 将uart_dev.c/uart_dev.h、uart_update.c/uart_update.h和agreement.h文件添加到工程中 :

192149_de4351d0_9509902 (1).png


  • 调用带电池串口升级初始化接口;
  • 在power_api.c中新增PB9唤醒口,设为下降沿唤醒;并且在port_init.c中接触PB9高阻态的设置 ;
    这样能够让芯片在powerdown和softoff情况下也能进行唤醒升级;






  • 在系统初始化 system_init() 最后调用 uart_update_init() 接口
  • 160332_68db48cd_9509902.png
  • 注意:该模块会使用UART1进行通讯,需保证UART1不被占用且下载口PB9处于输入上拉状态!
    编译失败请检查以上文件以及库是否存在,且是否已经包含在工程中;







192149_de4351d0_9509902 (1).png
回复

使用道具 举报

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

本版积分规则

QQ|JL杰理蓝牙芯片交流论坛 ( 粤ICP备18068352号 )

GMT+8, 2024-12-14 21:46 , Processed in 0.080067 second(s), 25 queries .

Powered by yunthinker云信

© 2001-2023 yunthinker Team.

快速回复 返回顶部 返回列表