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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1H系列
  4. CAN报文发送顺序不连续且会丢失报文

CAN报文发送顺序不连续且会丢失报文

已定时 已固定 已锁定 已移动 已解决 YTM32B1H系列
can
7 帖子 3 发布者 3.0k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • zhanjsZ 离线
    zhanjsZ 离线
    zhanjs
    写于 最后由 编辑
    #1

    我现在用的是CAN0的发送通道,有四个缓冲区,0和1缓冲区作为接收缓冲区,2和3缓冲区作为发送缓冲区
    2和3分别有32个mailBOx邮箱,我现在同时填充64个报文,ID一样,第0个字节的数据根据顺序从0累加到63,发出来的报文是不按照顺序的如图所示
    2303877e-788f-415a-9a7f-2e6ec1445f79-image.png
    这边在特殊工况时是需要报文按照填充的数据顺序发送的,所以请问一下,如何判断2缓冲区已经填充满的情况下切换到3缓冲区去发送,而且顺序不会打乱,有什么好的办法吗?

    1 条回复 最后回复
    0
    • yt0069Y 离线
      yt0069Y 离线
      yt0069 YunTu
      写于 最后由 编辑
      #4

      可以通过FLEXCAN_DRV_GetTransferStatus这个函数来查询

      zhanjsZ 1 条回复 最后回复
      0
      • yt0069Y 离线
        yt0069Y 离线
        yt0069 YunTu
        写于 最后由 编辑
        #2
        1. 没必要这样来发单个报文,用1个专用的邮箱来发送这条报文就好了,等发送完成中断后再填充要发送的下一帧报文
        2. 如果要用多个mailbox发送同一个id的报文的话,一定要等待上一帧发完了(发送完成中断)再查询分配个这个报文的状态,用空闲状态的发送下一帧
        zhanjsZ 1 条回复 最后回复
        0
        • zhanjsZ 离线
          zhanjsZ 离线
          zhanjs
          在 回复了 yt0069 最后由 编辑
          #3

          yt0069 我们是希望多个mailBOx发同个ID,通过哪个可以查询这个报文的发送的状态呢?

          1 条回复 最后回复
          0
          • yt0069Y 离线
            yt0069Y 离线
            yt0069 YunTu
            写于 最后由 编辑
            #4

            可以通过FLEXCAN_DRV_GetTransferStatus这个函数来查询

            zhanjsZ 1 条回复 最后回复
            0
            • zhanjsZ 离线
              zhanjsZ 离线
              zhanjs
              在 回复了 yt0069 最后由 编辑
              #5

              yt0069 MCAL里可以用哪个读取呢

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

                您好:
                MCAL 里 CAN 没有提供对应的接口查询某个邮箱的状态。
                如果是重复发送的话,直接调用 CAN_Write 函数即可,当 Hth 满了该函数会返回值为 2 的枚举 CAN_BUSY

                zhanjsZ 1 条回复 最后回复
                0
                • zhanjsZ 离线
                  zhanjsZ 离线
                  zhanjs
                  在 回复了 jiankang_wang 最后由 编辑
                  #7

                  jiankang_wang 好的,谢谢

                  1 条回复 最后回复
                  0
                  • ,FrankieF Frankie 将这个主题转为问答主题
                  • ,FrankieF Frankie 将这个主题标记为已解决

                • 云途开发生态介绍

                  快速上手云途开发生态

                • 云途论坛规则/Yuntu Forum Rules

                  发帖前请查看

                • YT CONFIG TOOL调查问卷

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

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

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