PC端通过串口发送给stm32的数据并保存保存到数组中,但是数组不能接收到数据并保存后,退出中断时数组自动清零是为什么,数组是定义为全局变量的
时间: 2024-02-26 19:51:47 浏览: 85
可能是因为中断函数访问了数组的指针,但是指针没有初始化导致的。在使用数组前需要确保指针已经被正确初始化,否则数组地址可能会被错误地访问到其他内存地址。另外,如果在中断处理函数中对全局变量进行修改,需要使用关键字volatile来修饰变量,告诉编译器这个变量是不稳定的,需要每次都从内存中读取数据,而不是使用寄存器中的缓存数据。
阅读全文