ATY_LIB V2_102_230218
ATY_LIB for general devices or ALGO
 
Loading...
Searching...
No Matches
fw_pwm.h File Reference
#include "fw_conf.h"
#include "fw_types.h"

Go to the source code of this file.

Macros

#define PWMA_SetPrescaler(__16BIT_VAL__)
 
#define PWMA_SetPeriod(__16BIT_VAL__)
 
#define PWMA_SetOverallState(__STATE__)   SFRX_ASSIGN(PWMA_BKR, 7, (__STATE__))
 
#define PWMA_SetPinOutputState(__PINS__, __STATE__)
 
#define PWMA_SetPinBrakeControl(__PINS__, __STATE__)
 
#define PWMA_SetAutoReloadPreload(__STATE__)   SFRX_ASSIGN(PWMA_CR1, 7, (__STATE__))
 
#define PWMA_SetEdgeAlignment(__ALIGN__)
 
#define PWMA_SetCounterDirection(__DIR__)   SFRX_ASSIGN(PWMA_CR1, 4, (__DIR__))
 
#define PWMA_SetCounterOnePulse(__STATE__)   SFRX_ASSIGN(PWMA_CR1, 3, (__STATE__))
 
#define PWMA_SetUpdateEventSource(__STATE__)   SFRX_ASSIGN(PWMA_CR1, 2, (__STATE__))
 
#define PWMA_SetNonUpdateEvent(__STATE__)   SFRX_ASSIGN(PWMA_CR1, 1, (__STATE__))
 
#define PWMA_SetCounterState(__STATE__)   SFRX_ASSIGN(PWMA_CR1, 0, (__STATE__))
 
#define PWMA_PWM1_SetPortState(__STATE__)   SFRX_ASSIGN(PWMA_CCER1, 0, (__STATE__))
 
#define PWMA_PWM1_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMA_CCER1, 1, (__POLAR__))
 
#define PWMA_PWM1N_SetPortState(__STATE__)   SFRX_ASSIGN(PWMA_CCER1, 2, (__STATE__))
 
#define PWMA_PWM1N_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMA_CCER1, 3, (__POLAR__))
 
#define PWMA_PWM2_SetPortState(__STATE__)   SFRX_ASSIGN(PWMA_CCER1, 4, (__STATE__))
 
#define PWMA_PWM2_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMA_CCER1, 5, (__POLAR__))
 
#define PWMA_PWM2N_SetPortState(__STATE__)   SFRX_ASSIGN(PWMA_CCER1, 6, (__STATE__))
 
#define PWMA_PWM2N_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMA_CCER1, 7, (__POLAR__))
 
#define PWMA_PWM3_SetPortState(__STATE__)   SFRX_ASSIGN(PWMA_CCER2, 0, (__STATE__))
 
#define PWMA_PWM3_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMA_CCER2, 1, (__POLAR__))
 
#define PWMA_PWM3N_SetPortState(__STATE__)   SFRX_ASSIGN(PWMA_CCER2, 2, (__STATE__))
 
#define PWMA_PWM3N_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMA_CCER2, 3, (__POLAR__))
 
#define PWMA_PWM4_SetPortState(__STATE__)   SFRX_ASSIGN(PWMA_CCER2, 4, (__STATE__))
 
#define PWMA_PWM4_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMA_CCER2, 5, (__POLAR__))
 
#define PWMA_PWM4N_SetPortState(__STATE__)   SFRX_ASSIGN(PWMA_CCER2, 6, (__STATE__))
 
#define PWMA_PWM4N_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMA_CCER2, 7, (__POLAR__))
 
#define PWMA_PWM1_SetPortDirection(__PORT_DIR__)
 
#define PWMA_PWM2_SetPortDirection(__PORT_DIR__)
 
#define PWMA_PWM3_SetPortDirection(__PORT_DIR__)
 
#define PWMA_PWM4_SetPortDirection(__PORT_DIR__)
 
#define PWMA_PWM1_SetComparePreload(__STATE__)   SFRX_ASSIGN(PWMA_CCMR1, 3, (__STATE__))
 
#define PWMA_PWM2_SetComparePreload(__STATE__)   SFRX_ASSIGN(PWMA_CCMR2, 3, (__STATE__))
 
#define PWMA_PWM3_SetComparePreload(__STATE__)   SFRX_ASSIGN(PWMA_CCMR3, 3, (__STATE__))
 
#define PWMA_PWM4_SetComparePreload(__STATE__)   SFRX_ASSIGN(PWMA_CCMR4, 3, (__STATE__))
 
#define PWMA_PWM1_ConfigOutputMode(__MODE__)
 
#define PWMA_PWM2_ConfigOutputMode(__MODE__)
 
#define PWMA_PWM3_ConfigOutputMode(__MODE__)
 
#define PWMA_PWM4_ConfigOutputMode(__MODE__)
 
#define PWMA_PWM1_SetCaptureCompareValue(__16BIT_VAL__)
 
#define PWMA_PWM2_SetCaptureCompareValue(__16BIT_VAL__)
 
#define PWMA_PWM3_SetCaptureCompareValue(__16BIT_VAL__)
 
#define PWMA_PWM4_SetCaptureCompareValue(__16BIT_VAL__)
 
#define PWMA_PWM1_SetPort(__ALTER_PORT__)
 
#define PWMA_PWM2_SetPort(__ALTER_PORT__)
 
#define PWMA_PWM3_SetPort(__ALTER_PORT__)
 
#define PWMA_PWM4_SetPort(__ALTER_PORT__)
 
#define PWMB_SetPrescaler(__16BIT_VAL__)
 
#define PWMB_SetPeriod(__16BIT_VAL__)
 
#define PWMB_SetOverallState(__STATE__)   SFRX_ASSIGN(PWMB_BKR, 7, (__STATE__))
 
#define PWMB_SetPinOutputState(__PINS__, __STATE__)
 
#define PWMB_SetPinBrakeControl(__PINS__, __STATE__)
 
#define PWMB_SetAutoReloadPreload(__STATE__)   SFRX_ASSIGN(PWMB_CR1, 7, (__STATE__))
 
#define PWMB_SetEdgeAlignment(__ALIGN__)
 
#define PWMB_SetCounterDirection(__DIR__)   SFRX_ASSIGN(PWMB_CR1, 4, (__DIR__))
 
#define PWMB_SetCounterOnePulse(__STATE__)   SFRX_ASSIGN(PWMB_CR1, 3, (__STATE__))
 
#define PWMB_SetUpdateEventSource(__STATE__)   SFRX_ASSIGN(PWMB_CR1, 2, (__STATE__))
 
#define PWMB_SetNonUpdateEvent(__STATE__)   SFRX_ASSIGN(PWMB_CR1, 1, (__STATE__))
 
#define PWMB_SetCounterState(__STATE__)   SFRX_ASSIGN(PWMB_CR1, 0, (__STATE__))
 
#define PWMB_PWM1_SetPortState(__STATE__)   SFRX_ASSIGN(PWMB_CCER1, 0, (__STATE__))
 
#define PWMB_PWM1_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMB_CCER1, 1, (__POLAR__))
 
#define PWMB_PWM2_SetPortState(__STATE__)   SFRX_ASSIGN(PWMB_CCER1, 4, (__STATE__))
 
#define PWMB_PWM2_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMB_CCER1, 5, (__POLAR__))
 
#define PWMB_PWM3_SetPortState(__STATE__)   SFRX_ASSIGN(PWMB_CCER2, 0, (__STATE__))
 
#define PWMB_PWM3_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMB_CCER2, 1, (__POLAR__))
 
