
每次复位后发现接收的第一个字节总是丢失,但后面的缺没问题。例如发送数据123,接收的缓冲数据长度是2 ,第一个数是2而不是1,如下图。后续再发就没有问题,如下图 void LPUART1_IRQHandler(void) { / USER CODE BEGIN LPUART1_IRQn 0 / / USER CODE BEGIN USART1_IRQn 0 / / USER CODE END USART1_IRQn 1 / / USER CODE END LPUART1_IRQn 0 / HAL_UART_IRQHandler(&hlpuart1); / USER CODE BEGIN LPUART1_IRQn 1 / if(rx_len>0)// { __HAL_UART_ENABLE_IT(&hlpuart1,UART_IT_IDLE);//使能空闲中断 if(__HAL_UART_GET_FLAG(&hlpuart1, UART_FLAG_IDLE) != RESET) //判断已经接受到一字节数据后的空闲中断 { LPUART_IDLECallBack(&hlpuart1); }
/ USER CODE END LPUART1_IRQn 1 / } void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) { if(huart->Instance==LPUART1) {
} } void LPUART_IDLECallBack(UART_HandleTypeDef *huart) { if(huart->Instance==LPUART1) { __HAL_UART_CLEAR_IDLEFLAG(&hlpuart1);//清除空闲中断标志位,防止一直进入空闲中断影响后续数据接收 __HAL_UART_DISABLE_IT(&hlpuart1,UART_IT_IDLE); HAL_UART_Transmit(&hlpuart1, (uint8_t *)DataBuff, rx_len, 300); test1=rx_len; test=DataBuff[0]; rx_len=0; } } |
STM32L431内部温度AD值不随温度变化
STM32L设置CAN一直卡在HAL_CAN_START(),上拉两个引脚依然卡在这里
使用CubeMX能配置STM32L4XX芯片的低功耗模式吗?
motor profiler 链接nucleo 476rg时提示如图所示的通信错误,此时未连接IHM08M1,电脑上有476RG产生的串口,STLINK,U盘标识
STM32L476 使用Quad spi 4线制访问MX25L25645 失败
小白求助!STM32L476使用VREF、VBAT采集模块电压,计算出的VBAT值偏大
各位大佬们多提提宝贵建议定位根本原因,跪谢。STM32L452 在未知情况下打开了读保护RDP?MCU无法运行,只有解除读保护后重新烧录固件
嘉立创和淘宝买的STM32L496芯片丝印不一样,能告诉我这两个丝印有什么区别吗?
STM32L433VCT6 进入STOP模式2之后,功耗依然和正常运行模式没有差别,请教大神
ADC差分采样
如果不使用空闲中断是否正常