MINI55_BSP V3.02.004
The Board Support Package for Mini55 Series MCU
Macros | Functions
pwm.h File Reference

MINI55 series PWM driver header file. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define PWM_CHANNEL_NUM   (6)
 
#define PWM_CLK_DIV_1   (4UL)
 
#define PWM_CLK_DIV_2   (0UL)
 
#define PWM_CLK_DIV_4   (1UL)
 
#define PWM_CLK_DIV_8   (2UL)
 
#define PWM_CLK_DIV_16   (3UL)
 
#define PWM_EDGE_ALIGNED   (0UL)
 
#define PWM_CENTER_ALIGNED   (PWM_CTL_CNTTYPE_Msk)
 
#define PWM_TRIGGER_ADC_CNTR_IS_0   PWM_ADCTCTL0_ZPTRGEN0_Msk
 
#define PWM_TRIGGER_ADC_CNTR_IS_CMR_D   PWM_ADCTCTL0_CDTRGEN0_Msk
 
#define PWM_TRIGGER_ADC_CNTR_IS_CNR   PWM_ADCTCTL0_CPTRGEN0_Msk
 
#define PWM_TRIGGER_ADC_CNTR_IS_CMR_U   PWM_ADCTCTL0_CUTRGEN0_Msk
 
#define PWM_FB0_EINT0   (PWM_BRKCTL_BRK0EN_Msk)
 
#define PWM_FB0_ACMP1   (PWM_BRKCTL_BRK0EN_Msk | PWM_BRKCTL_BRK1SEL_Msk)
 
#define PWM_FB1_EINT1   (PWM_BRKCTL_BRK1EN_Msk)
 
#define PWM_FB1_ACMP0   (PWM_BRKCTL_BRK1EN_Msk | PWM_BRKCTL_BRK0SEL_Msk)
 
#define PWM_PERIOD_INT_UNDERFLOW   (0)
 
#define PWM_PERIOD_INT_MATCH_CNR   (PWM_INTEN_PINTTYPE_Msk)
 
#define PWM_CH0   0x0
 
#define PWM_CH1   0x1
 
#define PWM_CH2   0x2
 
#define PWM_CH3   0x3
 
#define PWM_CH4   0x4
 
#define PWM_CH5   0x5
 
#define PWM_ENABLE_COMPLEMENTARY_MODE(pwm)
 This macro enable complementary mode. More...
 
#define PWM_DISABLE_COMPLEMENTARY_MODE(pwm)
 This macro disable complementary mode, and enable independent mode. More...
 
#define PWM_ENABLE_GROUP_MODE(pwm)
 This macro enable group mode. More...
 
#define PWM_DISABLE_GROUP_MODE(pwm)
 This macro disable group mode. More...
 
#define PWM_ENABLE_SYNC_MODE(pwm)
 This macro enable synchronous mode. More...
 
#define PWM_DISABLE_SYNC_MODE(pwm)
 This macro disable synchronous mode, and enable independent mode. More...
 
#define PWM_ENABLE_OUTPUT_INVERTER(pwm, u32ChannelMask)
 This macro enable output inverter of specified channel(s) More...
 
#define PWM_SET_PRESCALER(pwm, u32ChannelNum, u32Prescaler)
 This macro set the prescaler of the selected channel. More...
 
#define PWM_SET_DIVIDER(pwm, u32ChannelNum, u32Divider)
 This macro set the divider of the selected channel. More...
 
#define PWM_SET_CMR(pwm, u32ChannelNum, u32CMR)
 This macro set the duty of the selected channel. More...
 
#define PWM_SET_CNR(pwm, u32ChannelNum, u32CNR)
 This macro set the period of the selected channel. More...
 
#define PWM_SET_ALIGNED_TYPE(pwm, u32ChannelMask, u32AlignedType)
 This macro set the PWM aligned type. More...
 

Functions

uint32_t PWM_ConfigOutputChannel (PWM_T *pwm, uint32_t u32ChannelNum, uint32_t u32Frequency, uint32_t u32DutyCycle)
 This function config PWM generator and get the nearest frequency in edge aligned auto-reload mode. More...
 
void PWM_Start (PWM_T *pwm, uint32_t u32ChannelMask)
 This function start PWM module. More...
 
void PWM_Stop (PWM_T *pwm, uint32_t u32ChannelMask)
 This function stop PWM module. More...
 
void PWM_ForceStop (PWM_T *pwm, uint32_t u32ChannelMask)
 This function stop PWM generation immediately by clear channel enable bit. More...
 
void PWM_EnableADCTrigger (PWM_T *pwm, uint32_t u32ChannelNum, uint32_t u32Condition)
 This function enable selected channel to trigger ADC. More...
 
void PWM_DisableADCTrigger (PWM_T *pwm, uint32_t u32ChannelNum)
 This function disable selected channel to trigger ADC. More...
 
