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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YT MCAL
  4. MCAL 2.0.1版本CDD_Uart发送Bug问题解决

MCAL 2.0.1版本CDD_Uart发送Bug问题解决

已定时 已固定 已锁定 已移动 YT MCAL
3 帖子 2 发布者 142 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • yt0069Y 离线
    yt0069Y 离线
    yt0069 YunTu
    写于 最后由 编辑
    #1

    问题描述:
    使用MCAL 2.0.1版本CDD_Uart发送时,在高负载的情况下会出现仅发一帧报文后发不出去报Det故障的情况。
    问题分析:
    当调用发送函数时,会调用LinFlexD_PutData函数启动第一帧发送,后面帧的通过发送中断完成进行发送,参考LinFlexD_TxIRQHandler函数
    06184b2c-7d14-463c-bd4b-25bbd324a7ab-image.png
    此处移动数据指针的操作应该在发送中断中进行,而原驱动实在发送的时候就进行了指针的下移操作,当发生抢占或重入时,指针的操作会被多下移,导致真个发送异常
    解决方案:
    将数据指针下移操作放到中断函数中实现,删除LinFlexD_PutData中的数据指针下移操作
    b0e4fdfe-a456-40d8-8e52-2bed28781608-image.png
    a447c4c1-e94a-4276-81bf-e82403dfc63f-image.png

    1 条回复 最后回复
    0
    • FrankF 离线
      FrankF 离线
      Frank YunTu
      写于 最后由 编辑
      #2

      这个问题在下个版本中修复

      1 条回复 最后回复
      0
      • FrankF 离线
        FrankF 离线
        Frank YunTu
        写于 最后由 Frank 编辑
        #3
        此主題已被删除!
        1 条回复 最后回复
        0

      • 云途论坛规则/Yuntu Forum Rules

        发帖前请查看

      • YCT离线License申请流程

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

      • YT CONFIG TOOL调查问卷

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

      • can
        16
        demo
        15
        lin stack
        7
        uds
        7
        fbl
        5
        yt-link
        5
        md14
        4
        adc模块
        3
        Online Users
        • 登录

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