STM32H7串口查询方式接收串口接收溢出导致死机问题

2023-10-26

串口溢出后,因为接收移位寄存器不会把接收到的数据放到接收寄存器中,则RXNE/RXFNE不会再置位,不能再接收,表现为串口死机
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

__STATIC_INLINE uint32_t LL_USART_IsActiveFlag_RXNE_RXFNE(USART_TypeDef *USARTx)
{
  return ((READ_BIT(USARTx->ISR, USART_ISR_RXNE_RXFNE) == (USART_ISR_RXNE_RXFNE)) ? 1UL : 0UL);
}

在串口初始化之后,再加上以下代码,关闭串口溢出,解决问题

__HAL_UART_DISABLE(huart);
CLEAR_BIT(huart->Instance->CR3, USART_CR3_OVRDIS);
__HAL_UART_ENABLE(huart);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

STM32H7串口查询方式接收串口接收溢出导致死机问题 的相关文章

  • 基于STM32HAL库编写状态机模式

    概述 本篇文章介绍如何使用STM32HAL库 以马达转动的状态示例 来说明 项目中使用的状态模式 参考该文章链接 比较懒 基本都是照搬框架 这种写法确实在项目后续新增功能时 方便不少 还是值得学习 这样的思路 加油 技术同仁们 硬件 STM
  • STM32H7串口查询方式接收串口接收溢出导致死机问题

    串口溢出后 因为接收移位寄存器不会把接收到的数据放到接收寄存器中 则RXNE RXFNE不会再置位 不能再接收 表现为串口死机 STATIC INLINE uint32 t LL USART IsActiveFlag RXNE RXFNE
  • 【STM32学习】搭建一个简单的 keil5 工程

    一 安装 pack 支持包 pack是支持包文件 当你的板子连接到电脑时 keil5 怎么知道你的板子是哪个型号的 这就需要用到 pack 文件了 Keil 官方下载pack文件的地址 download device pack 我这里使用的
  • STM32HAL库-移植Unity针对微控制器编写测试框架

    概述 本篇文章介绍如何使用STM32HAL库 移植Unity 是一个为C语言构建的单元测试框架 侧重于使用嵌入式工具链 GitHub https github com ThrowTheSwitch Unity 硬件 STM32F103CBT
  • STM32学习之温湿度检测——DHT11

    一准备材料 1 参考资料 STM32不完全手册 库函数版本 STM32F103xCDE DS CH V5 pdf STM32中文参考手册 V10 pdf DHT11 DHT11 下载链接 https pdf1 alldatasheetcn
  • STM32-TIM4-定时器中断

    include project h include timer h TIM4 Init 2000 72 定时2ms 定时器中断的定时时间设定 定时器只需要配置时钟 TIM和NVIC即可 void TIM4 Init u16 period u
  • STM32L4-RS485+DMA中断通信实验+字节丢失处理[寄存器版]

    基本设置 MCU采用 STM32L431RCT6 485芯片采用 ADM3485 采用串口经由RS485 使用DMA向串口调试助手传送数据 相关配置与前文基本相同 STM32L4 双路RS485自收发通信实验 寄存器版 staypt的博客
  • 【STM32 学习】电源解析(VCC、VDD、VREF+、VBAT)

    VCC 电源电压 GND 电源供电负电压 通常接地 VDD 模块工作正电压 VSS 模块工作负电压 VREF ADC参考正电压 VREF ADC参考负电压 VBAT 电池或其他电源供电 VDDA 模拟供电正电压 VSSA 模拟供电负电压 一
  • MQTT服务器搭建及客户端通信实例

    MQTT服务器 EMQX v3 客户端1 PC Windows10操作系统 客户端2 IOT BOARD RT Thread与正点原子联合开发的STM32L475核心芯片的开发板 1 搭建服务器 在EMQ官网https www emqx i
  • MCU学习笔记_PWR电源管理系统

    MCU学习笔记 电源管理系统 1 STM32电源监控器概述 2 STM32电源 3 HAL库配置PVD实例 1 STM32电源监控器概述 原因 保持系统正常运行 实现特定条件下的低功耗模式 上电复位 POR 掉电复位 PDR 上电复位是指上
  • STM32HAL 移植 cJSON开源库 (裸机开发神器)

    目录 概述 一 使用方法 二 STM32CubeMx配置 三 Examples 四 运行结果 五 总结 概述 本篇文章介绍如何使用STM32引用 cJSON开源库 JSON格式在互联网数据交互时常用的一个格式 现嵌入式物联网方向 经常使用到
  • stm32cubemx使用mpu6050

    文章目录 接线图 代码 常见问题 接线图 一般情况下 大家买的 mpu 6050 有两种 1 就是 单个的 mpu6050 芯片 2 就是 mpu6050 模块 如果 是第一种情况的话 大家可以参考 下图所示 如果是第二种情况的话 一般来说
  • STM32-ADC电压采样实验(寄存器版)

    STM32F10X系列支持三路ADC 其ADC通道及对应IO口如下表所示 其能接受的电压输入范围一般为0 3 3V VREF VIN VREF 因此 如果需要测量超出0 3 3v量程范围的电压数据 需要在外围硬件增加分压电阻 将电路转换到0
  • #STM32 GPIO编程详解

    硬件环境 stm32f407zet6 软件环境 mdk5 1 GPIO概述 GPIO 翻译为通用输入输出 也就是软件可编程引脚 也就是MCU通过控制GPIO来完成一系列的功能 GPIO属于引脚 但引脚还包含电源 晶振 下载 boot 复位等
  • 001--STM32使用--TIM8的PWM输出

    void TIM8 PWM Init u16 arr u16 psc GPIO InitTypeDef GPIO InitStructure TIM TimeBaseInitTypeDef TIM TimeBaseStructure TIM
  • STM32HAL库-移植mbedtls开源库示例(一)

    目录 概述 一 使用方法 二 STM32CubeMx配置 三 Examples 四 运行结果 五 总结 概述 本篇文章介绍如何使用STM32HAL库 移植mbedtls开源库支持mqtt证书加密示例 GitHub https github
  • STM32 ADC 多通道16路电压采集

    下面介绍一种利用STM32单片机制作的16路多通道ADC采集电路图和源程序 采用USB接口与电脑连接 实则USB转串口方式 所以上位机可以用串口作为接口 电路图中利用LM324作为电压跟随器 起到保护单片机引脚的作用 直接在电脑USB取点
  • 复用推挽输出与推挽输出区别

    GPIO InitStructure GPIO Mode GPIO Mode AF PP 复用推挽输出 GPIO SetBits GPIOE GPIO Pin 5 如果LED1是上拉的话 这时候它被点亮了 GPIO Mode AF PP g
  • Stm32待机模式的进入与唤醒

    1 基础介绍 1 1 单片机的 低功耗模式 像是手机的待机模式 不同于正常运行模式 处于一种省电省资源的状态 1 2 在运行情况下 HCLK为cpu提供时钟 cortex m3内核执行程序的代码 如果处于中断事件的等待时 可以进入低功耗模式
  • STM32HAL 移植MultiButton小巧简单事件驱动型按键驱动框架(裸机版本)

    目录 概述 一 使用方法 特性 按键事件 Examples 二 STM32CubeMx配置 三 Examples 四 运行结果 五 总结 概述 本篇文章介绍如何使用STM32移植 MultiButton开源框架 引用官网简述如下 Multi

随机推荐