跳转至内容

Discussion & Question

A place to talk about whatever you want or ask a question

1.0k 主题 4.4k 帖子

子版块


  • 开发环境搭建相关问题,Cmake,GCC,Ninja等

    110 主题
    432 帖子
    FrankieF

    这个问题比较奇怪,可以试试去这里面找找:https://github.com/ninja-build/ninja/issues

  • Questions about YTM32Z seires

    9 主题
    21 帖子
    justinJ

    好的,我这边先试试

  • Questions about YTM32B1H seires

    145 主题
    647 帖子
    ganyongchaoG

    是不是 breakpoint 打多了,减少一点试试

  • Questions about YTM32B1M seires

    381 主题
    2k 帖子
    PJzhangP

    ganyongchao 在 YTM32B1MC03/YTM32B1MD14 UDS刷写A/B分区,如何做到交叉升级 中说:

    B SWAP分区本质上是切换Block0和Block1的排列和启动次序

    好的,感谢

  • Questions about YTM32B1L seires

    169 主题
    686 帖子
    王虎

    兄弟 你得串口助手有下载链接么 求下载

  • Questions about YT SDK

    99 主题
    405 帖子
    quanfengQ

    CAN 2 次初始化进 Hardfault 的问题分析

    1.1 问题背景

    硬件:MD14 开发板 软件:SDK 1_3_1 问题描述: 在主函数中进行 CAN 初始化,用中断打断这个初始化,然后在中断里重新做 CAN 初始化,中断弹回时会在当前位置跳入 Hardfault
    512d0664-e144-4f98-b65b-83b21f79b42b-image.png

    1.2 问题分析

    因为 CAN 部分寄存器涉及到冻结模式下才能进行配置,在 CAN 初始化的过程中用中断去打断他,打断的位置不确定,推断可能是冻结模式的切换导致 Hardfault
    44b22bc6-2add-496c-970c-a348f75f211d-image.png

    测试代码流程如下
    cce1b0eb-c896-49ff-824e-1efcc72e3b05-image.png

    测试结果,确实当 main 函数中的 CAN 初始化正在进行,此时被中断打断,中断中又执行了 CAN 初始化,当中断执行结束回到主程序时,就可能会进入 Hardfault,tmrCnt 的值代表进入中断的次数
    ee1b7999-7b7b-45a9-99ca-1f4f57776a5b-image.png

    验证猜想,是 Freeze Mode 导致的 Hardfault
    a. Debug 在 FLEXCAN_ClearRAM 位置打断点,查看寄存器 CAN0 -> MRC -> FRZ 为 1 此时为冻结模式
    8fc55f67-28f9-45cb-ac73-b9b101958301-image.png

    b. 不触发定时器中断,让 FLEXCAN_ClearRAM 函数在非冻结模式下执行
    8ee88495-d46e-4802-90b8-175f5643be44-image.png

    c. 测试结果符合预期当在非冻结模式下去操作需要在冻结模式下操作的寄存器就会触发 Hardfault
    fb0741e6-55f9-448b-96da-47661f874bf0-image.png

    1.3 解决方案

    建议规避在 CAN 初始化过程中,触发其他中断,并且在触发的中断回调函数中又会对 CAN 进行初始化的操作
  • Questions about YT MCAL
    提问请附带芯片和软件版本信息

    62 主题
    307 帖子
    jiankang_wangJ

    如果开启了BRS,关掉SSP,并且数据段的波特率过高的话,会出现位错误。

  • 云途论坛规则/Yuntu Forum Rules

    发帖前请查看

  • YCT离线License申请流程

    帮助没办法联网的电脑使用YCT

  • YT CONFIG TOOL调查问卷

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

  • Online Users