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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1M系列
  4. FBL在初始化CAN后再跳转至APP,APP无法正常通信

FBL在初始化CAN后再跳转至APP,APP无法正常通信

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

    1 首先顺序按照以下顺序进行:
    先关中断 Can_DisableControllerInterrupts()
    再停止控制器 Can_SetControllerMode(CAN_CS_STOPPED)
    最后反初始化 Can_DeInit()

    2 你这个截图里还有递归操作,把递归去掉,调用的Deinit函数必须是AutoSar驱动函数,不是你自己定义的。

    1 条回复 最后回复
    0
    • FunchovyF 离线
      FunchovyF 离线
      Funchovy
      编写于 最后由 编辑
      #3

      1.已按这样的顺序修改,还是一样。
      image.png
      2.没有递归,这俩是俩个函数,代码命名不规范这俩函数太相似了,已修改,调用的Deinit函数是云途MCAL的库函数,不是自己定义的。

      1 条回复 最后回复
      0
      • lhvL 离线
        lhvL 离线
        lhv
        编写于 最后由 编辑
        #4
        此主題已被删除!
        1 条回复 最后回复
        0
        • jiankang_wangJ 离线
          jiankang_wangJ 离线
          jiankang_wang YunTu
          编写于 最后由 编辑
          #5

          MCAL 的版本是什么?
          在进行反初始化的时候,需要将所有使用到的通道都STOP掉,才能反初始化.

          另外,可以在APP中检查一下DET的报错,确定一下APP中是不是没有初始化导致的通信失败

          1 条回复 最后回复
          0
          • FunchovyF 离线
            FunchovyF 离线
            Funchovy
            编写于 最后由 编辑
            #6
            1. MCAL版本是2.3.0
            2. 在进行反初始化的时候,需要将所有使用到的通道都STOP掉,才能反初始化
              -->只配了这一路CAN
              image.png
              3.可以在APP中检查一下DET的报错,确定一下APP中是不是没有初始化导致的通信失败
              -->需要怎么做?单跑APP是有通信的。
            1 条回复 最后回复
            0
            • jiankang_wangJ 离线
              jiankang_wangJ 离线
              jiankang_wang YunTu
              编写于 最后由 编辑
              #7
              1. 先检查一下在你的 Can_Deinit 函数调用后, FLEXCAN 模块的状态, MCR寄存器的状态.

              2. Det检查的话,要看你的Det模块是什么,我们提供的Det是桩模块,可以直接检查全局变量

              uint16 Det_ModuleId;
              uint8 Det_ApiId;
              uint8 Det_InstanceId;
              uint8 Det_ErrorId;
              uint16 Det_TotalError;
              
              1 条回复 最后回复
              0
              • FunchovyF 离线
                FunchovyF 离线
                Funchovy
                编写于 最后由 编辑
                #8
                1. CAN MCR 看了一下感觉没特别大的问题
                  MDIS 0 ReadWrite
                  FRZ 1 ReadWrite
                  RFEN 0 ReadWrite
                  HALT 1 ReadWrite
                  NOTRDY 1 ReadWrite
                  WAKMSK 0 ReadWrite
                  SOFTRST 0 ReadWrite
                  FRZACK 1 ReadWrite
                  SUPV 1 ReadWrite
                  SLFWAK 0 ReadWrite
                  WRNEN 1 ReadWrite
                  LPMACK 0 ReadWrite
                  WAKSRC 0 ReadWrite
                  DOZE 0 ReadWrite
                  SRXDIS 1 ReadWrite
                  IRMQ 1 ReadWrite
                  DMA 0 ReadWrite
                  PNET_EN 0 ReadWrite
                  LPRIOEN 0 ReadWrite
                  AEN 1 ReadWrite
                  FDEN 1 ReadWrite
                  IDAM 0x0 ReadWrite
                  MAXMB 0xd ReadWrite
                  跳转后
                  MDIS 0 ReadWrite
                  FRZ 0 ReadWrite
                  RFEN 0 ReadWrite
                  HALT 0 ReadWrite
                  NOTRDY 0 ReadWrite
                  WAKMSK 0 ReadWrite
                  SOFTRST 0 ReadWrite
                  FRZACK 0 ReadWrite
                  SUPV 0 ReadWrite
                  SLFWAK 0 ReadWrite
                  WRNEN 0 ReadWrite
                  LPMACK 0 ReadWrite
                  WAKSRC 0 ReadWrite
                  DOZE 0 ReadWrite
                  SRXDIS 1 ReadWrite
                  IRMQ 0 ReadWrite
                  DMA 0 ReadWrite
                  PNET_EN 0 ReadWrite
                  LPRIOEN 0 ReadWrite
                  AEN 1 ReadWrite
                  FDEN 0 ReadWrite
                  IDAM 0x0 ReadWrite
                  MAXMB 0x3f ReadWrite

                2.APP用的是SDK,没找到DET模块。

                1 条回复 最后回复
                0
                • swustS 离线
                  swustS 离线
                  swust YunTu
                  编写于 最后由 编辑
                  #9

                  贴一下app的代码看看

                  FunchovyF 1 条回复 最后回复
                  0
                  • FunchovyF 离线
                    FunchovyF 离线
                    Funchovy
                    回复了swust 最后由 编辑
                    #10

                    swust
                    哪部分

                    swustS 1 条回复 最后回复
                    0
                    • jiankang_wangJ 离线
                      jiankang_wangJ 离线
                      jiankang_wang YunTu
                      编写于 最后由 编辑
                      #11

                      你这跳转后是什么时候都寄存器内容?跳转完成后就是这样了?

                      从寄存器来看,在跳转前是disable掉了FLEXCAN模块,进入了freeze模式,跳转后变成normal了

                      直接跑app的代码,是可以正常工作的吧? app的寄存器看起来是正常的,你说的通信失败指的是什么?进不了回调吗?

                      FunchovyF 1 条回复 最后回复
                      0
                      • swustS 离线
                        swustS 离线
                        swust YunTu
                        回复了Funchovy 最后由 编辑
                        #12

                        Funchovy 就CAN的这部分

                        FunchovyF 1 条回复 最后回复
                        0
                        • FunchovyF 离线
                          FunchovyF 离线
                          Funchovy
                          回复了jiankang_wang 最后由 Funchovy 编辑
                          #13

                          jiankang_wang 在 FBL在初始化CAN后再跳转至APP,APP无法正常通信 中说:

                          你这跳转后是什么时候都寄存器内容?跳转完成后就是这样了?
                          FBL跳转到APP后观察CAN的MCR寄存器,跳转完成后就是这样了。
                          从寄存器来看,在跳转前是disable掉了FLEXCAN模块,进入了freeze模式,跳转后变成normal了
                          是的
                          直接跑app的代码,是可以正常工作的吧? app的寄存器看起来是正常的,你说的通信失败指的是什么?进不了回调吗?
                          直接跑app的代码,是可以正常工作的, 通信失败指的是上位机发送的报文ACK Error。

                          1 条回复 最后回复
                          1
                          • FunchovyF 离线
                            FunchovyF 离线
                            Funchovy
                            回复了swust 最后由 编辑
                            #14

                            swust 在 FBL在初始化CAN后再跳转至APP,APP无法正常通信 中说:

                            Funchovy 就CAN的这部分
                            用的是这一份里的代码
                            https://forum.ytmicro.com/topic/1257/ytm32b1me05-uds-can-fbl公版操作指南

                            lxhxssL 1 条回复 最后回复
                            0
                            • lxhxssL 离线
                              lxhxssL 离线
                              lxhxss
                              回复了Funchovy 最后由 编辑
                              #15
                              此主題已被删除!
                              1 条回复 最后回复
                              0
                              • jiankang_wangJ 离线
                                jiankang_wangJ 离线
                                jiankang_wang YunTu
                                编写于 最后由 编辑
                                #16

                                跳转的话应该是不会去动CAN模块的配置的,除非你的代码里会去修改FLEXCAN的寄存器. 但是你这里跳转完成后就变为了 Normal 状态. 可能是哪里动到了.

                                可以先检查一下 FLEXCAN 的邮箱配置, 看看是否有你上位机发送部分的接收邮箱配置.

                                具体的,可以检查 CAN->RAM 寄存器, 看看你的邮箱配置在跳转前后是否一致.

                                1 条回复 最后回复
                                0
                                • FunchovyF 离线
                                  FunchovyF 离线
                                  Funchovy
                                  编写于 最后由 编辑
                                  #17

                                  已解决,我用MCAL重配了一次APP,FBL在初始化CAN后再跳转至APP(MCAL)是能够通信的。原来APP是论坛上的SDK Demo.好奇怪。

                                  1 条回复 最后回复
                                  0
                                  • ,FunchovyF Funchovy 将这个主题标记为已解决

                                • 云途开发生态介绍

                                  快速上手云途开发生态

                                • 云途论坛规则/Yuntu Forum Rules

                                  发帖前请查看

                                • YT CONFIG TOOL调查问卷

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

                                • can
                                  28
                                  demo
                                  23
                                  uds
                                  14
                                  lin stack
                                  13
                                  md14
                                  6
                                  yt-link
                                  6
                                  fbl
                                  5
                                  adc模块
                                  4
                                  Online Users
                                  chenchaoC
                                  chenchao
                                  EkkoE
                                  Ekko
                                  JETTJ
                                  JETT
                                  YQHY
                                  YQH
                                  swordsS
                                  swords
                                  • 登录

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