我正在使用 Jack Ganssles debouce tutorial中的一些代码,并尝试使用 Texas Instruments Code Composer Studio v5.5(基于 Eclipse)让它在 MSP430 上工作。我遇到了整数数组的问题,我在其中使用了一个名为 MAXCHECKS 的定义值。
#define MAXCHECKS 8;
int Debounced_state; // Debounced state of the switches
int state[MAXCHECKS]; // Array that maintains bounce status
int Index = 0; // Pointer into state
这一行int state[MAXCHECKS]; 抛出 2 个错误 #17 预期 "]" 和 #171 预期声明。如果我将 MAXCHECKS 更改为 8 或 10 的值,则代码构建和加载正常,尽管它不会对开关进行去抖动,但这是我可以处理的事情,因为尚未设置计时器。
定义和变量使用的代码如下
int i,j;
state[Index] = (P1IN & 0x0088);
++Index;
j = 0xFF;
for(i=0; i<MAXCHECKS; i++)
{
j &= state[i];
}
Debounced_state = j;
if (Index>=MAXCHECKS)
{
Index = 0;
}
我认为这一定是我缺少的东西,但此时不确定因此问题?