跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
折叠
品牌标识

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1M系列
  4. OTA 升级 bootload 跳转后(在APP做地址偏移)APP启动异常

OTA 升级 bootload 跳转后(在APP做地址偏移)APP启动异常

已定时 已固定 已锁定 已移动 YTM32B1M系列
19 帖子 6 发布者 1.9k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • DigaD 离线
    DigaD 离线
    Diga
    写于 最后由 编辑
    #2

    具体卡死在哪一步

    RyanGR 1 条回复 最后回复
    0
    • RyanGR 离线
      RyanGR 离线
      RyanG
      在 回复了 Diga 最后由 编辑
      #3

      Diga 你好,串口、SPI master 、SPI slave 都起不来
      RTOS TIMER IO 都正常,
      其中SPI master 卡死在这部分了:
      7c593364-e4d9-4b28-9e7b-967b4e1b0605-image.png

      1 条回复 最后回复
      0
      • DigaD 离线
        DigaD 离线
        Diga
        写于 最后由 编辑
        #4

        我看了这个函数,应该没有卡死的可能性。
        是不是 boot 里有产生过 SPI 的中断,但没有处理

        RyanGR 1 条回复 最后回复
        0
        • ws420115W 离线
          ws420115W 离线
          ws420115
          写于 最后由 编辑
          #5

          BOOT 里面只有串口和flash,并且在跳转前都卸载了并禁用了中断

          1 条回复 最后回复
          0
          • RyanGR 离线
            RyanGR 离线
            RyanG
            在 回复了 Diga 最后由 编辑
            #6

            Diga 请参考ws420115的消息,这是客户的技术工程师。感谢Diga。

            1 条回复 最后回复
            0
            • ws420115W 离线
              ws420115W 离线
              ws420115
              写于 最后由 编辑
              #7

              d1932543131f11035c778a8c0638fdc.png
              图片是我手动修改.SCF文件的截图,只有头两处地方改了,且只改了这个文件,是否是我哪里没改全?

              1 条回复 最后回复
              0
              • DigaD 离线
                DigaD 离线
                Diga
                写于 最后由 编辑
                #8

                这个可能得配合具体工程才好分析,建议先联系 FAE 咨询一下

                ws420115W 1 条回复 最后回复
                0
                • ws420115W 离线
                  ws420115W 离线
                  ws420115
                  在 回复了 Diga 最后由 编辑
                  #9

                  Diga 问题解决了,就是.scf文件修改不全,因为不知道YCT工具里link选项不知道怎么修改地址,最后手动修改.scf文件,没改全造成的跳转成功但是运行异常

                  1 条回复 最后回复
                  0
                  • zhaodong1Z 离线
                    zhaodong1Z 离线
                    zhaodong1
                    编写于 最后由 编辑
                    #10

                    您好,我在使用YTM32MB105的BT的demo工程时,可以正常刷写和跳转APP,跳转后运行正常,,,我在我新的BT工程里现在可以正常刷写app工程,但是刷写完的BT执行跳转APP函数会进入故障,app也没有正常运行,这个跳转函数执行有什么依赖前置项吗

                    quanfengQ 1 条回复 最后回复
                    0
                    • quanfengQ 离线
                      quanfengQ 离线
                      quanfeng YunTu
                      回复了zhaodong1 最后由 编辑
                      #11

                      zhaodong1 跳转前要反初始化 Boot 里使用到的外设,同时关闭所有中断。可以在 APP main 开头加上 while(1) 卡住,定位是跳转 APP 成功,但 APP 代码运行失败,还是跳转 APP 失败。

                      1 条回复 最后回复
                      0
                      • zhaodong1Z 离线
                        zhaodong1Z 离线
                        zhaodong1
                        编写于 最后由 编辑
                        #12

                        1、我已经通过你们提供的BT的demo工程验证APP程序运行没有问题,可以正常跳转运行2、我已经将所有的外设反初始化,并且下图所示哪一行调用会报错,我在demo里测试了这一行屏蔽不会影响跳转,跳转函数执行前除了外设初始化还需要有哪些操作吗
                        image.png

                        quanfengQ zhaodong1Z 2 条回复 最后回复
                        0
                        • quanfengQ 离线
                          quanfengQ 离线
                          quanfeng YunTu
                          回复了zhaodong1 最后由 编辑
                          #13

                          zhaodong1 SCB->VTOR = APP_IMAGE_START; 这个传的是 APP 起始地址呀,这个就是跳转的目标地址呀,这个注释后怎么确认不影响跳转的了

                          1 条回复 最后回复
                          0
                          • zhaodong1Z 离线
                            zhaodong1Z 离线
                            zhaodong1
                            编写于 最后由 编辑
                            #14

                            我用你们提供的demo工程,屏蔽掉这里后也可以正常跳转,只要传入的appentry是app的启动地址就能跳转过去,,我自己的BT工程现在执行这一行会报错,我不清楚是什么原因导致的

                            quanfengQ 1 条回复 最后回复
                            0
                            • quanfengQ 离线
                              quanfengQ 离线
                              quanfeng YunTu
                              回复了zhaodong1 最后由 编辑
                              #15

                              zhaodong1 方便截图或者直接发一下你 APP 工程的 YCT 配置文件吗 c101def2-8e30-415e-9a71-73f0fe641fc4-image.png

                              1 条回复 最后回复
                              0
                              • zhaodong1Z 离线
                                zhaodong1Z 离线
                                zhaodong1
                                编写于 最后由 编辑
                                #16

                                image.pnglink文件我用的默认配置,生成后手动修改的

                                zhaodong1Z 1 条回复 最后回复
                                0
                                • zhaodong1Z 离线
                                  zhaodong1Z 离线
                                  zhaodong1
                                  回复了zhaodong1 最后由 编辑
                                  #17

                                  zhaodong1 The target stopped in MemManage exception state.

                                  Reason: Unknown at 0x0001235E.

                                  For more information about analyzing faults on Cortex-M, refer to:
                                  https://wiki.segger.com/Cortex-M_Fault.我执行跳转后报错是这样的,,现在看起来能跳转到APP,但是APP不能正常运行,,,同样的APP 工程我用你们的demo跳转后是可以正常运行的0eb3249f-462e-4612-98c6-ca1ccc3932e4-image.png

                                  1 条回复 最后回复
                                  0
                                  • zhaodong1Z 离线
                                    zhaodong1Z 离线
                                    zhaodong1
                                    回复了zhaodong1 最后由 编辑
                                    #18

                                    我的APP单独运行,或者用你们的BTdemo都可以正常运行,我感觉核心原因还是我的BT这一行无法正常通过导致的,我想知道这一行和什么有关,需要做哪些配置才能正常使用19caac7a-f23c-4028-b174-9a8c5efe0dff-image.png

                                    yishui66Y 1 条回复 最后回复
                                    0
                                    • yishui66Y 离线
                                      yishui66Y 离线
                                      yishui66
                                      回复了zhaodong1 最后由 yishui66 编辑
                                      #19

                                      背景: 在Cortex-M33中,用户模式(非特权模式)无法直接操作多数SCB寄存器。非特权访问尝试将触发故障(如MemManage故障或HardFault)。只有特权代码(如操作系统内核或异常处理程序)才能安全地配置这些寄存器。

                                      **分析:**SCB->VTOR赋值属于内核操作,故需要使用特权模式。且YTMEVB_Demo_RevC 这个demo是启用了非特权模式的

                                      方法一: 修改YCT工程配置并重新生成工程
                                      ①YCT工具配置删除以下宏
                                      9adbec80-997d-472c-a1c5-d87f56fa09c4-0c96960d-76ed-4a57-8329-6b9d20ef7e26.png

                                      ②确认所有外设均取消勾选EnableUserModeSupport
                                      948970a8-c564-4f9f-b233-ec430b994889-57bda4e2-4527-4f5b-9ba2-2f09d9b0a9ba.png

                                      方法二: 在代码中直接增加进入特权模式,无需修改YCT配置
                                      69cbb451-1ca9-4af1-9298-ba595f90785b-2e2cf0070fad973803cb915adb976ba9.png

                                      1 条回复 最后回复
                                      0

                                    • 云途开发生态介绍

                                      快速上手云途开发生态

                                    • 云途论坛规则/Yuntu Forum Rules

                                      发帖前请查看

                                    • YT CONFIG TOOL调查问卷

                                      帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...

                                    • can
                                      23
                                      demo
                                      20
                                      uds
                                      13
                                      lin stack
                                      12
                                      md14
                                      6
                                      fbl
                                      5
                                      yt-link
                                      5
                                      adc模块
                                      4
                                      Online Users
                                      • 登录

                                      • 登录或注册以进行搜索。
                                      • 第一个帖子
                                        最后一个帖子
                                      0
                                      • 版块
                                      • 最新
                                      • 标签
                                      • 热门