You are on page 1of 4

/*

common defintions to make things more readable and avoid copying

*/
#ifndef DEFINITIONS_H
#define DEFINITIONS_H
// **************************************************
// TIVA PWM DEFINES
// **************************************************
// 1. Motor
#define NUM_PWM

// **************************************************
// MOTOR DEFINES
// **************************************************
#define
#define
#define
#define
#define

MOTOR_PERIOD
TIMING_CHANNEL
TIME_MOT_GROUP
VIB_MOT_ON
VIB_MOT_OFF

0
0

250
1
0

// **************************************************
// SHIFT REGISTER DEFINES
// **************************************************
#define
#define
#define
#define

NUM_SR_STRINGS_PWM
NUM_SR_STRINGS
NUM_SR_PER_STRING
NUM_OUTPUTS_PER_SR

#define
#define
#define
#define

SR_STRING_0
SR_STRING_1
SR_STRING_2
SR_STRING_3

0
1
2
3

#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define

SR_DATA_A0
SR_SCLK_A0
SR_RCLK_A0
SR_DATA_A1
SR_SCLK_A1
SR_RCLK_A1
SR_DATA_B0
SR_SCLK_B0
SR_RCLK_B0
SR_DATA_B1
SR_SCLK_B1
SR_RCLK_B1

GPIO_PIN_2
GPIO_PIN_3
GPIO_PIN_4
GPIO_PIN_5
GPIO_PIN_6
GPIO_PIN_7
GPIO_PIN_0
GPIO_PIN_1
GPIO_PIN_2
GPIO_PIN_3
GPIO_PIN_6
GPIO_PIN_7

#define
#define
#define
#define
#define
#define

SR_PORT_A
SR_PORT_A_INIT
SR_PORT_A_WAIT_CLK
SR_PORT_B
SR_PORT_B_INIT
SR_PORT_B_WAIT_CLK

4
3

GPIO_PORTA_BASE
SYSCTL_RCGCGPIO_R0
SYSCTL_PRGPIO_R0
GPIO_PORTD_BASE
SYSCTL_RCGCGPIO_R3
SYSCTL_PRGPIO_R3

// **************************************************
// SHIFT REGISTER PULSE WIDTH MODULATION DEFINES
// **************************************************
#define SRPWM_SR_STRING_0
#define SRPWM_SR_STRING_1

SR_STRING_0
SR_STRING_1

#define SRPWM_SR_STRING_2

SR_STRING_2

// **************************************************
// TIMING DEFINES
// **************************************************
// Durations:
#define ONE_SEC
#define QUART_SEC
#define HALF_SEC
#define TWO_SEC
#define THREE_SEC
#define FOUR_SEC
#define FIVE_SEC
#define TEN_SEC

976
(ONE_SEC/4)
(ONE_SEC/2)
(ONE_SEC*2)
(ONE_SEC*3)
(ONE_SEC*4)
(ONE_SEC*5)
(ONE_SEC*10)

// Timer delays:
#define DEBOUNCE_TIME ONE_SEC*5/100
#define SEASON_TIME
TEN_SEC
#define GROWING_TIME
QUART_SEC
#define WEATHER_TIME
THREE_SEC
#define REPLAY_TIME
3*TEN_SEC/2
#define ANALOG_TIME
ONE_SEC/5
#define AUDIO_TIME
ONE_SEC/4
#define REPLAY_DELAY
50
// **************************************************
// PROXIMITY SENSOR DEFINES
// **************************************************
// Hardware:
#define PROX_PORT
#define PROX_PORT_INIT
#define PROX_PORT_WAIT_CLK
#define
#define
#define
#define
#define

GPIO_PORTB_BASE
SYSCTL_RCGCGPIO_R1
SYSCTL_PRGPIO_R1

PROX_0
PROX_1
PROX_2
PROX_3
PROX_4

GPIO_PIN_0
GPIO_PIN_1
GPIO_PIN_2
GPIO_PIN_3
GPIO_PIN_4

// **************************************************
// AUDIO DEFINES
// **************************************************
#define
#define
#define
#define
#define
#define
#define

PLAY_INST
PLAY_SPR
PLAY_SUM
PLAY_FALL
PLAY_WIN
PLAY_NEWYR
PLAY_OFF

BIT0LO
BIT1LO
BIT2LO
BIT3LO
BIT4LO
BIT5LO
(BIT0LO|BIT0HI)

#define AUDIO_SR_STRING SR_STRING_3


// **************************************************
// POTENTIOMETER DEFINES
// **************************************************
#define NUM_ANALOG_CHANNELS
#define MAX_ANALOG
#define ANALOG_BIN_SIZE

1
100

4095

// **************************************************

// TREE DEFINES
// **************************************************
#define
#define
#define
#define
#define

NUM_SEASONS
SPRING
SUMMER
FALL
WINTER

4
0
1
3

// **************************************************
// BRANCH DEFINES
// **************************************************
#define NUM_BRANCHES

// **************************************************
// LED DEFINES
// **************************************************
// Tree
#define
#define
#define
#define

branches:
STRIPS_PER_BRANCH
LEDS_PER_STRIP
NUM_STRIPS_TOTAL
NUM_STRIPS

3
3
24

// Arrow:
#define ARROW_IDX

15
15

// Front panel:
#define COLOR_LIM_STRIP_IDX
#define COLOR_MIN_STRIP_IDX
#define COLOR_MAX_STRIP_IDX

16
17
18

// **************************************************
// COLOR DEFINES
// **************************************************
// HSV:
#define
#define
#define
#define
#define
#define
#define
#define
#define

HSV_OFF
0x00ff00
HSV_SPRING_MIN 0xd1fcff
HSV_SPRING_MAX 0xfeffff
HSV_SUMMER_MIN 0x45ffff
HSV_SUMMER_MAX 0x5dffff
HSV_FALL_MIN
0x04f8ff
HSV_FALL_MAX
0x2bf8ff
HSV_WINTER_MIN 0xa8feff
HSV_WINTER_MAX 0x7f00ff

#define
#define
#define
#define

H_BIT_OFFSET
S_BIT_OFFSET
V_BIT_OFFSET
MAX_HSV

16
8
0

// RGB:
#define
#define
#define
#define

R_BIT_OFFSET
G_BIT_OFFSET
B_BIT_OFFSET
MAX_RGB

16
8
0

255

255

// **************************************************
// OTHER DEFINES
// **************************************************
#define ALL_BITS

(0xff<<2)

#define MAX_REPLAY_STEPS
#endif

/* DEFINITIONS_H */

400

You might also like