Microchip® Advanced Software Framework

ui.c File Reference

User Interface.

Copyright (c) 2015-2018 Microchip Technology Inc. and its subsidiaries.

#include <asf.h>
#include "ui.h"

Macros

#define MOUSE_MOVE_RANGE   3
 
#define WAKEUP_PIN   (GPIO_PUSH_BUTTON_1)
 
#define WAKEUP_PIO   (PIN_PUSHBUTTON_1_PIO)
 
#define WAKEUP_PIO_ATTR   (PIO_INPUT | PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_LOW_LEVEL)
 
#define WAKEUP_PIO_ID   (PIN_PUSHBUTTON_1_ID)
 
#define WAKEUP_PIO_MASK   (PIN_PUSHBUTTON_1_MASK)
 
#define WAKEUP_PMC_FSTT   (PUSHBUTTON_1_WKUP_FSTT)
 

Functions

void ui_init (void)
 Initializes the user interface. More...
 
void ui_powerdown (void)
 Sets 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_start_read (void)
 
void ui_start_write (void)
 
void ui_stop_read (void)
 
void ui_stop_write (void)
 
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_1)
#define WAKEUP_PIO   (PIN_PUSHBUTTON_1_PIO)

Referenced by ui_init().

#define WAKEUP_PIO_ATTR   (PIO_INPUT | PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_LOW_LEVEL)

Referenced by ui_init(), and ui_wakeup_enable().

#define WAKEUP_PIO_ID   (PIN_PUSHBUTTON_1_ID)

Referenced by ui_init(), and ui_wakeup_handler().

#define WAKEUP_PIO_MASK   (PIN_PUSHBUTTON_1_MASK)

Referenced by ui_init(), and ui_wakeup_handler().

#define WAKEUP_PMC_FSTT   (PUSHBUTTON_1_WKUP_FSTT)

void ui_init ( void  )

Initializes the user interface.

References LED_Off, pio_handler_set(), ui_wakeup_handler(), WAKEUP_PIO, WAKEUP_PIO_ATTR, WAKEUP_PIO_ID, and WAKEUP_PIO_MASK.

Referenced by main().

void ui_powerdown ( void  )

Sets the user interface in power down mode.

References 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.

Parameters
framenumberCurrent frame number

References GPIO_PUSH_BUTTON_1, ioport_get_pin_level(), LED_Off, LED_On, MOUSE_MOVE_RANGE, and udi_hid_mouse_moveY().

Referenced by main_sof_action().

void ui_start_read ( void  )
void ui_start_write ( void  )
void ui_stop_read ( void  )
void ui_stop_write ( void  )
void ui_wakeup ( void  )

Exits the user interface of power down mode.

References 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 void ui_wakeup_handler ( uint32_t  id,
uint32_t  mask 
)
static

References udc_remotewakeup(), WAKEUP_PIO_ID, and WAKEUP_PIO_MASK.

Referenced by ui_init().