关于STM32串口使用DMA接收时发生ORE(过载错误)的原因分析 您所在的位置:网站首页 normannore 关于STM32串口使用DMA接收时发生ORE(过载错误)的原因分析

关于STM32串口使用DMA接收时发生ORE(过载错误)的原因分析

#关于STM32串口使用DMA接收时发生ORE(过载错误)的原因分析| 来源: 网络整理| 查看: 265

        当使用串口接收到一帧数据,超时完成,关闭接收DMA,此时串口还是激活的,若此时串口来数据,无法触发DMA传输,此时产生上溢错误(ORE),由于串口数据寄存器里的数据不能及时转移走,后面来的数据就进不来。一旦出现这种错误后,就不会再触发DMA请求,即使再开启DMA也不行。要恢复正常的话就只有Deinit后再重新初始化串口,或者使用read接口直接将数据寄存器中的数据读走后,后面的数据才能正常进入,从而正常产生DMA请求,这个DMA请求是指硬件请求。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有