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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1M系列
  4. YTM32B1ME05 串口通信不接收

YTM32B1ME05 串口通信不接收

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

    我们产品用的方案是YTM32B1ME05,通信上我们有CAN通信和串口通信。都是用中断来实现的,串口通信是用:
    1b3b5f2c-e449-472c-803d-12008ed287d0-image.png
    在程序中我们是下面做串口通信处理。
    65ba9ef7-a127-4037-8ca7-eed19e6f8712-image.png
    现在出现,CAN通信接收的数据多时,串口会接收不了数据。
    之前也出现过问题,技术工程师让我们加大了接收缓存的数组(UART_TX_RX_SIZE)。原来设定是10的,我们现在一个通信最大的数据量是153,现在加大到160。但是还是会出现串口有数据,中断没接收。只要没接收后,一定要断电,重启后才可以再恢复。

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

      猜测原因可能是,当CAN通信在接收数据多时,会一直在CAN中断内,此时如果有串口接收数据,且超过硬件缓存size,则会丢弃溢出的数据,导致通信失败。
      可以试一下把 UART 中断优先级调高,让 UART 可以抢占 CAN 中断

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

        修改过了。CAN改成3,UART改成2.但是还是会不进去中断。UART的溢出中断没有发生。

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

          这个好复现吗?建议咨询FAE进行远程调试

          1 条回复 最后回复
          0

        • 云途论坛规则/Yuntu Forum Rules

          发帖前请查看

        • YCT离线License申请流程

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

        • YT CONFIG TOOL调查问卷

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

        • demo
          11
          can
          8
          lin stack
          5
          yt-link
          5
          vscode
          3
          adc模块
          2
          i2c
          2
          uuid
          2
          Online Users
          XgqX
          Xgq
          lynL
          lyn
          DigaD
          Diga
          xianghanX
          xianghan
          • 登录

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