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

# Joystick Management
[USBKEY]

Macros to manage Joystick on USB KEY. 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_up() ((PINB & (1<<PINB7)) ? FALSE : TRUE)
#define | Is_joy_left() ((PINB & (1<<PINB6)) ? 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 USB KEY.

## 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 99 of file usb_key.h.

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

Definition at line 101 of file usb_key.h.

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

Definition at line 102 of file usb_key.h.

#define Is_btn_right | ( |  | ) | FALSE

Definition at line 103 of file usb_key.h.

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

Definition at line 105 of file usb_key.h.

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

Definition at line 106 of file usb_key.h.

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

Definition at line 107 of file usb_key.h.

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

Definition at line 108 of file usb_key.h.

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

Definition at line 110 of file usb_key.h.

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

Definition at line 111 of file usb_key.h.

#define Is_btn_not_right | ( |  | ) | TRUE

Definition at line 112 of file usb_key.h.

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

Definition at line 114 of file usb_key.h.

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

Definition at line 115 of file usb_key.h.

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

Definition at line 116 of file usb_key.h.

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

Definition at line 117 of file usb_key.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 123 of file usb_key.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 132 of file usb_key.h.