#define PWMB_PWM4_SetPortState(__STATE__)   SFRX_ASSIGN(PWMB_CCER2, 4, (__STATE__))
 
#define PWMB_PWM4_SetPortPolar(__POLAR__)   SFRX_ASSIGN(PWMB_CCER2, 5, (__POLAR__))
 
#define PWMB_PWM1_SetPortDirection(__PORT_DIR__)
 
#define PWMB_PWM2_SetPortDirection(__PORT_DIR__)
 
#define PWMB_PWM3_SetPortDirection(__PORT_DIR__)
 
#define PWMB_PWM4_SetPortDirection(__PORT_DIR__)
 
#define PWMB_PWM1_SetComparePreload(__STATE__)   SFRX_ASSIGN(PWMB_CCMR1, 3, (__STATE__))
 
#define PWMB_PWM2_SetComparePreload(__STATE__)   SFRX_ASSIGN(PWMB_CCMR2, 3, (__STATE__))
 
#define PWMB_PWM3_SetComparePreload(__STATE__)   SFRX_ASSIGN(PWMB_CCMR3, 3, (__STATE__))
 
#define PWMB_PWM4_SetComparePreload(__STATE__)   SFRX_ASSIGN(PWMB_CCMR4, 3, (__STATE__))
 
#define PWMB_PWM1_ConfigOutputMode(__MODE__)
 
#define PWMB_PWM2_ConfigOutputMode(__MODE__)
 
#define PWMB_PWM3_ConfigOutputMode(__MODE__)
 
#define PWMB_PWM4_ConfigOutputMode(__MODE__)
 
#define PWMB_PWM1_SetCaptureCompareValue(__16BIT_VAL__)
 
#define PWMB_PWM2_SetCaptureCompareValue(__16BIT_VAL__)
 
#define PWMB_PWM3_SetCaptureCompareValue(__16BIT_VAL__)
 
#define PWMB_PWM4_SetCaptureCompareValue(__16BIT_VAL__)
 
#define PWMB_PWM1_SetPort(__ALTER_PORT__)
 
#define PWMB_PWM2_SetPort(__ALTER_PORT__)
 
#define PWMB_PWM3_SetPort(__ALTER_PORT__)
 
#define PWMB_PWM4_SetPort(__ALTER_PORT__)
 

Enumerations

enum  PWM_Pin_t {
  PWM_Pin_1 = B00000001 , PWM_Pin_1N = B00000010 , PWM_Pin_2 = B00000100 , PWM_Pin_2N = B00001000 ,
  PWM_Pin_3 = B00010000 , PWM_Pin_3N = B00100000 , PWM_Pin_4 = B01000000 , PWM_Pin_4N = B10000000 ,
  PWMA_Pin_All = B11111111 , PWMB_Pin_All = B01010101
}
 
enum  PWM_EdgeAlignment_t { PWM_EdgeAlignment_Side = 0x00 , PWM_EdgeAlignment_CenterDown = 0x01 , PWM_EdgeAlignment_CenterUp = 0x10 , PWM_EdgeAlignment_CenterBoth = 0x11 }
 
enum  PWM_CounterDirection_t { PWM_CounterDirection_Up = 0x00 , PWM_CounterDirection_Down = 0x01 }
 
enum  PWM_OutputMode_t {
  PWM_OutputMode_NoAction = 0x00 , PWM_OutputMode_TriggerHigh = 0x01 , PWM_OutputMode_TriggerLow = 0x02 , PWM_OutputMode_TriggerToggle = 0x03 ,
  PWM_OutputMode_AlwaysLow = 0x04 , PWM_OutputMode_AlwaysHigh = 0x05 , PWM_OutputMode_PWM_HighIfLess = 0x06 , PWM_OutputMode_PWM_LowIfLess = 0x07
}
 
enum  PWMA_PortDirection_t { PWMA_PortDirOut = 0x00 , PWMA_PortDirIn_TI1FP1_TI2FP2_TI3FP3_TI4FP4 = 0x01 , PWMA_PortDirIn_TI2FP1_TI1FP2_TI4FP3_TI3FP4 = 0x10 , PWMA_PortDirInTRC = 0x11 }
 
enum  PWMA_PWM1_AlterPort_t { PWMA_PWM1_AlterPort_P10_P11 = 0x00 , PWMA_PWM1_AlterPort_P20_P21 = 0x01 , PWMA_PWM1_AlterPort_P60_P61 = 0x10 }
 
enum  PWMA_PWM2_AlterPort_t { PWMA_PWM2_AlterPort_P12P54_P13 = 0x00 , PWMA_PWM2_AlterPort_P22_P23 = 0x01 , PWMA_PWM2_AlterPort_P62_P63 = 0x10 }
 
enum  PWMA_PWM3_AlterPort_t { PWMA_PWM3_AlterPort_P14_P15 = 0x00 , PWMA_PWM3_AlterPort_P24_P25 = 0x01 , PWMA_PWM3_AlterPort_P64_P65 = 0x10 }
 
enum  PWMA_PWM4_AlterPort_t { PWMA_PWM4_AlterPort_P16_P17 = 0x00 , PWMA_PWM4_AlterPort_P26_P27 = 0x01 , PWMA_PWM4_AlterPort_P66_P67 = 0x10 , PWMA_PWM4_AlterPort_P34_P33 = 0x11 }
 
enum  PWMB_PortDirection_t { PWMB_PortDirOut = 0x00 , PWMB_PortDirIn_TI5FP5_TI6FP6_TI7FP7_TI8FP8 = 0x01 , PWMB_PortDirIn_TI6FP5_TI5FP6_TI8FP7_TI7FP8 = 0x10 , PWMB_PortDirInTRC = 0x11 }
 
enum  PWMB_PWM5_AlterPort_t { PWMB_PWM5_AlterPort_P20 = 0x00 , PWMB_PWM5_AlterPort_P17 = 0x01 , PWMB_PWM5_AlterPort_P00 = 0x10 , PWMB_PWM5_AlterPort_P74 = 0x11 }
 
enum  PWMB_PWM6_AlterPort_t { PWMB_PWM6_AlterPort_P21 = 0x00 , PWMB_PWM6_AlterPort_P54 = 0x01 , PWMB_PWM6_AlterPort_P01 = 0x10 , PWMB_PWM6_AlterPort_P75 = 0x11 }
 
enum  PWMB_PWM7_AlterPort_t { PWMB_PWM7_AlterPort_P22 = 0x00 , PWMB_PWM7_AlterPort_P33 = 0x01 , PWMB_PWM7_AlterPort_P02 = 0x10 , PWMB_PWM7_AlterPort_P76 = 0x11 }
 
enum  PWMB_PWM8_AlterPort_t { PWMB_PWM8_AlterPort_P23 = 0x00 , PWMB_PWM8_AlterPort_P34 = 0x01 , PWMB_PWM8_AlterPort_P03 = 0x10 , PWMB_PWM8_AlterPort_P77 = 0x11 }
 

Macro Definition Documentation

◆ PWMA_PWM1_ConfigOutputMode

#define PWMA_PWM1_ConfigOutputMode (   __MODE__)
Value:
do{ \
SFRX_ON();(PWMA_CCMR1 = PWMA_CCMR1 & ~(0x07 << 4) | ((__MODE__) << 4)); SFRX_OFF(); \
}while(0)
#define PWMA_CCMR1
Definition: fw_reg_stc8h.h:269
#define SFRX_OFF()
Definition: fw_types.h:113

Configurate PWMA.1 - PWMA.4 out mode

