我有一个关于 TI 的 MSP430 启动板(1.5 和 MSP430g2553)的问题。
如果我使用以下 hello 工作代码对 mcu 进行编程,则在调试模式下使用 gdb 读取精细值时会遇到一些问题。
#include <msp430g2553.h>
**const int titi = 3;//Global variable**
int main(){
WDTCTL = WDTPW + WDTHOLD;
P1DIR = 0x41;
**int tata = 0x1;//first local variable**
while(1){
P1OUT = 0x41;
**int toto = 10;//Second local variable**
__delay_cycles(99999);
P1OUT=~0x41;
int tyty = 20;
__delay_cycles(99999);
}
return 0;
}
- gcc 用于通过 mcu 下载代码:$ make prog v=main.c
- $ mspdebug rf2500 gdb和 msp430-gdb main.elf
- 目标远程本地主机:2000
LED 正在闪烁。几个 tiem 后我停止执行并询问局部变量: (gdb) info locals toto = 1 tyty = 10 tata = -577
关于全局变量titi的信息没有问题。toto和tyty是出现在我的代码中的值,但这是tata的不同值。为什么 ?
不要认为这是gdb的错误......
此致,
通用汽车