我的程序经常会跑飞到0x045C02处 我用的单片机是MSP430F5438A,程序段有效地址到0x45BFF处,但是程序跑一会后系统就会死机,这时候查看汇编,会发现PC指针指向0x045C02这个非法地址。现在不知道问题出在哪儿,向各位请教了。
Xutong Han2:
程序有没有定义大数组放在RAM中,或者局部的变量是否超过的堆栈的容量,如果堆栈溢出会导致程序跑飞~
Richard Ma:
能想到两个原因,楼主检查检查:
1. 堆栈溢出
2. 数组写越界
我的程序经常会跑飞到0x045C02处 我用的单片机是MSP430F5438A,程序段有效地址到0x45BFF处,但是程序跑一会后系统就会死机,这时候查看汇编,会发现PC指针指向0x045C02这个非法地址。现在不知道问题出在哪儿,向各位请教了。
程序有没有定义大数组放在RAM中,或者局部的变量是否超过的堆栈的容量,如果堆栈溢出会导致程序跑飞~
能想到两个原因,楼主检查检查:
1. 堆栈溢出
2. 数组写越界