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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1M系列
  4. UART一次接收数据超过缓冲区大小容易触发err中断

UART一次接收数据超过缓冲区大小容易触发err中断

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

    不确定接收的数据长度,比如给串口的buffer大小500字节,但是一次性来了600字节,在接收满500字节时是会触发FULL回调,这个时候如何处理,才不至于让后续的501~600造成ERR中断?
    试过两种处理:
    1、回调内,当FULL或者IDLE时,置标志位,在应用task内根据取数据,并重新给新的缓冲区(IDLE要重新开启接收);
    2、回调内,当FULL时,直接在回调内取数据及设置新缓冲区,IDLE则按方法1。
    这两种方法都会在接收到超过缓冲区大小的数据时,出现err中断

    1 条回复 最后回复
    0
    • sunxuehuS 离线
      sunxuehuS 离线
      sunxuehu
      写于 最后由 编辑
      #4

      是的,需要一个新的buff暂存下。要是不需要接收多余数据,就不执行任何操作就行,底层会关掉接收功能且不会出错

      sailing0505S 1 条回复 最后回复
      0
      • sunxuehuS 离线
        sunxuehuS 离线
        sunxuehu
        写于 最后由 编辑
        #2

        image.png
        可以使用这个函数

        sailing0505S 1 条回复 最后回复
        0
        • sailing0505S 离线
          sailing0505S 离线
          sailing0505
          在 回复了 sunxuehu 最后由 编辑
          #3

          sunxuehu 是用的这个,这意味着我需要用一个新的buffer给它?因为原本的数据还没取出来。

          1 条回复 最后回复
          0
          • sunxuehuS 离线
            sunxuehuS 离线
            sunxuehu
            写于 最后由 编辑
            #4

            是的,需要一个新的buff暂存下。要是不需要接收多余数据,就不执行任何操作就行,底层会关掉接收功能且不会出错

            sailing0505S 1 条回复 最后回复
            0
            • sailing0505S 离线
              sailing0505S 离线
              sailing0505
              在 回复了 sunxuehu 最后由 编辑
              #5

              sunxuehu 数据是需要的,肯定不能丢掉。行吧,换新缓冲区就得调整下代码了,原来没设计使用多个缓冲区

              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
              MonsterM
              Monster
              扎西朗卡扎
              扎西朗卡
              • 登录

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