switch-controller: add basic functionality to main
This commit is contained in:
parent
0bf20552cf
commit
6155ac7089
@ -50,6 +50,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/DigitalIoPin/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/LiquidCrystal/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.cpp.misc.dialect.1439270310" name="Language standard" superClass="com.crt.advproject.cpp.misc.dialect" useByScannerDiscovery="true" value="com.crt.advproject.misc.dialect.c++11" valueType="enumerated"/>
|
||||
<inputType id="com.crt.advproject.compiler.cpp.input.1836081321" superClass="com.crt.advproject.compiler.cpp.input"/>
|
||||
@ -75,6 +76,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/DigitalIoPin/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/LiquidCrystal/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.c.misc.dialect.1562701315" name="Language standard" superClass="com.crt.advproject.c.misc.dialect" useByScannerDiscovery="true" value="com.crt.advproject.misc.dialect.c11" valueType="enumerated"/>
|
||||
<option id="com.crt.advproject.gcc.hdrlib.1858206733" name="Library headers" superClass="com.crt.advproject.gcc.hdrlib" useByScannerDiscovery="false" value="Newlib" valueType="enumerated"/>
|
||||
@ -93,6 +95,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/DigitalIoPin/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/LiquidCrystal/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.gas.hdrlib.679003420" name="Library headers" superClass="com.crt.advproject.gas.hdrlib" value="Newlib" valueType="enumerated"/>
|
||||
<option id="com.crt.advproject.gas.specs.658181602" name="Specs" superClass="com.crt.advproject.gas.specs" value="com.crt.advproject.gas.specs.newlib" valueType="enumerated"/>
|
||||
@ -157,6 +160,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/DigitalIoPin/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/LiquidCrystal/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.cpp.misc.dialect.637944562" name="Language standard" superClass="com.crt.advproject.cpp.misc.dialect" useByScannerDiscovery="true" value="com.crt.advproject.misc.dialect.c++11" valueType="enumerated"/>
|
||||
<option id="com.crt.advproject.cpp.hdrlib.538882538" name="Library headers" superClass="com.crt.advproject.cpp.hdrlib" useByScannerDiscovery="false" value="Newlib" valueType="enumerated"/>
|
||||
@ -183,6 +187,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/DigitalIoPin/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/LiquidCrystal/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.c.misc.dialect.1049661750" name="Language standard" superClass="com.crt.advproject.c.misc.dialect" useByScannerDiscovery="true" value="com.crt.advproject.misc.dialect.c11" valueType="enumerated"/>
|
||||
<option id="com.crt.advproject.gcc.hdrlib.334400252" name="Library headers" superClass="com.crt.advproject.gcc.hdrlib" useByScannerDiscovery="false" value="Newlib" valueType="enumerated"/>
|
||||
@ -201,6 +206,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/DigitalIoPin/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/LiquidCrystal/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.gas.hdrlib.280079471" name="Library headers" superClass="com.crt.advproject.gas.hdrlib" value="Newlib" valueType="enumerated"/>
|
||||
<option id="com.crt.advproject.gas.specs.284770140" name="Specs" superClass="com.crt.advproject.gas.specs" value="com.crt.advproject.gas.specs.newlib" valueType="enumerated"/>
|
||||
|
||||
1
SwitchController/.gitignore
vendored
Normal file
1
SwitchController/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
/Debug/
|
||||
@ -7,6 +7,7 @@
|
||||
<project>DigitalIoPin</project>
|
||||
<project>Timer</project>
|
||||
<project>StateHandler</project>
|
||||
<project>LiquidCrystal</project>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
|
||||
@ -15,7 +15,6 @@ SwitchController::SwitchController (DigitalIoPin *button, Timer *timer,
|
||||
h = handler;
|
||||
b_state = false;
|
||||
b_mode = button_mode;
|
||||
t->resetCounter ();
|
||||
}
|
||||
|
||||
SwitchController::~SwitchController ()
|
||||
|
||||
@ -46,6 +46,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/I2C/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SwitchController/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.cpp.misc.dialect.1893636131" name="Language standard" superClass="com.crt.advproject.cpp.misc.dialect" useByScannerDiscovery="true" value="com.crt.advproject.misc.dialect.c++11" valueType="enumerated"/>
|
||||
<inputType id="com.crt.advproject.compiler.cpp.input.1024506123" superClass="com.crt.advproject.compiler.cpp.input"/>
|
||||
@ -75,6 +76,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/I2C/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SwitchController/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.c.misc.dialect.1885316467" name="Language standard" superClass="com.crt.advproject.c.misc.dialect" useByScannerDiscovery="true" value="com.crt.advproject.misc.dialect.c11" valueType="enumerated"/>
|
||||
<inputType id="com.crt.advproject.compiler.input.1491212950" superClass="com.crt.advproject.compiler.input"/>
|
||||
@ -94,6 +96,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/I2C/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SwitchController/inc}""/>
|
||||
</option>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.486566022" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
|
||||
<inputType id="com.crt.advproject.assembler.input.255980151" name="Additional Assembly Source Files" superClass="com.crt.advproject.assembler.input"/>
|
||||
@ -126,6 +129,7 @@
|
||||
<listOptionValue builtIn="false" value="I2C"/>
|
||||
<listOptionValue builtIn="false" value="StateHandler"/>
|
||||
<listOptionValue builtIn="false" value="Timer"/>
|
||||
<listOptionValue builtIn="false" value="SwitchController"/>
|
||||
</option>
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.cpp.link.option.paths.804461696" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/lpc_board_nxp_lpcxpresso_1549/Debug}""/>
|
||||
@ -135,6 +139,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/I2C/Debug}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/Debug}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/Debug}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SwitchController/Debug}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.link.cpp.crpenable.8641361" name="Enable automatic placement of Code Read Protection field in image" superClass="com.crt.advproject.link.cpp.crpenable"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.849613399" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
|
||||
@ -200,6 +205,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/I2C/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SwitchController/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.cpp.misc.dialect.1640449237" name="Language standard" superClass="com.crt.advproject.cpp.misc.dialect" useByScannerDiscovery="true" value="com.crt.advproject.misc.dialect.c++11" valueType="enumerated"/>
|
||||
<inputType id="com.crt.advproject.compiler.cpp.input.812988440" superClass="com.crt.advproject.compiler.cpp.input"/>
|
||||
@ -229,6 +235,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/I2C/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SwitchController/inc}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.c.misc.dialect.1383624929" name="Language standard" superClass="com.crt.advproject.c.misc.dialect" useByScannerDiscovery="true" value="com.crt.advproject.misc.dialect.c11" valueType="enumerated"/>
|
||||
<inputType id="com.crt.advproject.compiler.input.391538574" superClass="com.crt.advproject.compiler.input"/>
|
||||
@ -248,6 +255,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/I2C/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SwitchController/inc}""/>
|
||||
</option>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1169670567" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
|
||||
<inputType id="com.crt.advproject.assembler.input.956763731" name="Additional Assembly Source Files" superClass="com.crt.advproject.assembler.input"/>
|
||||
@ -280,6 +288,7 @@
|
||||
<listOptionValue builtIn="false" value="I2C"/>
|
||||
<listOptionValue builtIn="false" value="StateHandler"/>
|
||||
<listOptionValue builtIn="false" value="Timer"/>
|
||||
<listOptionValue builtIn="false" value="SwitchController"/>
|
||||
</option>
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.cpp.link.option.paths.245096214" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/lpc_board_nxp_lpcxpresso_1549/Release}""/>
|
||||
@ -289,6 +298,7 @@
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/I2C/Release}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/StateHandler/Release}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/Timer/Release}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/SwitchController/Release}""/>
|
||||
</option>
|
||||
<option id="com.crt.advproject.link.cpp.crpenable.209534913" name="Enable automatic placement of Code Read Protection field in image" superClass="com.crt.advproject.link.cpp.crpenable"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1513506142" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
|
||||
|
||||
@ -10,6 +10,7 @@
|
||||
<project>I2C</project>
|
||||
<project>StateHandler</project>
|
||||
<project>Timer</project>
|
||||
<project>SwitchController</project>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
|
||||
@ -19,6 +19,7 @@
|
||||
#include "DigitalIoPin.h"
|
||||
#include "LiquidCrystal.h"
|
||||
#include "StateHandler.h"
|
||||
#include "SwitchController.h"
|
||||
#include "Timer.h"
|
||||
|
||||
#include <cr_section_macros.h>
|
||||
@ -44,6 +45,7 @@ main (void)
|
||||
#endif
|
||||
/** Lcd & stateHandler */
|
||||
Chip_RIT_Init (LPC_RITIMER);
|
||||
Timer glob_time;
|
||||
DigitalIoPin rs (0, 29, false, true, false);
|
||||
DigitalIoPin en (0, 9, false, true, false);
|
||||
DigitalIoPin d4 (0, 10, false, true, false);
|
||||
@ -58,47 +60,24 @@ main (void)
|
||||
|
||||
/** Common pins */
|
||||
DigitalIoPin b_up (0, 7, true, true, true); // A5
|
||||
bool b_up_state = false;
|
||||
SwitchController sw_up (&b_up, &glob_time, &ventMachine, BUTTON_CONTROL_UP);
|
||||
|
||||
DigitalIoPin b_down (0, 6, true, true, true); // A4
|
||||
bool b_down_state = false;
|
||||
SwitchController sw_down (&b_down, &glob_time, &ventMachine,
|
||||
BUTTON_CONTROL_DOWN);
|
||||
|
||||
DigitalIoPin b_toggle (0, 5, true, true, true); // A3
|
||||
bool b_toggle_state = false;
|
||||
SwitchController sw_toggle (&b_toggle, &glob_time, &ventMachine,
|
||||
BUTTON_CONTROL_TOG_MODE);
|
||||
|
||||
int16_t pressure = 1;
|
||||
|
||||
Timer glob_time;
|
||||
|
||||
while (1)
|
||||
{
|
||||
if (b_up.read ())
|
||||
{
|
||||
b_up_state = true;
|
||||
}
|
||||
if (!b_up.read () && b_up_state)
|
||||
{
|
||||
ventMachine.HandleState (Event (Event::eKey, BUTTON_CONTROL_UP));
|
||||
b_up_state = false;
|
||||
}
|
||||
if (b_down.read ())
|
||||
{
|
||||
b_down_state = true;
|
||||
}
|
||||
if (!b_down.read () && b_down_state)
|
||||
{
|
||||
ventMachine.HandleState (Event (Event::eKey, BUTTON_CONTROL_DOWN));
|
||||
b_down_state = false;
|
||||
}
|
||||
if (b_toggle.read ())
|
||||
{
|
||||
b_toggle_state = true;
|
||||
}
|
||||
if (!b_toggle.read () && b_toggle_state)
|
||||
{
|
||||
ventMachine.HandleState (
|
||||
Event (Event::eKey, BUTTON_CONTROL_TOG_MODE));
|
||||
b_toggle_state = false;
|
||||
}
|
||||
|
||||
sw_up.listen ();
|
||||
sw_down.listen ();
|
||||
sw_toggle.listen ();
|
||||
/**
|
||||
* TODO:
|
||||
* - Update current pressure to eTick
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user