Make pressing the reset button revert to the factory preset.

This commit is contained in:
László Monda
2017-11-10 23:42:45 +01:00
parent f927aef7f5
commit e3a121f0d8

View File

@@ -1,9 +1,19 @@
#include "reset_button.h"
#include "fsl_port.h"
#include "bootloader/wormhole.h"
void RESET_BUTTON_IRQ_HANDLER(void)
{
Wormhole.magicNumber = WORMHOLE_MAGIC_NUMBER;
Wormhole.enumerationMode = EnumerationMode_NormalKeyboard;
NVIC_SystemReset();
}
void InitResetButton(void)
{
CLOCK_EnableClock(RESET_BUTTON_CLOCK);
PORT_SetPinInterruptConfig(RESET_BUTTON_PORT, RESET_BUTTON_PIN, kPORT_InterruptFallingEdge);
EnableIRQ(RESET_BUTTON_IRQ);
PORT_SetPinConfig(RESET_BUTTON_PORT, RESET_BUTTON_PIN,
&(port_pin_config_t){.pullSelect=kPORT_PullUp, .mux=kPORT_MuxAsGpio});
}