Embedded System Design 2 - Project
|
Interrupt functionality. More...
#include <stdint.h>
#include <stdbool.h>
#include "em_device.h"
#include "em_cmu.h"
#include "em_gpio.h"
#include "em_rtc.h"
#include "interrupt.h"
#include "pin_mapping.h"
#include "debug_dbprint.h"
#include "util.h"
#include "ADXL362.h"
Go to the source code of this file.
Functions | |
void | initGPIOwakeup (void) |
Initialize GPIO wake-up functionality. More... | |
bool | BTN_getTriggered (uint8_t number) |
Getter for the PB0_triggered and PB1_triggered variables. More... | |
void | BTN_setTriggered (uint8_t number, bool value) |
Setter for the PB0_triggered and PB1_triggered variable. More... | |
void | GPIO_EVEN_IRQHandler (void) |
GPIO Even IRQ for pushbuttons on even-numbered pins. More... | |
void | GPIO_ODD_IRQHandler (void) |
GPIO Odd IRQ for pushbuttons on odd-numbered pins. More... | |
Variables | |
volatile bool | PB0_triggered = false |
volatile bool | PB1_triggered = false |
Interrupt functionality.
ADXL_triggered
, added GPIO wakeup initialization method here, renamed file. main.c
. delay.c
. static
before the local variables (not necessary).Copyright (C) 2019 - Brecht Van Eeckhoudt
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
A copy of the GNU General Public License can be found in the LICENSE
file along with this source code.
Some methods use code obtained from examples from Silicon Labs' GitHub. These sections are licensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.
Definition in file interrupt.c.
bool BTN_getTriggered | ( | uint8_t | number | ) |
Getter for the PB0_triggered
and PB1_triggered
variables.
[in] | number |
|
PB0_triggered
or PB1_triggered
. Definition at line 145 of file interrupt.c.
void BTN_setTriggered | ( | uint8_t | number, |
bool | value | ||
) |
Setter for the PB0_triggered
and PB1_triggered
variable.
[in] | number |
|
[in] | value | The boolean value to set to the selected variable. |
Definition at line 174 of file interrupt.c.
void GPIO_EVEN_IRQHandler | ( | void | ) |
GPIO Even IRQ for pushbuttons on even-numbered pins.
The RTC is also disabled on a button press (manual wake-up)
system_efm32hg.h
. Definition at line 200 of file interrupt.c.
void GPIO_ODD_IRQHandler | ( | void | ) |
GPIO Odd IRQ for pushbuttons on odd-numbered pins.
The RTC is also disabled on a button press (manual wakeup).
system_efm32hg.h
. Definition at line 229 of file interrupt.c.
void initGPIOwakeup | ( | void | ) |
Initialize GPIO wake-up functionality.
Initialize buttons PB0
and PB1
on falling-edge interrupts and ADXL_INT1
on rising-edge interrupts.
Definition at line 91 of file interrupt.c.
volatile bool PB0_triggered = false |
Definition at line 79 of file interrupt.c.
volatile bool PB1_triggered = false |
Definition at line 80 of file interrupt.c.