User Interface.
Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.
#include "compiler.h"
#include "conf_usb.h"
#include "udc.h"
#include "udi_hid_mouse.h"
#include "board.h"
#include "led.h"
#include "ui.h"
#include "pio.h"
#include "pio_handler.h"
#include "pmc.h"
Macros | |
#define | MOUSE_MOVE_RANGE 3 |
#define | WAKEUP_PIN (GPIO_PUSH_BUTTON_2) |
#define | WAKEUP_PIO (PIN_PUSHBUTTON_2_PIO) |
#define | WAKEUP_PIO_ATTR (PIN_PUSHBUTTON_2_ATTR) |
#define | WAKEUP_PIO_ID (PIN_PUSHBUTTON_2_ID) |
#define | WAKEUP_PIO_MASK (PIN_PUSHBUTTON_2_MASK) |
#define | WAKEUP_PMC_FSTT (PMC_FSMR_FSTT14) |
Functions | |
void | ui_init (void) |
Initializes the user interface. More... | |
void | ui_powerdown (void) |
Enters the user interface in power down mode. More... | |
void | ui_process (uint16_t framenumber) |
This process is called each 1ms It is called only if the USB interface is enabled. More... | |
void | ui_wakeup (void) |
Exits the user interface of power down mode. More... | |
void | ui_wakeup_disable (void) |
Disables the asynchronous interrupts of the user interface. More... | |
void | ui_wakeup_enable (void) |
Enables the asynchronous interrupts of the user interface. More... | |
static void | ui_wakeup_handler (uint32_t id, uint32_t mask) |
#define MOUSE_MOVE_RANGE 3 |
Referenced by ui_process().
#define WAKEUP_PIN (GPIO_PUSH_BUTTON_2) |
Referenced by ui_wakeup_disable(), and ui_wakeup_enable().
#define WAKEUP_PIO (PIN_PUSHBUTTON_2_PIO) |
Referenced by ui_init().
#define WAKEUP_PIO_ATTR (PIN_PUSHBUTTON_2_ATTR) |
Referenced by ui_init(), and ui_wakeup_enable().
#define WAKEUP_PIO_ID (PIN_PUSHBUTTON_2_ID) |
Referenced by ui_init(), and ui_wakeup_handler().
#define WAKEUP_PIO_MASK (PIN_PUSHBUTTON_2_MASK) |
Referenced by ui_init(), and ui_wakeup_handler().
#define WAKEUP_PMC_FSTT (PMC_FSMR_FSTT14) |
Referenced by ui_wakeup_disable(), and ui_wakeup_enable().
void ui_init | ( | void | ) |
Initializes the user interface.
References LED0_GPIO, LED1_GPIO, LED_Off(), LED_On(), pio_handler_set(), pmc_enable_periph_clk(), ui_wakeup_handler(), WAKEUP_PIO, WAKEUP_PIO_ATTR, WAKEUP_PIO_ID, and WAKEUP_PIO_MASK.
Referenced by main().
void ui_powerdown | ( | void | ) |
Enters the user interface in power down mode.
References LED0_GPIO, LED1_GPIO, and LED_Off().
Referenced by main(), and main_suspend_action().
void ui_process | ( | uint16_t | framenumber | ) |
This process is called each 1ms It is called only if the USB interface is enabled.
framenumber | Current frame number |
References gpio_pin_is_high, GPIO_PUSH_BUTTON_1, GPIO_PUSH_BUTTON_2, LED0_GPIO, LED_Off(), LED_On(), MOUSE_MOVE_RANGE, and udi_hid_mouse_moveX().
Referenced by main(), and main_sof_action().
void ui_wakeup | ( | void | ) |
Exits the user interface of power down mode.
References LED0_GPIO, and LED_On().
Referenced by main_resume_action().
void ui_wakeup_disable | ( | void | ) |
Disables the asynchronous interrupts of the user interface.
References pio_disable_pin_interrupt(), pmc_clr_fast_startup_input(), WAKEUP_PIN, and WAKEUP_PMC_FSTT.
Referenced by main_remotewakeup_disable().
void ui_wakeup_enable | ( | void | ) |
Enables the asynchronous interrupts of the user interface.
References pio_configure_pin(), pio_enable_pin_interrupt(), pmc_set_fast_startup_input(), WAKEUP_PIN, WAKEUP_PIO_ATTR, and WAKEUP_PMC_FSTT.
Referenced by main_remotewakeup_enable().
|
static |
References udc_remotewakeup(), WAKEUP_PIO_ID, and WAKEUP_PIO_MASK.
Referenced by ui_init().