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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1M系列
  4. YTM32B1ME0频繁进入UART错误中断

YTM32B1ME0频繁进入UART错误中断

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

    如图,UART一直进入RXOVERRUN的错误中断里面。已经配置了对应的错误回调函数去记录错误,在错误发生之后做了UART的去初始化和重新初始化,进入到这个中断多次之后会直接进入到HardFault里面。这个错误状态会在什么情况下发生呢?以及该如何避免这个错误发生?求指教。
    d4a9205d-f017-4241-824e-f6ed746029a7-image.png
    1afd8c43-cd22-4223-b0d4-5f812813e721-image.png

    1 条回复 最后回复
    0
    • FrankF 离线
      FrankF 离线
      Frank YunTu
      写于 最后由 编辑
      #2
      1. 发生RXOVERRUN错误,说明接收buffer数据溢出,把接收中断优先级提高,避免被打断,可避免该错误。另外,进入HardFault的问题,跟调用DeInit的时机有关,如果调用过程中总线上仍然有未完成的数据,则有概率在DeInit执行后又产生中断,导致错误中断中访问非法地址。下周会发布一个HotFix版本修复进入hardfault的问题。
      2. 重新初始化无法解决RxOverRun错误,只能通过提高中断优先级避免接收过程被打断来解决
      guangnanG 1 条回复 最后回复
      0
      • guangnanG 离线
        guangnanG 离线
        guangnan
        在 回复了 Frank 最后由 编辑
        #3

        Frank 你好,我现在尝试把UART的中断等级调至最高等级1也还是会进入到RXOVERRUN错误中。15f5e470-aa31-4193-bdc2-d842d3a43c9c-image.png
        我在发送接收前使用了如下函数做一个同步间隔的发送,是否会跟这个函数有关系1e3a5267-f6a5-45ac-8dc9-314c045ba72d-image.png

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

          我看错了以为是Mcal,不过SDK是一样的道理,接收过程中打断就会很容易产生Overrun错误

          guangnanG 1 条回复 最后回复
          0
          • guangnanG 离线
            guangnanG 离线
            guangnan
            在 回复了 Frank 最后由 编辑
            #5

            Frank 我现在把其他的任务都关闭了只做UART的收发都还是会进入这个错误中,现在这个产生OverRun错误的原因是否跟打断没有关系呢

            FrankF 1 条回复 最后回复
            0
            • FrankF 离线
              FrankF 离线
              Frank YunTu
              在 回复了 guangnan 最后由 编辑
              #6

              guangnan 建议你跑下EVB的demo去验证下

              guangnanG 1 条回复 最后回复
              0
              • guangnanG 离线
                guangnanG 离线
                guangnan
                在 回复了 Frank 最后由 编辑
                #7

                Frank 我这边跑完DEMO之后发现UART CAN都初始化之后,在往外发送UART信号时,给板子发CAN信号就会导致进错误。我已经尝试过把UART的中断优先级调到1,但是仍然会错误。现在还是优先级导致的错误吗?还是说还有其他因素会导致错误呢?这边用的是UART1和CAN0。

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

                  这个错误只在UART接收时才会出现,发送出现这个错误应该是其他问题导致的。另外,检查下有没有关全局中断的操作。

                  guangnanG 1 条回复 最后回复
                  0
                  • guangnanG 离线
                    guangnanG 离线
                    guangnan
                    在 回复了 Frank 最后由 编辑
                    #9

                    Frank 我的板子上用了UART转CAN的芯片,会把发送出去的数据回环到接收上,所以接收也是打开了的

                    1 条回复 最后回复
                    0
                    • jiankang_wangJ jiankang_wang 在 中 引用了 这个主题
                    • jiankang_wangJ jiankang_wang 在 中 引用了 这个主题
                    • jiankang_wangJ jiankang_wang 在 中 引用了 这个主题
                    • jiankang_wangJ jiankang_wang 在 中 引用了 这个主题

                  • 云途开发生态介绍

                    快速上手云途开发生态

                  • 云途论坛规则/Yuntu Forum Rules

                    发帖前请查看

                  • YT CONFIG TOOL调查问卷

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

                  • can
                    20
                    demo
                    20
                    uds
                    13
                    lin stack
                    10
                    md14
                    6
                    fbl
                    5
                    yt-link
                    5
                    adc模块
                    4
                    Online Users
                    limanjiangL
                    limanjiang
                    YQHY
                    YQH
                    z123456111Z
                    z123456111
                    FrankieF
                    Frankie
                    frankieqqF
                    frankieqq
                    ColinC
                    Colin
                    AlexzA
                    Alexz
                    HAIYANGH
                    HAIYANG
                    SelinhuangS
                    Selinhuang
                    PedroCaoP
                    PedroCao
                    majorM
                    major
                    车友车行车
                    车友车行
                    zhaodong1Z
                    zhaodong1
                    jinyiJ
                    jinyi
                    yt0503Y
                    yt0503
                    runR
                    run
                    DerrickD
                    Derrick
                    • 登录

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