void PWM_ClearADCTriggerFlag (PWM_T *pwm, uint32_t u32ChannelNum, uint32_t u32Condition)
 This function clear selected channel trigger ADC flag. More...
 
uint32_t PWM_GetADCTriggerFlag (PWM_T *pwm, uint32_t u32ChannelNum, uint32_t u32Condition)
 This function get selected channel trigger ADC flag. More...
 
void PWM_EnableFaultBrake (PWM_T *pwm, uint32_t u32ChannelMask, uint32_t u32LevelMask, uint32_t u32BrakeSource)
 This function enable fault brake of selected channels. More...
 
void PWM_ClearFaultBrakeFlag (PWM_T *pwm, uint32_t u32BrakeSource)
 This function clear fault brake flag. More...
 
void PWM_EnableOutput (PWM_T *pwm, uint32_t u32ChannelMask)
 This function enables PWM output generation of selected channels. More...
 
void PWM_DisableOutput (PWM_T *pwm, uint32_t u32ChannelMask)
 This function disables PWM output generation of selected channels. More...
 
void PWM_EnableDeadZone (PWM_T *pwm, uint32_t u32ChannelNum, uint32_t u32Duration)
 This function enable Dead zone of selected channel. More...
 
void PWM_DisableDeadZone (PWM_T *pwm, uint32_t u32ChannelNum)
 This function disable Dead zone of selected channel. More...
 
void PWM_EnableDutyInt (PWM_T *pwm, uint32_t u32ChannelNum, uint32_t u32IntDutyType)
 This function enable duty interrupt of selected channel. More...
 
void PWM_DisableDutyInt (PWM_T *pwm, uint32_t u32ChannelNum)
 This function disable duty interrupt of selected channel. More...
 
void PWM_ClearDutyIntFlag (PWM_T *pwm, uint32_t u32ChannelNum)
 This function clears duty interrupt flag of selected channel. More...
 
uint32_t PWM_GetDutyIntFlag (PWM_T *pwm, uint32_t u32ChannelNum)
 This function get duty interrupt flag of selected channel. More...
 
void PWM_EnableFaultBrakeInt (PWM_T *pwm, uint32_t u32BrakeSource)
 This function enable fault brake interrupt. More...
 
void PWM_DisableFaultBrakeInt (PWM_T *pwm, uint32_t u32BrakeSource)
 This function disable fault brake interrupt. More...
 
void PWM_ClearFaultBrakeIntFlag (PWM_T *pwm, uint32_t u32BrakeSource)
 This function clear fault brake interrupt of selected source. More...
 
uint32_t PWM_GetFaultBrakeIntFlag (PWM_T *pwm, uint32_t u32BrakeSource)
 This function get fault brake interrupt of selected source. More...
 
void PWM_EnablePeriodInt (PWM_T *pwm, uint32_t u32ChannelNum)
 This function enable Period interrupt of selected channel. More...
 
void PWM_DisablePeriodInt (PWM_T *pwm, uint32_t u32ChannelNum)
 This function disable Period interrupt of selected channel. More...
 
void PWM_ClearPeriodIntFlag (PWM_T *pwm, uint32_t u32ChannelNum)
 This function clears Period interrupt flag of selected channel. More...
 
uint32_t PWM_GetPeriodIntFlag (PWM_T *pwm, uint32_t u32ChannelNum)
 This function get Period interrupt flag of selected channel. More...
 
void PWM_EnableCenterInt (PWM_T *pwm, uint32_t u32ChannelNum, uint32_t u32IntPeriodType)
 This function enable Central interrupt of selected channel. More...
 
void PWM_DisableCenterInt (PWM_T *pwm, uint32_t u32ChannelNum)
 This function disable Central interrupt of selected channel. More...
 
void PWM_ClearCenterIntFlag (PWM_T *pwm, uint32_t u32ChannelNum)
 This function clear Central interrupt of selected channel. More...
 
uint32_t PWM_GetCenterIntFlag (PWM_T *pwm, uint32_t u32ChannelNum)
 This function get Central interrupt of selected channel. More...
 
void PWM_EnableRiseInt (PWM_T *pwm, uint32_t u32ChannelNum)
 This function enable Rise interrupt of selected channel. More...
 
void PWM_DisableRiseInt (PWM_T *pwm, uint32_t u32ChannelNum)
 This function disable Rise interrupt of selected channel. More...
 
void PWM_ClearRiseIntFlag (PWM_T *pwm, uint32_t u32ChannelNum)
 This function clears Rise interrupt flag of selected channel. More...
 
uint32_t PWM_GetRiseIntFlag (PWM_T *pwm, uint32_t u32ChannelNum)
 This function get Rise interrupt flag of selected channel. More...
 

Detailed Description

MINI55 series PWM driver header file.

Version
V1.00
Revision
11
Date
15/07/07 6:26p
Note
SPDX-License-Identifier: Apache-2.0 Copyright (C) 2014 Nuvoton Technology Corp. All rights reserved.

Definition in file pwm.h.