📄 bttest.inc
字号:
pMapDisplay->pTextLines[TEXTLINE_4] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_5] = (UBYTE*)TXT_SELECT_SENSOR;
pMapDisplay->pTextLines[TEXTLINE_6] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_7] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_8] = (UBYTE*)TXT_SENSORS;
pMapDisplay->UpdateMask |= TEXTLINE_BITS;
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
InputValues[Count] = 0x7FFF;
strcpy((char*)TxtBuffer[Count]," ");
}
State = TSTPRG_SELECT_SENSOR;
}
break;
case TSTPRG_SELECT_SENSOR :
{
switch (cUiReadButtons())
{
case BUTTON_LEFT :
{
State = TSTPRG_TOUCH_SENSOR_INIT;
}
break;
case BUTTON_ENTER :
{
pMapDisplay->pTextLines[TEXTLINE_5] = (UBYTE*)TXT_SELECT_TYPE;
pMapDisplay->pTextLines[TEXTLINE_8] = (UBYTE*)TXT_SOUND_SENSORS;
pMapDisplay->UpdateMask |= TEXTLINE_BITS;
State = TSTPRG_SOUND_SENSOR_SELECT;
}
break;
case BUTTON_RIGHT :
{
pMapDisplay->pTextLines[TEXTLINE_5] = (UBYTE*)TXT_SELECT_TYPE;
pMapDisplay->pTextLines[TEXTLINE_8] = (UBYTE*)TXT_LIGHT_SENSORS;
pMapDisplay->UpdateMask |= TEXTLINE_BITS;
State = TSTPRG_LIGHT_SENSOR_SELECT;
}
break;
case BUTTON_EXIT :
{
State = TSTPRG_INIT;
}
break;
}
}
break;
case TSTPRG_TOUCH_SENSOR_INIT :
{
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
pMapDisplay->pTextLines[TEXTLINE_3 + Count] = TxtBuffer[Count];
}
pMapDisplay->pTextLines[TEXTLINE_1] = (UBYTE*)TXT_SENSOR_TOUCH;
pMapDisplay->pTextLines[TEXTLINE_8] = (UBYTE*)TXT_SUBTEST_STOP;
pMapDisplay->UpdateMask |= TEXTLINE_BITS;
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
pMapInput->Inputs[Count].SensorType = SWITCH;
}
State = TSTPRG_TOUCH_SENSOR;
}
break;
case TSTPRG_TOUCH_SENSOR :
{
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
if (InputValues[Count] != pMapInput->Inputs[Count].ADRaw)
{
InputValues[Count] = pMapInput->Inputs[Count].ADRaw;
sprintf((char*)TxtBuffer[Count]," Input %u = %4u ",(UWORD)Count + 1,(UWORD)InputValues[Count]);
pMapDisplay->UpdateMask |= TEXTLINE_BIT(TEXTLINE_3 + Count);
}
}
if (cUiReadButtons() != BUTTON_NONE)
{
State = TSTPRG_SKIP_SENSOR;
}
}
break;
case TSTPRG_SOUND_SENSOR_SELECT :
{
switch (cUiReadButtons())
{
case BUTTON_LEFT :
{
pMapDisplay->pTextLines[TEXTLINE_1] = (UBYTE*)TXT_SENSOR_SOUND_DB;
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
pMapInput->Inputs[Count].SensorType = SOUND_DB;
}
State = TSTPRG_SOUND_SENSOR_INIT;
}
break;
case BUTTON_ENTER :
{
State = TSTPRG_SKIP_SENSOR;
}
break;
case BUTTON_EXIT :
{
State = TSTPRG_SKIP_SENSOR;
}
break;
case BUTTON_RIGHT :
{
pMapDisplay->pTextLines[TEXTLINE_1] = (UBYTE*)TXT_SENSOR_SOUND_DBA;
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
pMapInput->Inputs[Count].SensorType = SOUND_DBA;
}
State = TSTPRG_SOUND_SENSOR_INIT;
}
break;
}
}
break;
case TSTPRG_SOUND_SENSOR_INIT :
{
VolumeSave = pMapSound->Volume;
pMapSound->Volume = MAX_VOLUME;
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
pMapDisplay->pTextLines[TEXTLINE_3 + Count] = TxtBuffer[Count];
}
pMapDisplay->pTextLines[TEXTLINE_8] = (UBYTE*)TXT_SOUND_STOP;
pMapDisplay->UpdateMask |= TEXTLINE_BITS;
State = TSTPRG_SOUND_SENSOR;
}
break;
case TSTPRG_SOUND_SENSOR :
{
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
if (InputValues[Count] != pMapInput->Inputs[Count].ADRaw)
{
InputValues[Count] = pMapInput->Inputs[Count].ADRaw;
sprintf((char*)TxtBuffer[Count]," Input %u = %4u ",(UWORD)Count + 1,(UWORD)InputValues[Count]);
pMapDisplay->UpdateMask |= TEXTLINE_BIT(TEXTLINE_3 + Count);
}
}
switch (cUiReadButtons())
{
case BUTTON_LEFT :
{
pMapSound->Freq = 440;
pMapSound->Duration = 2000;
pMapSound->Mode = SOUND_TONE;
pMapSound->Flags |= SOUND_UPDATE;
}
break;
case BUTTON_ENTER :
{
pMapSound->State = SOUND_STOP;
pMapSound->Volume = VolumeSave;
State = TSTPRG_SKIP_SENSOR;
}
break;
case BUTTON_EXIT :
{
pMapSound->State = SOUND_STOP;
pMapSound->Volume = VolumeSave;
State = TSTPRG_SKIP_SENSOR;
}
break;
case BUTTON_RIGHT :
{
pMapSound->Freq = 4000;
pMapSound->Duration = 2000;
pMapSound->Mode = SOUND_TONE;
pMapSound->Flags |= SOUND_UPDATE;
}
break;
}
}
break;
case TSTPRG_LIGHT_SENSOR_SELECT :
{
switch (cUiReadButtons())
{
case BUTTON_LEFT :
{
pMapDisplay->pTextLines[TEXTLINE_1] = (UBYTE*)TXT_SENSOR_LIGHT_PASIVE;
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
pMapInput->Inputs[Count].SensorType = LIGHT_INACTIVE;
}
State = TSTPRG_LIGHT_SENSOR_INIT;
}
break;
case BUTTON_ENTER :
{
State = TSTPRG_SKIP_SENSOR;
}
break;
case BUTTON_EXIT :
{
State = TSTPRG_SKIP_SENSOR;
}
break;
case BUTTON_RIGHT :
{
pMapDisplay->pTextLines[TEXTLINE_1] = (UBYTE*)TXT_SENSOR_LIGHT_ACTIVE;
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
pMapInput->Inputs[Count].SensorType = LIGHT_ACTIVE;
}
State = TSTPRG_LIGHT_SENSOR_INIT;
}
break;
}
}
break;
case TSTPRG_LIGHT_SENSOR_INIT :
{
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
pMapDisplay->pTextLines[TEXTLINE_3 + Count] = TxtBuffer[Count];
}
pMapDisplay->pTextLines[TEXTLINE_8] = (UBYTE*)TXT_SUBTEST_STOP;
pMapDisplay->UpdateMask |= TEXTLINE_BITS;
State = TSTPRG_LIGHT_SENSOR;
}
break;
case TSTPRG_LIGHT_SENSOR :
{
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
if (InputValues[Count] != pMapInput->Inputs[Count].ADRaw)
{
InputValues[Count] = pMapInput->Inputs[Count].ADRaw;
sprintf((char*)TxtBuffer[Count]," Input %u = %4u ",(UWORD)Count + 1,(UWORD)InputValues[Count]);
pMapDisplay->UpdateMask |= TEXTLINE_BIT(TEXTLINE_3 + Count);
}
}
if (cUiReadButtons() != BUTTON_NONE)
{
State = TSTPRG_SKIP_SENSOR;
}
}
break;
case TSTPRG_SKIP_SENSOR :
{
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
pMapInput->Inputs[Count].SensorType = NO_SENSOR;
}
State = TSTPRG_SENSOR_INIT;
}
break;
case TSTPRG_MOTOR_INIT :
{
pMapDisplay->pTextLines[TEXTLINE_1] = (UBYTE*)TXT_MOTOR;
pMapDisplay->pTextLines[TEXTLINE_2] = (UBYTE*)TXT_LINE;
pMapDisplay->pTextLines[TEXTLINE_3] = (UBYTE*)TXT_MOTOR_HEADER;
pMapDisplay->pTextLines[TEXTLINE_4] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_5] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_6] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_7] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_8] = (UBYTE*)TXT_MOTOR_STOP;
for (Count = 0;Count < NO_OF_OUTPUTS;Count++)
{
OutputValues[Count] = 0x7FFF;
TestPrgRunMotor(Count,0);
strcpy((char*)TxtBuffer[Count]," ");
pMapDisplay->pTextLines[TEXTLINE_4 + Count] = TxtBuffer[Count];
}
pMapDisplay->UpdateMask |= TEXTLINE_BITS;
State = TSTPRG_MOTOR;
}
break;
case TSTPRG_MOTOR :
{
for (Count = 0;Count < NO_OF_OUTPUTS;Count++)
{
if (OutputValues[Count] != (SWORD)TestPrgReadMotor(Count))
{
OutputValues[Count] = (SWORD)TestPrgReadMotor(Count);
sprintf((char*)TxtBuffer[Count]," %c %-4d %4d",(char)Count + 'A',(SWORD)pMapOutPut->Outputs[Count].Speed,OutputValues[Count]);
pMapDisplay->UpdateMask |= TEXTLINE_BIT(TEXTLINE_4 + Count);
}
}
switch (cUiReadButtons())
{
case BUTTON_LEFT :
{
for (Count = 0;Count < NO_OF_OUTPUTS;Count++)
{
OutputValues[Count] = 0x7FFF;
TestPrgRunMotor(Count,-50);
}
}
break;
case BUTTON_ENTER :
{
for (Count = 0;Count < NO_OF_OUTPUTS;Count++)
{
OutputValues[Count] = 0x7FFF;
TestPrgRunMotor(Count,0);
}
}
break;
case BUTTON_EXIT :
{
State = TSTPRG_SKIP_MOTOR;
}
break;
case BUTTON_RIGHT :
{
for (Count = 0;Count < NO_OF_OUTPUTS;Count++)
{
OutputValues[Count] = 0x7FFF;
TestPrgRunMotor(Count,50);
}
}
break;
}
}
break;
case TSTPRG_SKIP_MOTOR :
{
for (Count = 0;Count < NO_OF_OUTPUTS;Count++)
{
TestPrgFloatMotor(Count);
}
State = TSTPRG_INIT;
}
break;
case TSTPRG_RCX_INIT :
{
pMapDisplay->pTextLines[TEXTLINE_1] = (UBYTE*)TXT_RCX;
pMapDisplay->pTextLines[TEXTLINE_2] = (UBYTE*)TXT_LINE;
pMapDisplay->pTextLines[TEXTLINE_3] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_4] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_5] = (UBYTE*)TXT_SELECT;
pMapDisplay->pTextLines[TEXTLINE_6] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_7] = (UBYTE*)TXT_EMPTY;
pMapDisplay->pTextLines[TEXTLINE_8] = (UBYTE*)TXT_RCX_STOP;
pMapDisplay->UpdateMask |= TEXTLINE_BITS;
State = TSTPRG_RCX_SELECT;
}
break;
case TSTPRG_RCX_SELECT :
{
switch (cUiReadButtons())
{
case BUTTON_LEFT :
{
pMapDisplay->pTextLines[TEXTLINE_5] = (UBYTE*)TXT_SELECT_TYPE;
pMapDisplay->pTextLines[TEXTLINE_8] = (UBYTE*)TXT_RCX_INPUT_SELECT;
pMapDisplay->UpdateMask |= TEXTLINE_BITS;
for (Count = 0;Count < NO_OF_INPUTS;Count++)
{
InputValues[Count] = 0x7FFF;
strcpy((char*)TxtBuffer[Count]," ");
}
State = TSTPRG_RCX_INPUT_SELECT;
}
break;
case BUTTON_ENTER :
{
State = TSTPRG_RCX_DISPLAY_INIT;
}
break;
case BUTTON_RIGHT :
{
State = TSTPRG_RCX_MOTOR_INIT;
}
break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -