
#define NOT_USED     0
#define FLOAT        1
#define UNSIGNED16   2
#define SIGNED16     3
#define UNSIGNED32   4
#define SIGNED32     5

// Shutdown +15V and -15V
#define ENABLE_15V            (GpioDataRegs.GPDCLR..bit.GPIO124 = 1)
#define DISABLE_15V


// PWM DESET RESET
#define nPWM_RESET            GpioDataRegs.GPBDAT.bit.GPIO44
#define nPWM_RESET_ON         (GpioDataRegs.GPBSET.bit.GPIO44 = 1)
#define nPWM_RESET_OFF        (GpioDataRegs.GPBCLEAR.bit.GPIO44 = 1)

// PWMexc DESET RESET
#define nPWM_EXC_RESET        GpioDataRegs.GPBDAT.bit.GPIO52
#define nPWM_EXC_RESET_OFF    (GpioDataRegs.GPBSET.bit.GPIO52 = 1)
#define nPWM_EXC_RESET_ON     (GpioDataRegs.GPBCLEAR.bit.GPIO52 = 1)

//GPIOs for FAULTS
#define DESAT                 GpioDataRegs.GPADAT.bit.GPIO12      // 3 Sets of PWMs Fault
#define FAULT1_A              GpioDataRegs.GPADAT.bit.GPIO13      // 1st Set PWM Phase A Fault
#define FAULT2_A              GpioDataRegs.GPADAT.bit.GPIO14      // 2nd Set PWM Phase A Fault
#define FAULT_EXC             GpioDataRegs.GPADAT.bit.GPIO15      // Exciter Inverter Fault
#define FAULT1_B              GpioDataRegs.GPBDAT.bit.GPIO32      // 1st Set PWM Phase B Fault
#define FAULT1_C              GpioDataRegs.GPBDAT.bit.GPIO33      // 1st Set PWM Phase C Fault
#define FAULT2_B              GpioDataRegs.GPBDAT.bit.GPIO39      // 2nd Set PWM Phase B Fault
#define FAULT2_C              GpioDataRegs.GPBDAT.bit.GPIO34      // 2nd Set PWM Phase C Fault

//GPIOs for DUTY CYCLE
#define DUTY1_AH              GpioDataRegs.GPADAT.bit.GPIO28      // 1st Set PWM Phase A UPPER SWITCH DUTY CYCLE
#define DUTY1_BH              GpioDataRegs.GPADAT.bit.GPIO29      // 1st Set PWM Phase B UPPER SWITCH DUTY CYCLE
#define DUTY1_CH              GpioDataRegs.GPADAT.bit.GPIO27      // 1st Set PWM Phase C UPPER SWITCH DUTY CYCLE
#define DUTY2_AH              GpioDataRegs.GPBDAT.bit.GPIO40      // 2ND Set PWM Phase A UPPER SWITCH DUTY CYCLE
#define DUTY2_BH              GpioDataRegs.GPBDAT.bit.GPIO41      // 2ND Set PWM Phase B UPPER SWITCH DUTY CYCLE
#define DUTY2_CH              GpioDataRegs.GPBDAT.bit.GPIO42      // 2ND Set PWM Phase C UPPER SWITCH DUTY CYCLE

//EXCITER INVERTER READY SIGNAL
#define nREADY_Exc            GpioDataRegs.GPBDAT.bit.GPIO51      // EXCITER INVERTER READY SIGNAL GPIO-51

//DIGTAL INPUT GPIOs
#define DIG_INA               GpioDataRegs.GPBDAT.bit.GPIO45      // DIG_INa     GPIO-45
#define DIG_INB               GpioDataRegs.GPBDAT.bit.GPIO46      // DIG_INb     GPIO-46
#define DIG_INC               GpioDataRegs.GPBDAT.bit.GPIO47      // DIG_INc     GPIO-47
#define DIG_IND               GpioDataRegs.GPBDAT.bit.GPIO54      // DIG_INd     GPIO-54

//DIGITAL OUTPUT A
#define DIG_OUTA              GpioDataRegs.GPBDAT.bit.GPIO57      // DIG_OUTa    GPIO-57
#define DIG_OUTA_HI           (GpioDataRegs.GPBSET.bit.GPIO57 = 1)
#define DIG_OUTA_LOW          (GpioDataRegs.GPBCLEAR.bit.GPIO57 = 1)

//DIGITAL OUTPUT C
#define DIG_OUTC              GpioDataRegs.GPBDAT.bit.GPIO58      // DIG_OUTc    GPIO-58
#define DIG_OUTC_HI           (GpioDataRegs.GPBSET.bit.GPIO58 = 1)
#define DIG_OUTC_LOW          (GpioDataRegs.GPBCLEAR.bit.GPIO58 = 1)

//DIGITAL OUTPUT B
#define DIG_OUTB              GpioDataRegs.GPBDAT.bit.GPIO59      // DIG_OUTb    GPIO-59
#define DIG_OUTBb_HI          (GpioDataRegs.GPBSET.bit.GPIO59 = 1)
#define DIG_OUTB_LOW          (GpioDataRegs.GPBCLEAR.bit.GPIO59 = 1)

//WHITE LED -- GPIO55
#define WHITE_LED             GpioDataRegs.GPBDAT.bit.GPIO55
#define WHITE_LED_ON          (GpioDataRegs.GPBSET.bit.GPIO55 = 1)
#define WHITE_LED_OFF         (GpioDataRegs.GPBCLEAR.bit.GPIO55 = 1)
#define WHITE_LED_TOGGLE      (GpioDataRegs.GPBTOGGLE.bit.GPIO55 = 1)

//BLUE LED -- GPIO56
#define BLUE_LED               GpioDataRegs.GPBDAT.bit.GPIO56
#define BLUE_LED_ON           (GpioDataRegs.GPBSET.bit.GPIO56 = 1)
#define BLUE_LED_OFF          (GpioDataRegs.GPBCLEAR.bit.GPIO56 = 1)
#define BLUE_LED_TOGGLE       (GpioDataRegs.GPBTOGGLE.bit.GPIO56 = 1)

//GPIO49 - AMUX_A0
#define AMUX_A0               GpioDataRegs.GPBDAT.bit.GPIO49
#define AMUX_A0_HI            (GpioDataRegs.GPBSET.bit.GPIO49 = 1)
#define AMUX_A0_LOW           (GpioDataRegs.GPBCLEAR.bit.GPIO49 = 1)

//GPIO50 - AMUX_A1
#define AMUX_A1               GpioDataRegs.GPBDAT.bit.GPIO50
#define AMUX_A1_HI            (GpioDataRegs.GPBSET.bit.GPIO50 = 1)
#define AMUX_A1_LOW           (GpioDataRegs.GPBCLEAR.bit.GPIO50 = 1)

#define AMUX_SEL_CH1          GpioDataRegs.GPBCLEAR.bit.GPIO49 = 1; GpioDataRegs.GPBCLEAR.bit.GPIO50 = 1
#define AMUX_SEL_CH2          GpioDataRegs.GPBSET.bit.GPIO49 = 1; GpioDataRegs.GPBCLEAR.bit.GPIO50 = 1
#define AMUX_SEL_CH3          GpioDataRegs.GPBCLEAR.bit.GPIO49 = 1; GpioDataRegs.GPBSET.bit.GPIO50 = 1
#define AMUX_SEL_CH4          GpioDataRegs.GPBSET.bit.GPIO49 = 1; GpioDataRegs.GPBSET.bit.GPIO50 = 1

