ATMEL: Joystick Management

- Main Page
- Modules
- Data Structures
- Files
- Related Pages

# Joystick Management
[STK525]

Macros to manage Joystick on STK525. More...

## Defines

#define | Joy_init() (DDRB &= ~((1<<PINB7)|(1<<PINB6)|(1<<PINB5)), PORTB |= ((1<<PINB7)|(1<<PINB6)|(1<<PINB5)), DDRE &= ~((1<<PINE5)|(1<<PINE4)), PORTE |= ((1<<PINE5)|(1<<PINE4)))
#define | Is_btn_left() Is_hwb()
#define | Is_btn_middle() ((PINB & (1<<PINB5)) ? FALSE : TRUE)
#define | Is_btn_right() FALSE
#define | Is_joy_left() ((PINB & (1<<PINB6)) ? FALSE : TRUE)
#define | Is_joy_up() ((PINB & (1<<PINB7)) ? FALSE : TRUE)
#define | Is_joy_down() ((PINE & (1<<PINE5)) ? FALSE : TRUE)
#define | Is_joy_right() ((PINE & (1<<PINE4)) ? FALSE : TRUE)
#define | Is_btn_not_left() Is_not_hwb()
#define | Is_btn_not_middle() ((PINB & (1<<PINB5)) ? TRUE : FALSE)
#define | Is_btn_not_right() TRUE
#define | Is_joy_not_up() ((PINB & (1<<PINB7)) ? TRUE : FALSE)
#define | Is_joy_not_left() ((PINB & (1<<PINB6)) ? TRUE : FALSE)
#define | Is_joy_not_down() ((PINE & (1<<PINE5)) ? TRUE : FALSE)
#define | Is_joy_not_right() ((PINE & (1<<PINE4)) ? TRUE : FALSE)
#define | Switches_enable_it()

Enable interrupts for switches (PINB5 to PINB7)

- Set up interrupts for switches
- clear flag
- enable interrupt.

#define | Switches_disable_it()

Disable interrupts for switches (PINB5 to PINB7)

- disable interrupt
- clear flag
- Clear mask.

## Detailed Description

Macros to manage Joystick on STK525.

## Define Documentation

#define Joy_init | ( |  | ) | (DDRB &= ~((1<<PINB7)|(1<<PINB6)|(1<<PINB5)), PORTB |= ((1<<PINB7)|(1<<PINB6)|(1<<PINB5)), DDRE &= ~((1<<PINE5)|(1<<PINE4)), PORTE |= ((1<<PINE5)|(1<<PINE4)))

Definition at line 98 of file stk_525.h.

Referenced by device_mouse_task_init(), hid_task_init(), host_dfu_task_init(), and host_ms_task_init().

#define Is_btn_left | ( |  | ) | Is_hwb()

Definition at line 100 of file stk_525.h.

#define Is_btn_middle | ( |  | ) | ((PINB & (1<<PINB5)) ? FALSE : TRUE)

Definition at line 101 of file stk_525.h.

#define Is_btn_right | ( |  | ) | FALSE

Definition at line 102 of file stk_525.h.

#define Is_joy_left | ( |  | ) | ((PINB & (1<<PINB6)) ? FALSE : TRUE)

Definition at line 104 of file stk_525.h.

Referenced by hid_report_in(), host_dfu_task(), and host_ms_task().

#define Is_joy_up | ( |  | ) | ((PINB & (1<<PINB7)) ? FALSE : TRUE)

Definition at line 105 of file stk_525.h.

Referenced by hid_report_in(), and host_dfu_task().

#define Is_joy_down | ( |  | ) | ((PINE & (1<<PINE5)) ? FALSE : TRUE)

Definition at line 106 of file stk_525.h.

Referenced by hid_report_in().

#define Is_joy_right | ( |  | ) | ((PINE & (1<<PINE4)) ? FALSE : TRUE)

Definition at line 107 of file stk_525.h.

Referenced by hid_report_in(), and host_ms_task().

#define Is_btn_not_left | ( |  | ) | Is_not_hwb()

Definition at line 109 of file stk_525.h.

#define Is_btn_not_middle | ( |  | ) | ((PINB & (1<<PINB5)) ? TRUE : FALSE)

Definition at line 110 of file stk_525.h.

#define Is_btn_not_right | ( |  | ) | TRUE

Definition at line 111 of file stk_525.h.

#define Is_joy_not_up | ( |  | ) | ((PINB & (1<<PINB7)) ? TRUE : FALSE)

Definition at line 113 of file stk_525.h.

#define Is_joy_not_left | ( |  | ) | ((PINB & (1<<PINB6)) ? TRUE : FALSE)

Definition at line 114 of file stk_525.h.

#define Is_joy_not_down | ( |  | ) | ((PINE & (1<<PINE5)) ? TRUE : FALSE)

Definition at line 115 of file stk_525.h.

#define Is_joy_not_right | ( |  | ) | ((PINE & (1<<PINE4)) ? TRUE : FALSE)

Definition at line 116 of file stk_525.h.

#define Switches_enable_it | ( |  | ) |

Value:

    {  \
          PCMSK0 |= (1<<PCINT5)|(1<<PCINT6)|(1<<PCINT7);\
          PCIFR |= (1<<PCIF0);       \
          PCICR |= (1<<PCIE0);}

Enable interrupts for switches (PINB5 to PINB7)

- Set up interrupts for switches
- clear flag
- enable interrupt.

Definition at line 122 of file stk_525.h.

#define Switches_disable_it | ( |  | ) |

Value:

    { \
          PCICR  &= ~(1<<PCIE0);     \
          PCIFR  |= (1<<PCIF0);      \
          PCMSK0 &= ~((1<<PCINT5)|(1<<PCINT6)|(1<<PCINT7));}

Disable interrupts for switches (PINB5 to PINB7)

- disable interrupt
- clear flag
- Clear mask.

Definition at line 131 of file stk_525.h.