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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1M系列
  4. 串口中断接收异常

串口中断接收异常

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

    d11e04f1-ac7c-4b35-aad3-65e9157ebf3e-image.png f0141e97-a8c9-4430-b98c-b0349f295b14-image.png
    需求单字节接收,在任务中接收1字节后进入中断,将接收到的数据放入队列里继续开启下次接收
    问题:同时发送多个字节的数据,只进入1次中断且只能接受1个字节,剩余字节不触发中断,不知道是不是同时发送没有清楚中断标志位导致。有无相关案例

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

      回调函数里面启用连续接收换成 LINFlexD_UART_DRV_SetRxBuffer 函数试一下

      image.png

      AlexzA 1 条回复 最后回复
      0
      • AlexzA 离线
        AlexzA 离线
        Alexz
        回复了quanfeng 最后由 编辑
        #3

        quanfeng 在 串口中断接收异常 中说:

        LINFlexD_UART_DRV_SetRxBuffer

        尝试了一下不行,串口只能接收1次,且只能接收1字节

        quanfengQ 1 条回复 最后回复
        0
        • quanfengQ 离线
          quanfengQ 离线
          quanfeng YunTu
          回复了Alexz 最后由 编辑
          #4

          Alexz 接收到 1 个字节后,看一下 UARTCR 寄存器的 RxEn 的值是多少,同时发送多个字节的数据后,看一下 UARTCR 寄存器的 RxEn 的值是多少。如果 UARTCR -> RxEn 为 0,那就是接收没开启来

          AlexzA 1 条回复 最后回复
          0
          • AlexzA 离线
            AlexzA 离线
            Alexz
            回复了quanfeng 最后由 编辑
            #5

            quanfeng 08233274-d60d-49e7-9c65-55168d229e30-image.png c9a64014-8d50-47f7-bc17-b711ac61c9b4-image.png
            LINFlexD_UART_DRV_SetRxBuffer这个函数接收完1字节UARTCR -> RxEn 为 0
            LINFlexD_UART_DRV_ReceiveData这个函数UARTCR -> RxEn 为 1但是不能连续接收

            quanfengQ 1 条回复 最后回复
            0
            • quanfengQ 离线
              quanfengQ 离线
              quanfeng YunTu
              回复了Alexz 最后由 编辑
              #6

              Alexz 把串口中断回调函数里的打印函数注释后再试一下

              1 条回复 最后回复
              0
              • quanfengQ 离线
                quanfengQ 离线
                quanfeng YunTu
                编写于 最后由 编辑
                #7

                您用的具体芯片型号是哪一颗呀,MD14、MD24 or ME05

                AlexzA 1 条回复 最后回复
                0
                • AlexzA 离线
                  AlexzA 离线
                  Alexz
                  回复了quanfeng 最后由 编辑
                  #8

                  quanfeng MD14

                  quanfengQ 1 条回复 最后回复
                  0
                  • quanfengQ 离线
                    quanfengQ 离线
                    quanfeng YunTu
                    回复了Alexz 最后由 quanfeng 编辑
                    #9

                    Alexz 回调函数里这个 case 里调用 UART_DRV_SetRxBuffer
                    if (event == UART_EVENT_RX_FULL )
                    {
                    UART_DRV_SetRxBuffer(UART2_DEBUG_INSTANCE, &debug_rx_byte, 1);
                    }

                    1 条回复 最后回复
                    0
                    • SSEZKXS 离线
                      SSEZKXS 离线
                      SSEZKX YunTu
                      编写于 最后由 SSEZKX 编辑
                      #10

                      中断事件判断条件的问题,参考demo
                      image.png

                      AlexzA 1 条回复 最后回复
                      0
                      • AlexzA 离线
                        AlexzA 离线
                        Alexz
                        编写于 最后由 编辑
                        #11
                        此主題已被删除!
                        1 条回复 最后回复
                        0
                        • AlexzA 离线
                          AlexzA 离线
                          Alexz
                          回复了SSEZKX 最后由 编辑
                          #12

                          SSEZKX image.png
                          image.png
                          按照demo修改,UART_DRV_SetRxBuffer不起作用仍然只进一次中断

                          1 条回复 最后回复
                          0
                          • SSEZKXS 离线
                            SSEZKXS 离线
                            SSEZKX YunTu
                            编写于 最后由 编辑
                            #13

                            把串口中断回调函数里的打印函数注释掉,再打断点试一下

                            AlexzA 2 条回复 最后回复
                            0
                            • AlexzA 离线
                              AlexzA 离线
                              Alexz
                              回复了SSEZKX 最后由 编辑
                              #14

                              SSEZKX 不行

                              1 条回复 最后回复
                              0
                              • AlexzA 离线
                                AlexzA 离线
                                Alexz
                                回复了SSEZKX 最后由 编辑
                                #15

                                SSEZKX 3a75f1a7-ef1f-46d5-aed0-66a4353c9c7c-image.png 接收完一次之后,RxEn就清零了,定位不到在哪里被清零了

                                1 条回复 最后回复
                                0
                                • SSEZKXS 离线
                                  SSEZKXS 离线
                                  SSEZKX YunTu
                                  编写于 最后由 编辑
                                  #16
                                  1. 看下你现在初始化uart的代码是什么样的,
                                  2. image.png
                                    你这条语句会调用几次
                                  AlexzA 1 条回复 最后回复
                                  0
                                  • AlexzA 离线
                                    AlexzA 离线
                                    Alexz
                                    回复了SSEZKX 最后由 编辑
                                    #17

                                    SSEZKX 1次

                                    1 条回复 最后回复
                                    0
                                    • SSEZKXS 离线
                                      SSEZKXS 离线
                                      SSEZKX YunTu
                                      编写于 最后由 编辑
                                      #18

                                      LINFlexD_UART_DRV_InstallErrorCallback
                                      注册错误中断,打断点看下有没有产生什么错误

                                      AlexzA 2 条回复 最后回复
                                      0
                                      • AlexzA 离线
                                        AlexzA 离线
                                        Alexz
                                        回复了SSEZKX 最后由 编辑
                                        #19
                                        此主題已被删除!
                                        1 条回复 最后回复
                                        0
                                        • AlexzA 离线
                                          AlexzA 离线
                                          Alexz
                                          回复了SSEZKX 最后由 编辑
                                          #20

                                          SSEZKX LINFlexD_UART_DRV_InstallErrorCallback注册errorllback没有进过

                                          1 条回复 最后回复
                                          0

                                        • 云途开发生态介绍

                                          快速上手云途开发生态

                                        • 云途论坛规则/Yuntu Forum Rules

                                          发帖前请查看

                                        • YT CONFIG TOOL调查问卷

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

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

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