|
1、函数: HAL_UARTEx_ReceiveToIdle_DMA(&huart1,usart1_dma_rx.RX_Data,USART_DMA_RX_LEN_MAX); __HAL_UART_DISABLE_IT(&huart1, DMA_IT_HT); 2、发送数据包1:be2803036de1000000000000000001000000000000000200000000000000030000000000000082ed 发送数据包2:be1c010146020100000100015000b400141e011e1e281408000020ed 发送间隔50ms以内; 3、接收到的数据包:be1c01016de1000000000000000001000000000000000200000000000000030000000000000082ed 前4个字节:be1c0101属于发送数据包1的; 剩余其他字节:属于发送数据包2的; 问题困扰很久了,请大家帮忙处理下,急急急!!!!!!!!!! |
STM32H743IIT6驱动外扩SDRAM芯片热启动能成功,冷启动失败
STM32H743IIT6驱动RGB液晶屏显示红,绿,蓝三色显示都偏暗
STM32H757 程序经过SFI加密后,下载到FLASH里的程序是密文吗?
如何解决STM32H7在3V供电下内部LDO启动裕量不足的问题?
为什么STM32H7的DMA第一次启动延时较长?
STM32H7电源问题
STM32 用主从定时器方式实现DSP QEP模块的QCTMR功能,异常
有关STM32H743ZGT6 驱动RTL8201F-VB芯片驱动的问题,有奖寻求帮助
STM32H725内部FLASH读写问题
我在使用STM32H747IGT6的时候,遇到了一个问题;上电前并未短路,上电后电流跳跃至1.6A,且不断增大至1.9A,断开电源后芯片不短路,请问是什么原因?
微信公众号
手机版
file:///C:/Users/Tony-1/AppData/Roaming/LarkShell/sdk_storage/281965e1b5f203c1225065ca6caaacf9/resources/images/Hbl7ez992l.jpg[file:///C:/Users/Tony-1/AppData/Roaming/LarkShell/sdk_storage/281965e1b5f203c1225065ca6caaacf9/resources/images/GcRf0JRCaC.jpg](file:///C:/Users/Tony-1/AppData/Roaming/LarkShell/sdk_storage/281965e1b5f203c1225065ca6caaacf9/resources/images/GcRf0JRCaC.jpg)
file:///C:/Users/Tony-1/AppData/Roaming/LarkShell/sdk_storage/281965e1b5f203c1225065ca6caaacf9/resources/images/ybleU6GAFj.jpg
代码截图
或者用另一个STM32模拟个数据调试一下,看看哪里导致的接收对不上。
空闲帧好像是没有的,感觉是上一帧数据还没有处理完,下一帧数据就把他覆盖了,导致我们拿到的就是两包叠加的数据;
[md]这是程序逻辑问题。
之前的数据没处理完又来新的数据了发生覆盖,想办法接收处理弄快点;发送是否可以放慢点;
接收可以考虑基于DMA半传输完成和传输完成来实现。。
通常串口不会很快,如果怀疑中间没有idle帧,可以将接收的buffer和数量扩大,验证一下是不是都能收到。
[md]已经解决,采用三个buf可接受数据,buf1接收到数据,然后使用buf2接收数据,接受完成在使用buf3接收,buf3接收完成再使用buf1接,这样循环接受下去;接收到的数据buf在任务里处理