mikroSDK Reference Manual
|
CTRL - Control Register | |
#define | ENC_CTRL_CMPIE_MASK (0x1U) |
#define | ENC_CTRL_CMPIE_SHIFT (0U) |
#define | ENC_CTRL_CMPIE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_CMPIE_SHIFT)) & ENC_CTRL_CMPIE_MASK) |
#define | ENC_CTRL_CMPIRQ_MASK (0x2U) |
#define | ENC_CTRL_CMPIRQ_SHIFT (1U) |
#define | ENC_CTRL_CMPIRQ(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_CMPIRQ_SHIFT)) & ENC_CTRL_CMPIRQ_MASK) |
#define | ENC_CTRL_WDE_MASK (0x4U) |
#define | ENC_CTRL_WDE_SHIFT (2U) |
#define | ENC_CTRL_WDE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_WDE_SHIFT)) & ENC_CTRL_WDE_MASK) |
#define | ENC_CTRL_DIE_MASK (0x8U) |
#define | ENC_CTRL_DIE_SHIFT (3U) |
#define | ENC_CTRL_DIE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_DIE_SHIFT)) & ENC_CTRL_DIE_MASK) |
#define | ENC_CTRL_DIRQ_MASK (0x10U) |
#define | ENC_CTRL_DIRQ_SHIFT (4U) |
#define | ENC_CTRL_DIRQ(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_DIRQ_SHIFT)) & ENC_CTRL_DIRQ_MASK) |
#define | ENC_CTRL_XNE_MASK (0x20U) |
#define | ENC_CTRL_XNE_SHIFT (5U) |
#define | ENC_CTRL_XNE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_XNE_SHIFT)) & ENC_CTRL_XNE_MASK) |
#define | ENC_CTRL_XIP_MASK (0x40U) |
#define | ENC_CTRL_XIP_SHIFT (6U) |
#define | ENC_CTRL_XIP(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_XIP_SHIFT)) & ENC_CTRL_XIP_MASK) |
#define | ENC_CTRL_XIE_MASK (0x80U) |
#define | ENC_CTRL_XIE_SHIFT (7U) |
#define | ENC_CTRL_XIE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_XIE_SHIFT)) & ENC_CTRL_XIE_MASK) |
#define | ENC_CTRL_XIRQ_MASK (0x100U) |
#define | ENC_CTRL_XIRQ_SHIFT (8U) |
#define | ENC_CTRL_XIRQ(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_XIRQ_SHIFT)) & ENC_CTRL_XIRQ_MASK) |
#define | ENC_CTRL_PH1_MASK (0x200U) |
#define | ENC_CTRL_PH1_SHIFT (9U) |
#define | ENC_CTRL_PH1(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_PH1_SHIFT)) & ENC_CTRL_PH1_MASK) |
#define | ENC_CTRL_REV_MASK (0x400U) |
#define | ENC_CTRL_REV_SHIFT (10U) |
#define | ENC_CTRL_REV(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_REV_SHIFT)) & ENC_CTRL_REV_MASK) |
#define | ENC_CTRL_SWIP_MASK (0x800U) |
#define | ENC_CTRL_SWIP_SHIFT (11U) |
#define | ENC_CTRL_SWIP(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_SWIP_SHIFT)) & ENC_CTRL_SWIP_MASK) |
#define | ENC_CTRL_HNE_MASK (0x1000U) |
#define | ENC_CTRL_HNE_SHIFT (12U) |
#define | ENC_CTRL_HNE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_HNE_SHIFT)) & ENC_CTRL_HNE_MASK) |
#define | ENC_CTRL_HIP_MASK (0x2000U) |
#define | ENC_CTRL_HIP_SHIFT (13U) |
#define | ENC_CTRL_HIP(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_HIP_SHIFT)) & ENC_CTRL_HIP_MASK) |
#define | ENC_CTRL_HIE_MASK (0x4000U) |
#define | ENC_CTRL_HIE_SHIFT (14U) |
#define | ENC_CTRL_HIE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_HIE_SHIFT)) & ENC_CTRL_HIE_MASK) |
#define | ENC_CTRL_HIRQ_MASK (0x8000U) |
#define | ENC_CTRL_HIRQ_SHIFT (15U) |
#define | ENC_CTRL_HIRQ(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_HIRQ_SHIFT)) & ENC_CTRL_HIRQ_MASK) |
#define | EWM_CTRL_EWMEN_MASK (0x1U) |
#define | EWM_CTRL_EWMEN_SHIFT (0U) |
#define | EWM_CTRL_EWMEN(x) (((uint8_t)(((uint8_t)(x)) << EWM_CTRL_EWMEN_SHIFT)) & EWM_CTRL_EWMEN_MASK) |
#define | EWM_CTRL_ASSIN_MASK (0x2U) |
#define | EWM_CTRL_ASSIN_SHIFT (1U) |
#define | EWM_CTRL_ASSIN(x) (((uint8_t)(((uint8_t)(x)) << EWM_CTRL_ASSIN_SHIFT)) & EWM_CTRL_ASSIN_MASK) |
#define | EWM_CTRL_INEN_MASK (0x4U) |
#define | EWM_CTRL_INEN_SHIFT (2U) |
#define | EWM_CTRL_INEN(x) (((uint8_t)(((uint8_t)(x)) << EWM_CTRL_INEN_SHIFT)) & EWM_CTRL_INEN_MASK) |
#define | EWM_CTRL_INTEN_MASK (0x8U) |
#define | EWM_CTRL_INTEN_SHIFT (3U) |
#define | EWM_CTRL_INTEN(x) (((uint8_t)(((uint8_t)(x)) << EWM_CTRL_INTEN_SHIFT)) & EWM_CTRL_INTEN_MASK) |
#define | PWM_CTRL_DBLEN_MASK (0x1U) |
#define | PWM_CTRL_DBLEN_SHIFT (0U) |
#define | PWM_CTRL_DBLEN(x) (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_DBLEN_SHIFT)) & PWM_CTRL_DBLEN_MASK) |
#define | PWM_CTRL_DBLX_MASK (0x2U) |
#define | PWM_CTRL_DBLX_SHIFT (1U) |
#define | PWM_CTRL_DBLX(x) (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_DBLX_SHIFT)) & PWM_CTRL_DBLX_MASK) |
#define | PWM_CTRL_LDMOD_MASK (0x4U) |
#define | PWM_CTRL_LDMOD_SHIFT (2U) |
#define | PWM_CTRL_LDMOD(x) (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_LDMOD_SHIFT)) & PWM_CTRL_LDMOD_MASK) |
#define | PWM_CTRL_PRSC_MASK (0x70U) |
#define | PWM_CTRL_PRSC_SHIFT (4U) |
#define | PWM_CTRL_PRSC(x) (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_PRSC_SHIFT)) & PWM_CTRL_PRSC_MASK) |
#define | PWM_CTRL_DT_MASK (0x300U) |
#define | PWM_CTRL_DT_SHIFT (8U) |
#define | PWM_CTRL_DT(x) (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_DT_SHIFT)) & PWM_CTRL_DT_MASK) |
#define | PWM_CTRL_FULL_MASK (0x400U) |
#define | PWM_CTRL_FULL_SHIFT (10U) |
#define | PWM_CTRL_FULL(x) (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_FULL_SHIFT)) & PWM_CTRL_FULL_MASK) |
#define | PWM_CTRL_HALF_MASK (0x800U) |
#define | PWM_CTRL_HALF_SHIFT (11U) |
#define | PWM_CTRL_HALF(x) (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_HALF_SHIFT)) & PWM_CTRL_HALF_MASK) |
#define | PWM_CTRL_LDFQ_MASK (0xF000U) |
#define | PWM_CTRL_LDFQ_SHIFT (12U) |
#define | PWM_CTRL_LDFQ(x) (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_LDFQ_SHIFT)) & PWM_CTRL_LDFQ_MASK) |
WTR - Watchdog Timeout Register | |
#define | ENC_WTR_WDOG_MASK (0xFFFFU) |
#define | ENC_WTR_WDOG_SHIFT (0U) |
#define | ENC_WTR_WDOG(x) (((uint16_t)(((uint16_t)(x)) << ENC_WTR_WDOG_SHIFT)) & ENC_WTR_WDOG_MASK) |
REV - Revolution Counter Register | |
#define | ENC_REV_REV_MASK (0xFFFFU) |
#define | ENC_REV_REV_SHIFT (0U) |
#define | ENC_REV_REV(x) (((uint16_t)(((uint16_t)(x)) << ENC_REV_REV_SHIFT)) & ENC_REV_REV_MASK) |
TST - Test Register | |
#define | ENC_TST_TEST_COUNT_MASK (0xFFU) |
#define | ENC_TST_TEST_COUNT_SHIFT (0U) |
#define | ENC_TST_TEST_COUNT(x) (((uint16_t)(((uint16_t)(x)) << ENC_TST_TEST_COUNT_SHIFT)) & ENC_TST_TEST_COUNT_MASK) |
#define | ENC_TST_TEST_PERIOD_MASK (0x1F00U) |
#define | ENC_TST_TEST_PERIOD_SHIFT (8U) |
#define | ENC_TST_TEST_PERIOD(x) (((uint16_t)(((uint16_t)(x)) << ENC_TST_TEST_PERIOD_SHIFT)) & ENC_TST_TEST_PERIOD_MASK) |
#define | ENC_TST_QDN_MASK (0x2000U) |
#define | ENC_TST_QDN_SHIFT (13U) |
#define | ENC_TST_QDN(x) (((uint16_t)(((uint16_t)(x)) << ENC_TST_QDN_SHIFT)) & ENC_TST_QDN_MASK) |
#define | ENC_TST_TCE_MASK (0x4000U) |
#define | ENC_TST_TCE_SHIFT (14U) |
#define | ENC_TST_TCE(x) (((uint16_t)(((uint16_t)(x)) << ENC_TST_TCE_SHIFT)) & ENC_TST_TCE_MASK) |
#define | ENC_TST_TEN_MASK (0x8000U) |
#define | ENC_TST_TEN_SHIFT (15U) |
#define | ENC_TST_TEN(x) (((uint16_t)(((uint16_t)(x)) << ENC_TST_TEN_SHIFT)) & ENC_TST_TEN_MASK) |
CTRL2 - Control 2 register | |
#define | ENC_CTRL2_UPDHLD_MASK (0x1U) |
#define | ENC_CTRL2_UPDHLD_SHIFT (0U) |
#define | ENC_CTRL2_UPDHLD(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_UPDHLD_SHIFT)) & ENC_CTRL2_UPDHLD_MASK) |
#define | ENC_CTRL2_UPDPOS_MASK (0x2U) |
#define | ENC_CTRL2_UPDPOS_SHIFT (1U) |
#define | ENC_CTRL2_UPDPOS(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_UPDPOS_SHIFT)) & ENC_CTRL2_UPDPOS_MASK) |
#define | ENC_CTRL2_MOD_MASK (0x4U) |
#define | ENC_CTRL2_MOD_SHIFT (2U) |
#define | ENC_CTRL2_MOD(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_MOD_SHIFT)) & ENC_CTRL2_MOD_MASK) |
#define | ENC_CTRL2_DIR_MASK (0x8U) |
#define | ENC_CTRL2_DIR_SHIFT (3U) |
#define | ENC_CTRL2_DIR(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_DIR_SHIFT)) & ENC_CTRL2_DIR_MASK) |
#define | ENC_CTRL2_RUIE_MASK (0x10U) |
#define | ENC_CTRL2_RUIE_SHIFT (4U) |
#define | ENC_CTRL2_RUIE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_RUIE_SHIFT)) & ENC_CTRL2_RUIE_MASK) |
#define | ENC_CTRL2_RUIRQ_MASK (0x20U) |
#define | ENC_CTRL2_RUIRQ_SHIFT (5U) |
#define | ENC_CTRL2_RUIRQ(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_RUIRQ_SHIFT)) & ENC_CTRL2_RUIRQ_MASK) |
#define | ENC_CTRL2_ROIE_MASK (0x40U) |
#define | ENC_CTRL2_ROIE_SHIFT (6U) |
#define | ENC_CTRL2_ROIE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_ROIE_SHIFT)) & ENC_CTRL2_ROIE_MASK) |
#define | ENC_CTRL2_ROIRQ_MASK (0x80U) |
#define | ENC_CTRL2_ROIRQ_SHIFT (7U) |
#define | ENC_CTRL2_ROIRQ(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_ROIRQ_SHIFT)) & ENC_CTRL2_ROIRQ_MASK) |
#define | ENC_CTRL2_REVMOD_MASK (0x100U) |
#define | ENC_CTRL2_REVMOD_SHIFT (8U) |
#define | ENC_CTRL2_REVMOD(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_REVMOD_SHIFT)) & ENC_CTRL2_REVMOD_MASK) |
#define | ENC_CTRL2_OUTCTL_MASK (0x200U) |
#define | ENC_CTRL2_OUTCTL_SHIFT (9U) |
#define | ENC_CTRL2_OUTCTL(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_OUTCTL_SHIFT)) & ENC_CTRL2_OUTCTL_MASK) |
#define | ENC_CTRL2_SABIE_MASK (0x400U) |
#define | ENC_CTRL2_SABIE_SHIFT (10U) |
#define | ENC_CTRL2_SABIE(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_SABIE_SHIFT)) & ENC_CTRL2_SABIE_MASK) |
#define | ENC_CTRL2_SABIRQ_MASK (0x800U) |
#define | ENC_CTRL2_SABIRQ_SHIFT (11U) |
#define | ENC_CTRL2_SABIRQ(x) (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_SABIRQ_SHIFT)) & ENC_CTRL2_SABIRQ_MASK) |
UMOD - Upper Modulus Register | |
#define | ENC_UMOD_MOD_MASK (0xFFFFU) |
#define | ENC_UMOD_MOD_SHIFT (0U) |
#define | ENC_UMOD_MOD(x) (((uint16_t)(((uint16_t)(x)) << ENC_UMOD_MOD_SHIFT)) & ENC_UMOD_MOD_MASK) |
LMOD - Lower Modulus Register | |
#define | ENC_LMOD_MOD_MASK (0xFFFFU) |
#define | ENC_LMOD_MOD_SHIFT (0U) |
#define | ENC_LMOD_MOD(x) (((uint16_t)(((uint16_t)(x)) << ENC_LMOD_MOD_SHIFT)) & ENC_LMOD_MOD_MASK) |
#define ENC_CTRL2_DIR | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_DIR_SHIFT)) & ENC_CTRL2_DIR_MASK) |
DIR - Count Direction Flag 0b0..Last count was in the down direction 0b1..Last count was in the up direction
#define ENC_CTRL2_MOD | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_MOD_SHIFT)) & ENC_CTRL2_MOD_MASK) |
MOD - Enable Modulo Counting 0b0..Disable modulo counting 0b1..Enable modulo counting
#define ENC_CTRL2_OUTCTL | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_OUTCTL_SHIFT)) & ENC_CTRL2_OUTCTL_MASK) |
OUTCTL - Output Control 0b0..POSMATCH pulses when a match occurs between the position counters (POS) and the compare value (COMP). 0b1..POSMATCH pulses when the UPOS, LPOS, REV, or POSD registers are read.
#define ENC_CTRL2_REVMOD | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_REVMOD_SHIFT)) & ENC_CTRL2_REVMOD_MASK) |
REVMOD - Revolution Counter Modulus Enable 0b0..Use INDEX pulse to increment/decrement revolution counter (REV). 0b1..Use modulus counting roll-over/under to increment/decrement revolution counter (REV).
#define ENC_CTRL2_ROIE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_ROIE_SHIFT)) & ENC_CTRL2_ROIE_MASK) |
ROIE - Roll-over Interrupt Enable 0b0..Roll-over interrupt is disabled 0b1..Roll-over interrupt is enabled
#define ENC_CTRL2_ROIRQ | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_ROIRQ_SHIFT)) & ENC_CTRL2_ROIRQ_MASK) |
ROIRQ - Roll-over Interrupt Request 0b0..No roll-over has occurred 0b1..Roll-over has occurred
#define ENC_CTRL2_RUIE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_RUIE_SHIFT)) & ENC_CTRL2_RUIE_MASK) |
RUIE - Roll-under Interrupt Enable 0b0..Roll-under interrupt is disabled 0b1..Roll-under interrupt is enabled
#define ENC_CTRL2_RUIRQ | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_RUIRQ_SHIFT)) & ENC_CTRL2_RUIRQ_MASK) |
RUIRQ - Roll-under Interrupt Request 0b0..No roll-under has occurred 0b1..Roll-under has occurred
#define ENC_CTRL2_SABIE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_SABIE_SHIFT)) & ENC_CTRL2_SABIE_MASK) |
SABIE - Simultaneous PHASEA and PHASEB Change Interrupt Enable 0b0..Simultaneous PHASEA and PHASEB change interrupt disabled. 0b1..Simultaneous PHASEA and PHASEB change interrupt enabled.
#define ENC_CTRL2_SABIRQ | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_SABIRQ_SHIFT)) & ENC_CTRL2_SABIRQ_MASK) |
SABIRQ - Simultaneous PHASEA and PHASEB Change Interrupt Request 0b0..No simultaneous change of PHASEA and PHASEB has occurred. 0b1..A simultaneous change of PHASEA and PHASEB has occurred.
#define ENC_CTRL2_UPDHLD | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_UPDHLD_SHIFT)) & ENC_CTRL2_UPDHLD_MASK) |
UPDHLD - Update Hold Registers 0b0..Disable updates of hold registers on rising edge of TRIGGER 0b1..Enable updates of hold registers on rising edge of TRIGGER
#define ENC_CTRL2_UPDPOS | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL2_UPDPOS_SHIFT)) & ENC_CTRL2_UPDPOS_MASK) |
UPDPOS - Update Position Registers 0b0..No action for POSD, REV, UPOS and LPOS on rising edge of TRIGGER 0b1..Clear POSD, REV, UPOS and LPOS on rising edge of TRIGGER
#define ENC_CTRL_CMPIE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_CMPIE_SHIFT)) & ENC_CTRL_CMPIE_MASK) |
CMPIE - Compare Interrupt Enable 0b0..Compare interrupt is disabled 0b1..Compare interrupt is enabled
#define ENC_CTRL_CMPIRQ | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_CMPIRQ_SHIFT)) & ENC_CTRL_CMPIRQ_MASK) |
CMPIRQ - Compare Interrupt Request 0b0..No match has occurred 0b1..COMP match has occurred
#define ENC_CTRL_DIE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_DIE_SHIFT)) & ENC_CTRL_DIE_MASK) |
DIE - Watchdog Timeout Interrupt Enable 0b0..Watchdog timer interrupt is disabled 0b1..Watchdog timer interrupt is enabled
#define ENC_CTRL_DIRQ | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_DIRQ_SHIFT)) & ENC_CTRL_DIRQ_MASK) |
DIRQ - Watchdog Timeout Interrupt Request 0b0..No interrupt has occurred 0b1..Watchdog timeout interrupt has occurred
#define ENC_CTRL_HIE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_HIE_SHIFT)) & ENC_CTRL_HIE_MASK) |
HIE - HOME Interrupt Enable 0b0..Disable HOME interrupts 0b1..Enable HOME interrupts
#define ENC_CTRL_HIP | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_HIP_SHIFT)) & ENC_CTRL_HIP_MASK) |
HIP - Enable HOME to Initialize Position Counters UPOS and LPOS 0b0..No action 0b1..HOME signal initializes the position counter
#define ENC_CTRL_HIRQ | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_HIRQ_SHIFT)) & ENC_CTRL_HIRQ_MASK) |
HIRQ - HOME Signal Transition Interrupt Request 0b0..No interrupt 0b1..HOME signal transition interrupt request
#define ENC_CTRL_HNE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_HNE_SHIFT)) & ENC_CTRL_HNE_MASK) |
HNE - Use Negative Edge of HOME Input 0b0..Use positive going edge-to-trigger initialization of position counters UPOS and LPOS 0b1..Use negative going edge-to-trigger initialization of position counters UPOS and LPOS
#define ENC_CTRL_PH1 | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_PH1_SHIFT)) & ENC_CTRL_PH1_MASK) |
PH1 - Enable Signal Phase Count Mode 0b0..Use standard quadrature decoder where PHASEA and PHASEB represent a two phase quadrature signal. 0b1..Bypass the quadrature decoder. A positive transition of the PHASEA input generates a count signal. The PHASEB input and the REV bit control the counter direction. If CTRL[REV] = 0, PHASEB = 0, then count up If CTRL[REV] = 0, PHASEB = 1, then count down If CTRL[REV] = 1, PHASEB = 0, then count down If CTRL[REV] = 1, PHASEB = 1, then count up
#define ENC_CTRL_REV | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_REV_SHIFT)) & ENC_CTRL_REV_MASK) |
REV - Enable Reverse Direction Counting 0b0..Count normally 0b1..Count in the reverse direction
#define ENC_CTRL_SWIP | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_SWIP_SHIFT)) & ENC_CTRL_SWIP_MASK) |
SWIP - Software Triggered Initialization of Position Counters UPOS and LPOS 0b0..No action 0b1..Initialize position counter
#define ENC_CTRL_WDE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_WDE_SHIFT)) & ENC_CTRL_WDE_MASK) |
WDE - Watchdog Enable 0b0..Watchdog timer is disabled 0b1..Watchdog timer is enabled
#define ENC_CTRL_XIE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_XIE_SHIFT)) & ENC_CTRL_XIE_MASK) |
XIE - INDEX Pulse Interrupt Enable 0b0..INDEX pulse interrupt is disabled 0b1..INDEX pulse interrupt is enabled
#define ENC_CTRL_XIP | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_XIP_SHIFT)) & ENC_CTRL_XIP_MASK) |
XIP - INDEX Triggered Initialization of Position Counters UPOS and LPOS 0b0..No action 0b1..INDEX pulse initializes the position counter
#define ENC_CTRL_XIRQ | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_XIRQ_SHIFT)) & ENC_CTRL_XIRQ_MASK) |
XIRQ - INDEX Pulse Interrupt Request 0b0..No interrupt has occurred 0b1..INDEX pulse interrupt has occurred
#define ENC_CTRL_XNE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_CTRL_XNE_SHIFT)) & ENC_CTRL_XNE_MASK) |
XNE - Use Negative Edge of INDEX Pulse 0b0..Use positive transition edge of INDEX pulse 0b1..Use negative transition edge of INDEX pulse
#define ENC_TST_QDN | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_TST_QDN_SHIFT)) & ENC_TST_QDN_MASK) |
QDN - Quadrature Decoder Negative Signal 0b0..Leaves quadrature decoder signal in a positive direction 0b1..Generates a negative quadrature decoder signal
#define ENC_TST_TCE | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_TST_TCE_SHIFT)) & ENC_TST_TCE_MASK) |
TCE - Test Counter Enable 0b0..Test count is not enabled 0b1..Test count is enabled
#define ENC_TST_TEN | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << ENC_TST_TEN_SHIFT)) & ENC_TST_TEN_MASK) |
TEN - Test Mode Enable 0b0..Test module is not enabled 0b1..Test module is enabled
#define PWM_CTRL_DBLEN | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_DBLEN_SHIFT)) & PWM_CTRL_DBLEN_MASK) |
DBLEN - Double Switching Enable 0b0..Double switching disabled. 0b1..Double switching enabled.
#define PWM_CTRL_DBLX | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_DBLX_SHIFT)) & PWM_CTRL_DBLX_MASK) |
DBLX - PWMX Double Switching Enable 0b0..PWMX double pulse disabled. 0b1..PWMX double pulse enabled.
#define PWM_CTRL_FULL | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_FULL_SHIFT)) & PWM_CTRL_FULL_MASK) |
FULL - Full Cycle Reload 0b0..Full-cycle reloads disabled. 0b1..Full-cycle reloads enabled.
#define PWM_CTRL_HALF | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_HALF_SHIFT)) & PWM_CTRL_HALF_MASK) |
HALF - Half Cycle Reload 0b0..Half-cycle reloads disabled. 0b1..Half-cycle reloads enabled.
#define PWM_CTRL_LDFQ | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_LDFQ_SHIFT)) & PWM_CTRL_LDFQ_MASK) |
LDFQ - Load Frequency 0b0000..Every PWM opportunity 0b0001..Every 2 PWM opportunities 0b0010..Every 3 PWM opportunities 0b0011..Every 4 PWM opportunities 0b0100..Every 5 PWM opportunities 0b0101..Every 6 PWM opportunities 0b0110..Every 7 PWM opportunities 0b0111..Every 8 PWM opportunities 0b1000..Every 9 PWM opportunities 0b1001..Every 10 PWM opportunities 0b1010..Every 11 PWM opportunities 0b1011..Every 12 PWM opportunities 0b1100..Every 13 PWM opportunities 0b1101..Every 14 PWM opportunities 0b1110..Every 15 PWM opportunities 0b1111..Every 16 PWM opportunities
#define PWM_CTRL_LDMOD | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_LDMOD_SHIFT)) & PWM_CTRL_LDMOD_MASK) |
LDMOD - Load Mode Select 0b0..Buffered registers of this submodule are loaded and take effect at the next PWM reload if MCTRL0[LDOK] is set. 0b1..Buffered registers of this submodule are loaded and take effect immediately upon MCTRL0[LDOK] being set. In this case it is not necessary to set CTRL[FULL] or CTRL[HALF].
#define PWM_CTRL_PRSC | ( | x | ) | (((uint16_t)(((uint16_t)(x)) << PWM_CTRL_PRSC_SHIFT)) & PWM_CTRL_PRSC_MASK) |
PRSC - Prescaler 0b000..PWM clock frequency = fclk 0b001..PWM clock frequency = fclk/2 0b010..PWM clock frequency = fclk/4 0b011..PWM clock frequency = fclk/8 0b100..PWM clock frequency = fclk/16 0b101..PWM clock frequency = fclk/32 0b110..PWM clock frequency = fclk/64 0b111..PWM clock frequency = fclk/128