Definition at line 216 of file fw_pwm.h.

◆ PWMA_PWM1_SetCaptureCompareValue

#define PWMA_PWM1_SetCaptureCompareValue (   __16BIT_VAL__)
Value:
do{ \
SFRX_ON(); \
(PWMA_CCR1H = ((__16BIT_VAL__) >> 8)); \
(PWMA_CCR1L = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMA_CCR1H
Definition: fw_reg_stc8h.h:286
#define PWMA_CCR1L
Definition: fw_reg_stc8h.h:287

Configurate PWMA.1 - PWMA.4 capture/comparison value, this will affect duty cycle

Definition at line 232 of file fw_pwm.h.

◆ PWMA_PWM1_SetComparePreload

#define PWMA_PWM1_SetComparePreload (   __STATE__)    SFRX_ASSIGN(PWMA_CCMR1, 3, (__STATE__))

PWMA.1 - PWMA.4 comparison value preload OFF/ON 0: New values will be written to PWMx_CCRx and take effect immediately 1: New values will be written to shadow register and loaded to PWMx_CCRx on next update event

Definition at line 208 of file fw_pwm.h.

◆ PWMA_PWM1_SetPort

#define PWMA_PWM1_SetPort (   __ALTER_PORT__)
Value:
do{ \
SFRX_ON();(PWMA_PS = PWMA_PS & ~(0x03 << 0) | ((__ALTER_PORT__) << 0)); SFRX_OFF(); \
}while(0)
#define PWMA_PS
Definition: fw_reg_stc8h.h:254

Definition at line 291 of file fw_pwm.h.

◆ PWMA_PWM1_SetPortDirection

#define PWMA_PWM1_SetPortDirection (   __PORT_DIR__)
Value:
do{ \
SFRX_ON();(PWMA_CCMR1 = PWMA_CCMR1 & ~(0x03 << 0) | ((__PORT_DIR__) << 0)); SFRX_OFF(); \
}while(0)

Definition at line 190 of file fw_pwm.h.

◆ PWMA_PWM1_SetPortPolar

#define PWMA_PWM1_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMA_CCER1, 1, (__POLAR__))

Definition at line 160 of file fw_pwm.h.

◆ PWMA_PWM1_SetPortState

#define PWMA_PWM1_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMA_CCER1, 0, (__STATE__))

PWMA.1 - PWMA.4 io polar and on/off state

Definition at line 159 of file fw_pwm.h.

◆ PWMA_PWM1N_SetPortPolar

#define PWMA_PWM1N_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMA_CCER1, 3, (__POLAR__))

Definition at line 162 of file fw_pwm.h.

◆ PWMA_PWM1N_SetPortState

#define PWMA_PWM1N_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMA_CCER1, 2, (__STATE__))

Definition at line 161 of file fw_pwm.h.

◆ PWMA_PWM2_ConfigOutputMode

#define PWMA_PWM2_ConfigOutputMode (   __MODE__)
Value:
do{ \
SFRX_ON();(PWMA_CCMR2 = PWMA_CCMR2 & ~(0x07 << 4) | ((__MODE__) << 4)); SFRX_OFF(); \
}while(0)
#define PWMA_CCMR2
Definition: fw_reg_stc8h.h:270

Definition at line 219 of file fw_pwm.h.

◆ PWMA_PWM2_SetCaptureCompareValue

#define PWMA_PWM2_SetCaptureCompareValue (   __16BIT_VAL__)
Value:
do{ \
SFRX_ON(); \
(PWMA_CCR2H = ((__16BIT_VAL__) >> 8)); \
(PWMA_CCR2L = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMA_CCR2L
Definition: fw_reg_stc8h.h:290
#define PWMA_CCR2H
Definition: fw_reg_stc8h.h:289

Definition at line 238 of file fw_pwm.h.

◆ PWMA_PWM2_SetComparePreload

#define PWMA_PWM2_SetComparePreload (   __STATE__)    SFRX_ASSIGN(PWMA_CCMR2, 3, (__STATE__))

Definition at line 209 of file fw_pwm.h.

◆ PWMA_PWM2_SetPort

#define PWMA_PWM2_SetPort (   __ALTER_PORT__)
Value:
do{ \
SFRX_ON();(PWMA_PS = PWMA_PS & ~(0x03 << 2) | ((__ALTER_PORT__) << 2)); SFRX_OFF(); \
}while(0)

Definition at line 294 of file fw_pwm.h.

◆ PWMA_PWM2_SetPortDirection

#define PWMA_PWM2_SetPortDirection (   __PORT_DIR__)
Value:
do{ \
SFRX_ON();(PWMA_CCMR2 = PWMA_CCMR2 & ~(0x03 << 0) | ((__PORT_DIR__) << 0)); SFRX_OFF(); \
}while(0)

Definition at line 193 of file fw_pwm.h.

◆ PWMA_PWM2_SetPortPolar

#define PWMA_PWM2_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMA_CCER1, 5, (__POLAR__))

Definition at line 165 of file fw_pwm.h.

◆ PWMA_PWM2_SetPortState

#define PWMA_PWM2_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMA_CCER1, 4, (__STATE__))

Definition at line 164 of file fw_pwm.h.

◆ PWMA_PWM2N_SetPortPolar

#define PWMA_PWM2N_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMA_CCER1, 7, (__POLAR__))

Definition at line 167 of file fw_pwm.h.

◆ PWMA_PWM2N_SetPortState

#define PWMA_PWM2N_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMA_CCER1, 6, (__STATE__))

Definition at line 166 of file fw_pwm.h.

◆ PWMA_PWM3_ConfigOutputMode

#define PWMA_PWM3_ConfigOutputMode (   __MODE__)
Value:
do{ \
SFRX_ON();(PWMA_CCMR3 = PWMA_CCMR3 & ~(0x07 << 4) | ((__MODE__) << 4)); SFRX_OFF(); \
}while(0)
#define PWMA_CCMR3
Definition: fw_reg_stc8h.h:271

Definition at line 222 of file fw_pwm.h.

◆ PWMA_PWM3_SetCaptureCompareValue

#define PWMA_PWM3_SetCaptureCompareValue (   __16BIT_VAL__)
Value:
do{ \
SFRX_ON(); \
(PWMA_CCR3H = ((__16BIT_VAL__) >> 8)); \
(PWMA_CCR3L = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMA_CCR3L
Definition: fw_reg_stc8h.h:293
#define PWMA_CCR3H
Definition: fw_reg_stc8h.h:292

Definition at line 244 of file fw_pwm.h.

◆ PWMA_PWM3_SetComparePreload

#define PWMA_PWM3_SetComparePreload (   __STATE__)    SFRX_ASSIGN(PWMA_CCMR3, 3, (__STATE__))

Definition at line 210 of file fw_pwm.h.

◆ PWMA_PWM3_SetPort

#define PWMA_PWM3_SetPort (   __ALTER_PORT__)
Value:
do{ \
SFRX_ON();(PWMA_PS = PWMA_PS & ~(0x03 << 4) | ((__ALTER_PORT__) << 4)); SFRX_OFF(); \
}while(0)

Definition at line 297 of file fw_pwm.h.

◆ PWMA_PWM3_SetPortDirection

#define PWMA_PWM3_SetPortDirection (   __PORT_DIR__)
Value:
do{ \
SFRX_ON();(PWMA_CCMR3 = PWMA_CCMR3 & ~(0x03 << 0) | ((__PORT_DIR__) << 0)); SFRX_OFF(); \
}while(0)

Definition at line 196 of file fw_pwm.h.

◆ PWMA_PWM3_SetPortPolar

#define PWMA_PWM3_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMA_CCER2, 1, (__POLAR__))

Definition at line 170 of file fw_pwm.h.

◆ PWMA_PWM3_SetPortState

#define PWMA_PWM3_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMA_CCER2, 0, (__STATE__))

Definition at line 169 of file fw_pwm.h.

◆ PWMA_PWM3N_SetPortPolar

#define PWMA_PWM3N_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMA_CCER2, 3, (__POLAR__))

Definition at line 172 of file fw_pwm.h.

◆ PWMA_PWM3N_SetPortState

#define PWMA_PWM3N_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMA_CCER2, 2, (__STATE__))

Definition at line 171 of file fw_pwm.h.

◆ PWMA_PWM4_ConfigOutputMode

#define PWMA_PWM4_ConfigOutputMode (   __MODE__)
Value:
do{ \
SFRX_ON();(PWMA_CCMR4 = PWMA_CCMR4 & ~(0x07 << 4) | ((__MODE__) << 4)); SFRX_OFF(); \
}while(0)
#define PWMA_CCMR4
Definition: fw_reg_stc8h.h:272

Definition at line 225 of file fw_pwm.h.

◆ PWMA_PWM4_SetCaptureCompareValue

#define PWMA_PWM4_SetCaptureCompareValue (   __16BIT_VAL__)
Value:
do{ \
SFRX_ON(); \
(PWMA_CCR4H = ((__16BIT_VAL__) >> 8)); \
(PWMA_CCR4L = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMA_CCR4H
Definition: fw_reg_stc8h.h:295
#define PWMA_CCR4L
Definition: fw_reg_stc8h.h:296

Definition at line 250 of file fw_pwm.h.

◆ PWMA_PWM4_SetComparePreload

#define PWMA_PWM4_SetComparePreload (   __STATE__)    SFRX_ASSIGN(PWMA_CCMR4, 3, (__STATE__))

Definition at line 211 of file fw_pwm.h.

◆ PWMA_PWM4_SetPort

#define PWMA_PWM4_SetPort (   __ALTER_PORT__)
Value:
do{ \
SFRX_ON();(PWMA_PS = PWMA_PS & ~(0x03 << 6) | ((__ALTER_PORT__) << 6)); SFRX_OFF(); \
}while(0)

Definition at line 300 of file fw_pwm.h.

◆ PWMA_PWM4_SetPortDirection

#define PWMA_PWM4_SetPortDirection (   __PORT_DIR__)
Value:
do{ \
SFRX_ON();(PWMA_CCMR4 = PWMA_CCMR4 & ~(0x03 << 0) | ((__PORT_DIR__) << 0)); SFRX_OFF(); \
}while(0)

Definition at line 199 of file fw_pwm.h.

◆ PWMA_PWM4_SetPortPolar

#define PWMA_PWM4_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMA_CCER2, 5, (__POLAR__))

Definition at line 175 of file fw_pwm.h.

◆ PWMA_PWM4_SetPortState

#define PWMA_PWM4_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMA_CCER2, 4, (__STATE__))

Definition at line 174 of file fw_pwm.h.

◆ PWMA_PWM4N_SetPortPolar

#define PWMA_PWM4N_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMA_CCER2, 7, (__POLAR__))

Definition at line 177 of file fw_pwm.h.

◆ PWMA_PWM4N_SetPortState

#define PWMA_PWM4N_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMA_CCER2, 6, (__STATE__))

Definition at line 176 of file fw_pwm.h.

◆ PWMA_SetAutoReloadPreload

#define PWMA_SetAutoReloadPreload (   __STATE__)    SFRX_ASSIGN(PWMA_CR1, 7, (__STATE__))

0: New period will be written to [PWMA_ARRH,PWMA_ARRL] and take effect immediately 1: New period will be written to shadow register and loaded to [PWMA_ARRH,PWMA_ARRL] on next update event

Definition at line 122 of file fw_pwm.h.

◆ PWMA_SetCounterDirection

#define PWMA_SetCounterDirection (   __DIR__)    SFRX_ASSIGN(PWMA_CR1, 4, (__DIR__))

0: count from 0 to [PWMA_ARRH,PWMA_ARRL], then send an event and restart from 0 1: count from [PWMA_ARRH,PWMA_ARRL] to 0, then send an event and restart from [PWMA_ARRH,PWMA_ARRL]

Definition at line 135 of file fw_pwm.h.

◆ PWMA_SetCounterOnePulse

#define PWMA_SetCounterOnePulse (   __STATE__)    SFRX_ASSIGN(PWMA_CR1, 3, (__STATE__))

0: counter continues when update event occurs 1: counter stops(reset CEN) when update event occurs

Definition at line 140 of file fw_pwm.h.

◆ PWMA_SetCounterState

#define PWMA_SetCounterState (   __STATE__)    SFRX_ASSIGN(PWMA_CR1, 0, (__STATE__))

0:stop counter, 1:start counter

Definition at line 154 of file fw_pwm.h.

◆ PWMA_SetEdgeAlignment

#define PWMA_SetEdgeAlignment (   __ALIGN__)
Value:
do{ \
SFRX_ON();(PWMA_CR1 = PWMA_CR1 & ~(0x03 << 5) | ((__ALIGN__) << 5));SFRX_OFF(); \
}while(0)
#define PWMA_CR1
Definition: fw_reg_stc8h.h:260

Turn off counter (call PWMA_SetCounterState()) before changing to different alignment

Definition at line 127 of file fw_pwm.h.

◆ PWMA_SetNonUpdateEvent

#define PWMA_SetNonUpdateEvent (   __STATE__)    SFRX_ASSIGN(PWMA_CR1, 1, (__STATE__))

0:enable update events, 1:disable update events

Definition at line 150 of file fw_pwm.h.

◆ PWMA_SetOverallState

#define PWMA_SetOverallState (   __STATE__)    SFRX_ASSIGN(PWMA_BKR, 7, (__STATE__))

Definition at line 102 of file fw_pwm.h.

◆ PWMA_SetPeriod

#define PWMA_SetPeriod (   __16BIT_VAL__)
Value:
do { \
SFRX_ON(); \
(PWMA_ARRH = ((__16BIT_VAL__) >> 8)); \
(PWMA_ARRL = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMA_ARRH
Definition: fw_reg_stc8h.h:282
#define PWMA_ARRL
Definition: fw_reg_stc8h.h:283

Definition at line 94 of file fw_pwm.h.

◆ PWMA_SetPinBrakeControl

#define PWMA_SetPinBrakeControl (   __PINS__,
  __STATE__ 
)
Value:
do { \
SFRX_ON(); \
PWMA_IOAUX = PWMA_IOAUX & ~(__PINS__) | (((__STATE__) & 0x01)? (__PINS__) : 0x00); \
SFRX_OFF(); \
} while(0)
#define PWMA_IOAUX
Definition: fw_reg_stc8h.h:255

Definition at line 112 of file fw_pwm.h.

◆ PWMA_SetPinOutputState

#define PWMA_SetPinOutputState (   __PINS__,
  __STATE__ 
)
Value:
do { \
SFRX_ON(); \
PWMA_ENO = PWMA_ENO & ~(__PINS__) | (((__STATE__) & 0x01)? (__PINS__) : 0x00); \
SFRX_OFF(); \
} while(0)
#define PWMA_ENO
Definition: fw_reg_stc8h.h:253

Definition at line 105 of file fw_pwm.h.

◆ PWMA_SetPrescaler

#define PWMA_SetPrescaler (   __16BIT_VAL__)
Value:
do { \
SFRX_ON(); \
(PWMA_PSCRH = ((__16BIT_VAL__) >> 8)); \
(PWMA_PSCRL = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMA_PSCRL
Definition: fw_reg_stc8h.h:280
#define PWMA_PSCRH
Definition: fw_reg_stc8h.h:279

PWM clock prescaler and auto-reload period

side alignment: Fpwm = SYSCLK / (PWMx_PSCR + 1) / (PWMx_ARR + 1) central alignment: Fpwm = SYSCLK / (PWMx_PSCR + 1) / PWMx_ARR / 2

Definition at line 87 of file fw_pwm.h.

◆ PWMA_SetUpdateEventSource

#define PWMA_SetUpdateEventSource (   __STATE__)    SFRX_ASSIGN(PWMA_CR1, 2, (__STATE__))

Work only when update events are enabled 0: An interrupt will be triggered by these events: counter overflow(upwards or downwards), soft set UG, timer/controller updates 1: An interrupt will be triggered(and set UIF=1) by counter overflow(upwards or downwards)

Definition at line 146 of file fw_pwm.h.

◆ PWMB_PWM1_ConfigOutputMode

#define PWMB_PWM1_ConfigOutputMode (   __MODE__)
Value:
do{ \
SFRX_ON();(PWMB_CCMR1 = PWMB_CCMR1 & ~(0x07 << 4) | ((__MODE__) << 4)); SFRX_OFF(); \
}while(0)
#define PWMB_CCMR1
Definition: fw_reg_stc8h.h:309

Configurate PWMB.1(PWM5) - PWMB.4(PWM8) output mode

Definition at line 439 of file fw_pwm.h.

◆ PWMB_PWM1_SetCaptureCompareValue

#define PWMB_PWM1_SetCaptureCompareValue (   __16BIT_VAL__)
Value:
do{ \
SFRX_ON(); \
(PWMB_CCR5H = ((__16BIT_VAL__) >> 8)); \
(PWMB_CCR5L = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMB_CCR5L
Definition: fw_reg_stc8h.h:327
#define PWMB_CCR5H
Definition: fw_reg_stc8h.h:326

Configurate PWMB.1(PWM5) - PWMB.4(PWM8) capture/comparison value, this will affect duty cycle

Definition at line 455 of file fw_pwm.h.

◆ PWMB_PWM1_SetComparePreload

#define PWMB_PWM1_SetComparePreload (   __STATE__)    SFRX_ASSIGN(PWMB_CCMR1, 3, (__STATE__))

PWMB.1 - PWMB.4 comparison value preload OFF/ON 0: New values will be written to PWMx_CCRx and take effect immediately 1: New values will be written to shadow register and loaded to PWMx_CCRx on next update event

Definition at line 431 of file fw_pwm.h.

◆ PWMB_PWM1_SetPort

#define PWMB_PWM1_SetPort (   __ALTER_PORT__)
Value:
do{ \
SFRX_ON();(PWMB_PS = PWMB_PS & ~(0x03 << 0) | ((__ALTER_PORT__) << 0)); SFRX_OFF(); \
}while(0)
#define PWMB_PS
Definition: fw_reg_stc8h.h:258

Definition at line 513 of file fw_pwm.h.

◆ PWMB_PWM1_SetPortDirection

#define PWMB_PWM1_SetPortDirection (   __PORT_DIR__)
Value:
do{ \
SFRX_ON();(PWMB_CCMR1 = PWMB_CCMR1 & ~(0x03 << 0) | ((__PORT_DIR__) << 0)); SFRX_OFF(); \
}while(0)

Definition at line 413 of file fw_pwm.h.

◆ PWMB_PWM1_SetPortPolar

#define PWMB_PWM1_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMB_CCER1, 1, (__POLAR__))

Definition at line 391 of file fw_pwm.h.

◆ PWMB_PWM1_SetPortState

#define PWMB_PWM1_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMB_CCER1, 0, (__STATE__))

PWMB.1(PWM5) - PWMB.4(PWM8) io polar and on/off state

Definition at line 390 of file fw_pwm.h.

◆ PWMB_PWM2_ConfigOutputMode

#define PWMB_PWM2_ConfigOutputMode (   __MODE__)
Value:
do{ \
SFRX_ON();(PWMB_CCMR2 = PWMB_CCMR2 & ~(0x07 << 4) | ((__MODE__) << 4)); SFRX_OFF(); \
}while(0)
#define PWMB_CCMR2
Definition: fw_reg_stc8h.h:310

Definition at line 442 of file fw_pwm.h.

◆ PWMB_PWM2_SetCaptureCompareValue

#define PWMB_PWM2_SetCaptureCompareValue (   __16BIT_VAL__)
Value:
do{ \
SFRX_ON(); \
(PWMB_CCR6H = ((__16BIT_VAL__) >> 8)); \
(PWMB_CCR6L = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMB_CCR6L
Definition: fw_reg_stc8h.h:330
#define PWMB_CCR6H
Definition: fw_reg_stc8h.h:329

Definition at line 461 of file fw_pwm.h.

◆ PWMB_PWM2_SetComparePreload

#define PWMB_PWM2_SetComparePreload (   __STATE__)    SFRX_ASSIGN(PWMB_CCMR2, 3, (__STATE__))

Definition at line 432 of file fw_pwm.h.

◆ PWMB_PWM2_SetPort

#define PWMB_PWM2_SetPort (   __ALTER_PORT__)
Value:
do{ \
SFRX_ON();(PWMB_PS = PWMB_PS & ~(0x03 << 2) | ((__ALTER_PORT__) << 2)); SFRX_OFF(); \
}while(0)

Definition at line 516 of file fw_pwm.h.

◆ PWMB_PWM2_SetPortDirection

#define PWMB_PWM2_SetPortDirection (   __PORT_DIR__)
Value:
do{ \
SFRX_ON();(PWMB_CCMR2 = PWMB_CCMR2 & ~(0x03 << 0) | ((__PORT_DIR__) << 0)); SFRX_OFF(); \
}while(0)

Definition at line 416 of file fw_pwm.h.

◆ PWMB_PWM2_SetPortPolar

#define PWMB_PWM2_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMB_CCER1, 5, (__POLAR__))

Definition at line 394 of file fw_pwm.h.

◆ PWMB_PWM2_SetPortState

#define PWMB_PWM2_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMB_CCER1, 4, (__STATE__))

Definition at line 393 of file fw_pwm.h.

◆ PWMB_PWM3_ConfigOutputMode

#define PWMB_PWM3_ConfigOutputMode (   __MODE__)
Value:
do{ \
SFRX_ON();(PWMB_CCMR3 = PWMB_CCMR3 & ~(0x07 << 4) | ((__MODE__) << 4)); SFRX_OFF(); \
}while(0)
#define PWMB_CCMR3
Definition: fw_reg_stc8h.h:311

Definition at line 445 of file fw_pwm.h.

◆ PWMB_PWM3_SetCaptureCompareValue

#define PWMB_PWM3_SetCaptureCompareValue (   __16BIT_VAL__)
Value:
do{ \
SFRX_ON(); \
(PWMB_CCR7H = ((__16BIT_VAL__) >> 8)); \
(PWMB_CCR7L = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMB_CCR7H
Definition: fw_reg_stc8h.h:332
#define PWMB_CCR7L
Definition: fw_reg_stc8h.h:333

Definition at line 467 of file fw_pwm.h.

◆ PWMB_PWM3_SetComparePreload

#define PWMB_PWM3_SetComparePreload (   __STATE__)    SFRX_ASSIGN(PWMB_CCMR3, 3, (__STATE__))

Definition at line 433 of file fw_pwm.h.

◆ PWMB_PWM3_SetPort

#define PWMB_PWM3_SetPort (   __ALTER_PORT__)
Value:
do{ \
SFRX_ON();(PWMB_PS = PWMB_PS & ~(0x03 << 4) | ((__ALTER_PORT__) << 4)); SFRX_OFF(); \
}while(0)

Definition at line 519 of file fw_pwm.h.

◆ PWMB_PWM3_SetPortDirection

#define PWMB_PWM3_SetPortDirection (   __PORT_DIR__)
Value:
do{ \
SFRX_ON();(PWMB_CCMR3 = PWMB_CCMR3 & ~(0x03 << 0) | ((__PORT_DIR__) << 0)); SFRX_OFF(); \
}while(0)

Definition at line 419 of file fw_pwm.h.

◆ PWMB_PWM3_SetPortPolar

#define PWMB_PWM3_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMB_CCER2, 1, (__POLAR__))

Definition at line 397 of file fw_pwm.h.

◆ PWMB_PWM3_SetPortState

#define PWMB_PWM3_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMB_CCER2, 0, (__STATE__))

Definition at line 396 of file fw_pwm.h.

◆ PWMB_PWM4_ConfigOutputMode

#define PWMB_PWM4_ConfigOutputMode (   __MODE__)
Value:
do{ \
SFRX_ON();(PWMB_CCMR4 = PWMB_CCMR4 & ~(0x07 << 4) | ((__MODE__) << 4)); SFRX_OFF(); \
}while(0)
#define PWMB_CCMR4
Definition: fw_reg_stc8h.h:312

Definition at line 448 of file fw_pwm.h.

◆ PWMB_PWM4_SetCaptureCompareValue

#define PWMB_PWM4_SetCaptureCompareValue (   __16BIT_VAL__)
Value:
do{ \
SFRX_ON(); \
(PWMB_CCR8H = ((__16BIT_VAL__) >> 8)); \
(PWMB_CCR8L = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMB_CCR8H
Definition: fw_reg_stc8h.h:335
#define PWMB_CCR8L
Definition: fw_reg_stc8h.h:336

Definition at line 473 of file fw_pwm.h.

◆ PWMB_PWM4_SetComparePreload

#define PWMB_PWM4_SetComparePreload (   __STATE__)    SFRX_ASSIGN(PWMB_CCMR4, 3, (__STATE__))

Definition at line 434 of file fw_pwm.h.

◆ PWMB_PWM4_SetPort

#define PWMB_PWM4_SetPort (   __ALTER_PORT__)
Value:
do{ \
SFRX_ON();(PWMB_PS = PWMB_PS & ~(0x03 << 6) | ((__ALTER_PORT__) << 6)); SFRX_OFF(); \
}while(0)

Definition at line 522 of file fw_pwm.h.

◆ PWMB_PWM4_SetPortDirection

#define PWMB_PWM4_SetPortDirection (   __PORT_DIR__)
Value:
do{ \
SFRX_ON();(PWMB_CCMR4 = PWMB_CCMR4 & ~(0x03 << 0) | ((__PORT_DIR__) << 0)); SFRX_OFF(); \
}while(0)

Definition at line 422 of file fw_pwm.h.

◆ PWMB_PWM4_SetPortPolar

#define PWMB_PWM4_SetPortPolar (   __POLAR__)    SFRX_ASSIGN(PWMB_CCER2, 5, (__POLAR__))

Definition at line 400 of file fw_pwm.h.

◆ PWMB_PWM4_SetPortState

#define PWMB_PWM4_SetPortState (   __STATE__)    SFRX_ASSIGN(PWMB_CCER2, 4, (__STATE__))

Definition at line 399 of file fw_pwm.h.

◆ PWMB_SetAutoReloadPreload

#define PWMB_SetAutoReloadPreload (   __STATE__)    SFRX_ASSIGN(PWMB_CR1, 7, (__STATE__))

0: New period will be written to [PWMB_ARRH,PWMB_ARRL] and take effect immediately 1: New period will be written to shadow register and loaded to [PWMB_ARRH,PWMB_ARRL] on next update event

Definition at line 353 of file fw_pwm.h.

◆ PWMB_SetCounterDirection

#define PWMB_SetCounterDirection (   __DIR__)    SFRX_ASSIGN(PWMB_CR1, 4, (__DIR__))

0: count from 0 to [PWMB_ARRH,PWMB_ARRL], then send an event and restart from 0 1: count from [PWMB_ARRH,PWMB_ARRL] to 0, then send an event and restart from [PWMB_ARRH,PWMB_ARRL]

Definition at line 366 of file fw_pwm.h.

◆ PWMB_SetCounterOnePulse

#define PWMB_SetCounterOnePulse (   __STATE__)    SFRX_ASSIGN(PWMB_CR1, 3, (__STATE__))

0: counter continues when update event occurs 1: counter stops(reset CEN) when update event occurs

Definition at line 371 of file fw_pwm.h.

◆ PWMB_SetCounterState

#define PWMB_SetCounterState (   __STATE__)    SFRX_ASSIGN(PWMB_CR1, 0, (__STATE__))

0:stop counter, 1:start counter

Definition at line 385 of file fw_pwm.h.

◆ PWMB_SetEdgeAlignment

#define PWMB_SetEdgeAlignment (   __ALIGN__)
Value:
do{ \
SFRX_ON();(PWMB_CR1 = PWMB_CR1 & ~(0x03 << 5) | ((__ALIGN__) << 5));SFRX_OFF(); \
}while(0)
#define PWMB_CR1
Definition: fw_reg_stc8h.h:300

Turn off counter (call PWMB_SetCounterState()) before changing to different alignment

Definition at line 358 of file fw_pwm.h.

◆ PWMB_SetNonUpdateEvent

#define PWMB_SetNonUpdateEvent (   __STATE__)    SFRX_ASSIGN(PWMB_CR1, 1, (__STATE__))

0:enable update events, 1:disable update events

Definition at line 381 of file fw_pwm.h.

◆ PWMB_SetOverallState

#define PWMB_SetOverallState (   __STATE__)    SFRX_ASSIGN(PWMB_BKR, 7, (__STATE__))

Definition at line 333 of file fw_pwm.h.

◆ PWMB_SetPeriod

#define PWMB_SetPeriod (   __16BIT_VAL__)
Value:
do { \
SFRX_ON(); \
(PWMB_ARRH = ((__16BIT_VAL__) >> 8)); \
(PWMB_ARRL = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMB_ARRL
Definition: fw_reg_stc8h.h:323
#define PWMB_ARRH
Definition: fw_reg_stc8h.h:322

Definition at line 325 of file fw_pwm.h.

◆ PWMB_SetPinBrakeControl

#define PWMB_SetPinBrakeControl (   __PINS__,
  __STATE__ 
)
Value:
do { \
SFRX_ON(); \
PWMB_IOAUX = PWMB_IOAUX & ~(__PINS__) | (((__STATE__) & 0x01)? (__PINS__) : 0x00); \
SFRX_OFF(); \
} while(0)
#define PWMB_IOAUX
Definition: fw_reg_stc8h.h:259

Definition at line 343 of file fw_pwm.h.

◆ PWMB_SetPinOutputState

#define PWMB_SetPinOutputState (   __PINS__,
  __STATE__ 
)
Value:
do { \
SFRX_ON(); \
PWMB_ENO = PWMB_ENO & ~(__PINS__) | (((__STATE__) & 0x01)? (__PINS__) : 0x00); \
SFRX_OFF(); \
} while(0)
#define PWMB_ENO
Definition: fw_reg_stc8h.h:257

Definition at line 336 of file fw_pwm.h.

◆ PWMB_SetPrescaler

#define PWMB_SetPrescaler (   __16BIT_VAL__)
Value:
do { \
SFRX_ON(); \
(PWMB_PSCRH = ((__16BIT_VAL__) >> 8)); \
(PWMB_PSCRL = ((__16BIT_VAL__) & 0xFF)); \
SFRX_OFF(); \
}while(0)
#define PWMB_PSCRL
Definition: fw_reg_stc8h.h:320
#define PWMB_PSCRH
Definition: fw_reg_stc8h.h:319

PWM clock prescaler

side alignment: Fpwm = SYSCLK / (PWMx_PSCR + 1) / (PWMx_ARR + 1) central alignment: Fpwm = SYSCLK / (PWMx_PSCR + 1) / PWMx_ARR / 2

Definition at line 318 of file fw_pwm.h.

◆ PWMB_SetUpdateEventSource

#define PWMB_SetUpdateEventSource (   __STATE__)    SFRX_ASSIGN(PWMB_CR1, 2, (__STATE__))

Work only when update events are enabled 0: An interrupt will be triggered by these events: counter overflow(upwards or downwards), soft set UG, timer/controller updates 1: An interrupt will be triggered(and set UIF=1) by counter overflow(upwards or downwards)

Definition at line 377 of file fw_pwm.h.

Enumeration Type Documentation

◆ PWM_CounterDirection_t

Enumerator
PWM_CounterDirection_Up 
PWM_CounterDirection_Down 

Definition at line 53 of file fw_pwm.h.

54{
PWM_CounterDirection_t
Definition: fw_pwm.h:54
@ PWM_CounterDirection_Up
Definition: fw_pwm.h:55
@ PWM_CounterDirection_Down
Definition: fw_pwm.h:56

◆ PWM_EdgeAlignment_t

Trigger mode Side Mode: Depends on DIR Center Mode: counter increasing then decreasing CenterDown: trigger interrupt when meet target in decreasing CenterUp: trigger interrupt when meet target in increasing CenterBoth: trigger interrupt when meet target in both

Enumerator
PWM_EdgeAlignment_Side 
PWM_EdgeAlignment_CenterDown 
PWM_EdgeAlignment_CenterUp 
PWM_EdgeAlignment_CenterBoth 

Definition at line 45 of file fw_pwm.h.

46{
PWM_EdgeAlignment_t
Definition: fw_pwm.h:46
@ PWM_EdgeAlignment_CenterBoth
Definition: fw_pwm.h:50
@ PWM_EdgeAlignment_CenterUp
Definition: fw_pwm.h:49
@ PWM_EdgeAlignment_Side
Definition: fw_pwm.h:47
@ PWM_EdgeAlignment_CenterDown
Definition: fw_pwm.h:48

◆ PWM_OutputMode_t

Comparasion Output Mode: PWMx_CCRx vs PWMx_CNT => OCxREF

Enumerator
PWM_OutputMode_NoAction 
PWM_OutputMode_TriggerHigh 
PWM_OutputMode_TriggerLow 
PWM_OutputMode_TriggerToggle 
PWM_OutputMode_AlwaysLow 
PWM_OutputMode_AlwaysHigh 
PWM_OutputMode_PWM_HighIfLess 
PWM_OutputMode_PWM_LowIfLess 

Definition at line 62 of file fw_pwm.h.

63{
64 PWM_OutputMode_NoAction = 0x00, // Fixed
65 PWM_OutputMode_TriggerHigh = 0x01, // OCxREF=1 when PWMA_CCR1=PWMA_CNT
66 PWM_OutputMode_TriggerLow = 0x02, // OCxREF=0 when PWMA_CCR1=PWMA_CNT
67 PWM_OutputMode_TriggerToggle = 0x03, // Toggle OCxREF when PWMA_CCR1=PWMA_CNT
68 PWM_OutputMode_AlwaysLow = 0x04, // OCxREF always low
69 PWM_OutputMode_AlwaysHigh = 0x05, // OCxREF always high
70 PWM_OutputMode_PWM_HighIfLess = 0x06, // OCxREF=1 when PWMA_CNT<PWMA_CCR1, in both counting direction
71 PWM_OutputMode_PWM_LowIfLess = 0x07, // OCxREF=0 when PWMA_CNT<PWMA_CCR1, in both counting direction
PWM_OutputMode_t
Definition: fw_pwm.h:63
@ PWM_OutputMode_PWM_LowIfLess
Definition: fw_pwm.h:71
@ PWM_OutputMode_TriggerLow
Definition: fw_pwm.h:66
@ PWM_OutputMode_AlwaysLow
Definition: fw_pwm.h:68
@ PWM_OutputMode_NoAction
Definition: fw_pwm.h:64
@ PWM_OutputMode_TriggerToggle
Definition: fw_pwm.h:67
@ PWM_OutputMode_AlwaysHigh
Definition: fw_pwm.h:69
@ PWM_OutputMode_TriggerHigh
Definition: fw_pwm.h:65
@ PWM_OutputMode_PWM_HighIfLess
Definition: fw_pwm.h:70

◆ PWM_Pin_t

enum PWM_Pin_t
Enumerator
PWM_Pin_1 
PWM_Pin_1N 
PWM_Pin_2 
PWM_Pin_2N 
PWM_Pin_3 
PWM_Pin_3N 
PWM_Pin_4 
PWM_Pin_4N 
PWMA_Pin_All 
PWMB_Pin_All 

Definition at line 22 of file fw_pwm.h.

23{
34} PWM_Pin_t;
PWM_Pin_t
Definition: fw_pwm.h:23
@ PWMB_Pin_All
Definition: fw_pwm.h:33
@ PWM_Pin_1N
Definition: fw_pwm.h:25
@ PWM_Pin_2N
Definition: fw_pwm.h:27
@ PWM_Pin_2
Definition: fw_pwm.h:26
@ PWM_Pin_3N
Definition: fw_pwm.h:29
@ PWM_Pin_3
Definition: fw_pwm.h:28
@ PWM_Pin_4
Definition: fw_pwm.h:30
@ PWM_Pin_4N
Definition: fw_pwm.h:31
@ PWM_Pin_1
Definition: fw_pwm.h:24
@ PWMA_Pin_All
Definition: fw_pwm.h:32
#define B00010000
Definition: fw_types.h:40
#define B11111111
Definition: fw_types.h:65
#define B00100000
Definition: fw_types.h:45
#define B01010101
Definition: fw_types.h:66
#define B00001000
Definition: fw_types.h:36
#define B00000001
Definition: fw_types.h:30
#define B00000010
Definition: fw_types.h:31
#define B10000000
Definition: fw_types.h:58
#define B00000100
Definition: fw_types.h:33
#define B01000000
Definition: fw_types.h:51

◆ PWMA_PortDirection_t

Configurate PWMA.1 - PWMA.4 port direction

Enumerator
PWMA_PortDirOut 
PWMA_PortDirIn_TI1FP1_TI2FP2_TI3FP3_TI4FP4 
PWMA_PortDirIn_TI2FP1_TI1FP2_TI4FP3_TI3FP4 
PWMA_PortDirInTRC 

Definition at line 182 of file fw_pwm.h.

183{
184 PWMA_PortDirOut = 0x00,
187 PWMA_PortDirInTRC = 0x11,
PWMA_PortDirection_t
Definition: fw_pwm.h:183
@ PWMA_PortDirOut
Definition: fw_pwm.h:184
@ PWMA_PortDirInTRC
Definition: fw_pwm.h:187
@ PWMA_PortDirIn_TI2FP1_TI1FP2_TI4FP3_TI3FP4
Definition: fw_pwm.h:186
@ PWMA_PortDirIn_TI1FP1_TI2FP2_TI3FP3_TI4FP4
Definition: fw_pwm.h:185

◆ PWMA_PWM1_AlterPort_t

PWM1 - PWM4 alternative ports

Enumerator
PWMA_PWM1_AlterPort_P10_P11 
PWMA_PWM1_AlterPort_P20_P21 
PWMA_PWM1_AlterPort_P60_P61 

Definition at line 260 of file fw_pwm.h.

261{
262 // PWM1P PWM1N
PWMA_PWM1_AlterPort_t
Definition: fw_pwm.h:261
@ PWMA_PWM1_AlterPort_P10_P11
Definition: fw_pwm.h:263
@ PWMA_PWM1_AlterPort_P20_P21
Definition: fw_pwm.h:264
@ PWMA_PWM1_AlterPort_P60_P61
Definition: fw_pwm.h:265

◆ PWMA_PWM2_AlterPort_t

Enumerator
PWMA_PWM2_AlterPort_P12P54_P13 
PWMA_PWM2_AlterPort_P22_P23 
PWMA_PWM2_AlterPort_P62_P63 

Definition at line 268 of file fw_pwm.h.

269{
PWMA_PWM2_AlterPort_t
Definition: fw_pwm.h:269
@ PWMA_PWM2_AlterPort_P22_P23
Definition: fw_pwm.h:271
@ PWMA_PWM2_AlterPort_P12P54_P13
Definition: fw_pwm.h:270
@ PWMA_PWM2_AlterPort_P62_P63
Definition: fw_pwm.h:272

◆ PWMA_PWM3_AlterPort_t

Enumerator
PWMA_PWM3_AlterPort_P14_P15 
PWMA_PWM3_AlterPort_P24_P25 
PWMA_PWM3_AlterPort_P64_P65 

Definition at line 275 of file fw_pwm.h.

276{
PWMA_PWM3_AlterPort_t
Definition: fw_pwm.h:276
@ PWMA_PWM3_AlterPort_P24_P25
Definition: fw_pwm.h:278
@ PWMA_PWM3_AlterPort_P14_P15
Definition: fw_pwm.h:277
@ PWMA_PWM3_AlterPort_P64_P65
Definition: fw_pwm.h:279

◆ PWMA_PWM4_AlterPort_t

Enumerator
PWMA_PWM4_AlterPort_P16_P17 
PWMA_PWM4_AlterPort_P26_P27 
PWMA_PWM4_AlterPort_P66_P67 
PWMA_PWM4_AlterPort_P34_P33 

Definition at line 282 of file fw_pwm.h.

283{
PWMA_PWM4_AlterPort_t
Definition: fw_pwm.h:283
@ PWMA_PWM4_AlterPort_P66_P67
Definition: fw_pwm.h:286
@ PWMA_PWM4_AlterPort_P34_P33
Definition: fw_pwm.h:287
@ PWMA_PWM4_AlterPort_P16_P17
Definition: fw_pwm.h:284
@ PWMA_PWM4_AlterPort_P26_P27
Definition: fw_pwm.h:285

◆ PWMB_PortDirection_t

Configurate PWMB.1(PWM5) - PWMB.4(PWM8) port direction

Enumerator
PWMB_PortDirOut 
PWMB_PortDirIn_TI5FP5_TI6FP6_TI7FP7_TI8FP8 
PWMB_PortDirIn_TI6FP5_TI5FP6_TI8FP7_TI7FP8 
PWMB_PortDirInTRC 

Definition at line 405 of file fw_pwm.h.

406{
407 PWMB_PortDirOut = 0x00,
410 PWMB_PortDirInTRC = 0x11,
PWMB_PortDirection_t
Definition: fw_pwm.h:406
@ PWMB_PortDirInTRC
Definition: fw_pwm.h:410
@ PWMB_PortDirIn_TI5FP5_TI6FP6_TI7FP7_TI8FP8
Definition: fw_pwm.h:408
@ PWMB_PortDirIn_TI6FP5_TI5FP6_TI8FP7_TI7FP8
Definition: fw_pwm.h:409
@ PWMB_PortDirOut
Definition: fw_pwm.h:407

◆ PWMB_PWM5_AlterPort_t

Enumerator
PWMB_PWM5_AlterPort_P20 
PWMB_PWM5_AlterPort_P17 
PWMB_PWM5_AlterPort_P00 
PWMB_PWM5_AlterPort_P74 

Definition at line 480 of file fw_pwm.h.

481{
PWMB_PWM5_AlterPort_t
Definition: fw_pwm.h:481
@ PWMB_PWM5_AlterPort_P74
Definition: fw_pwm.h:485
@ PWMB_PWM5_AlterPort_P00
Definition: fw_pwm.h:484
@ PWMB_PWM5_AlterPort_P20
Definition: fw_pwm.h:482
@ PWMB_PWM5_AlterPort_P17
Definition: fw_pwm.h:483

◆ PWMB_PWM6_AlterPort_t

Enumerator
PWMB_PWM6_AlterPort_P21 
PWMB_PWM6_AlterPort_P54 
PWMB_PWM6_AlterPort_P01 
PWMB_PWM6_AlterPort_P75 

Definition at line 488 of file fw_pwm.h.

489{
PWMB_PWM6_AlterPort_t
Definition: fw_pwm.h:489
@ PWMB_PWM6_AlterPort_P75
Definition: fw_pwm.h:493
@ PWMB_PWM6_AlterPort_P54
Definition: fw_pwm.h:491
@ PWMB_PWM6_AlterPort_P01
Definition: fw_pwm.h:492
@ PWMB_PWM6_AlterPort_P21
Definition: fw_pwm.h:490

◆ PWMB_PWM7_AlterPort_t

Enumerator
PWMB_PWM7_AlterPort_P22 
PWMB_PWM7_AlterPort_P33 
PWMB_PWM7_AlterPort_P02 
PWMB_PWM7_AlterPort_P76 

Definition at line 496 of file fw_pwm.h.

497{
PWMB_PWM7_AlterPort_t
Definition: fw_pwm.h:497
@ PWMB_PWM7_AlterPort_P33
Definition: fw_pwm.h:499
@ PWMB_PWM7_AlterPort_P76
Definition: fw_pwm.h:501
@ PWMB_PWM7_AlterPort_P22
Definition: fw_pwm.h:498
@ PWMB_PWM7_AlterPort_P02
Definition: fw_pwm.h:500

◆ PWMB_PWM8_AlterPort_t

Enumerator
PWMB_PWM8_AlterPort_P23 
PWMB_PWM8_AlterPort_P34 
PWMB_PWM8_AlterPort_P03 
PWMB_PWM8_AlterPort_P77 

Definition at line 504 of file fw_pwm.h.

505{
PWMB_PWM8_AlterPort_t
Definition: fw_pwm.h:505
@ PWMB_PWM8_AlterPort_P03
Definition: fw_pwm.h:508
@ PWMB_PWM8_AlterPort_P23
Definition: fw_pwm.h:506
@ PWMB_PWM8_AlterPort_P77
Definition: fw_pwm.h:509
@ PWMB_PWM8_AlterPort_P34
Definition: fw_pwm.h:507