关于STM32中断memcpy函数复制错误的解决办法

今天遇到个特别奇怪的问题,想着分享出来,供大家参考一下,也算是给自己做个笔记。

我在使用串口接收数据时,发现接收到的数据,要么不对,要么就没有。花了很长的时间找问题。浪费时间不说,其中的辛苦不言而喻。总之最后是找到memcpy函数复制字节错了,本来接收到的数据(rebuf[])是没有错的关于STM32中断memcpy函数复制错误的解决办法_第1张图片rebuf是接收到的正确的数据,但是经过memcpy函数复制后,如下图关于STM32中断memcpy函数复制错误的解决办法_第2张图片OpenMV_Rx_BUF是复制以后的数组,可以看到只有前两个正确。找到问题以后,我心里也是一万个草泥马。

 

接下来就是这个问题该怎么解决呢?

 

后来百度了一下,有些人说,前面加延时函数就好了,亲测,我的函数没用。

再后来,干脆不用memcpy函数了,关于STM32中断memcpy函数复制错误的解决办法_第3张图片

直接改成单独赋值就好了。

你妹的,都是泪啊

你可能感兴趣的:(memcpy,中断接收错误)