关于数组传递值的问题
大家好,我用STM32F130VET6在keil下做通讯的接收程序,我定义数组,把接收到的一帧数据存到一个数组里面,然后显示到LED上,数据基本正常的能显示,但是我考虑到一个数组要在中断服务程序中用,我就把接收好的一帧数据由当前的数组传到新定义的数组中,可结果发现,传过去的数值只有前几个字节是正确的,后面全变成了0x00(我用显示和通过另外一个串口发到PC机上都验证过),数组之间传值的办法我用过循环传每一个元素,用过一个用指针一个应用数组元素,用过两个指针,还用过memcpy(bufferb3,buffer3,sizeof(buffer3)); 可是结果都是传递的前几个字节正确,后面就错误了,我还降级了优化,没能解决问题,请哪位遇到过或是有思路的朋友指点一下,谢谢!RE:关于数组传递值的问题
发生该问题的原因sizeof(buffer3),你可以仿真到这里,看看这个值是多少,我认为这个时候,你需要使用的是一个串口接收字节计数器来实现。sizeof(buffer3)得到的值应该buffer3的大小,这个时候把buffer3所有数据都复制到buffer把中了,所以你看到后面是全0。
页:
[1]