|
使用DMA+IDLE HAL库方式接收串口不等长数据 接收到的所有数据均正常 但是收到15个字节的数据后 一执行清除IDLE标志位 (__HAL_UART_CLEAR_IDLEFLAG(&huart1); )就进入HardFault_Handler错误中断,但是收到<15个字节的数据都是正常的,我每次使用dma方式接收都是50个字节(HAL_UART_Receive_DMA(&huart1, (uint8_t *)&userUart.userUart1.ReciveBuff, 50);) 我查了些资料 通过R13寄存器里面存的地址找出来最后一条执行的程序 是__HAL_UART_CLEAR_IDLEFLAG(&huart1); 执行完这一条后就进入错误中断了
|
STM32C542RC开发板启用PWM后对串口通讯造成影响
说说我今天使用CUBEMX2的感受
L9663驱动开发
STM32H5F/E 相比 STM32F4 系列最大的优势是什么?
完成了STM32C542RC开发板的串口通讯实验的视频
终于找到了STM32C542RC开发板的官方实例
STM32C542RC开发板的串口DMA发送实验出错(已解决)
使用我自己写的 IAP 跳转到 FLASH 应用程序时,串口上出现无关字节
STM32G071C8的ADC问题,测量6路交流信号,端口使用PA2-PA7,信号来自电流互感器次级用20欧电阻转为电压信号,并联T4,通过1K,104滤波后到ADC引脚,个别芯片出现PA3结果是固定值,即使直接把引脚对地短短接,结果也是2000多个数,可能是什么原因
STM32L562DK探索板——串口通讯重定向出错
微信公众号
手机版
理论上分析,可能是接收的数据长度超出导致,检查一下userUart.userUart1.ReciveBuff的定义,是不是大于50。
我把__HAL_UART_CLEAR_IDLEFLAG(&huart1);清除标志位去掉 还是不可以 接收13个字节正常 接收15个字节直接进入错误中断了
[md]我同时开启了六个串口的DMA 每一个DMA接收都是50个字节 我发现我六个串口每一个DMA接收是40的时候整个程序就正常了 正常跑了两边程序又这样进错误中断了 我再改小dma每次接收的字节也没用额
另外,注意内存是否越界了。