108#include "Std_Types.h"
126#define PWM_SW_MAJOR_VERSION (10U)
128#define PWM_SW_MINOR_VERSION (2U)
130#define PWM_SW_PATCH_VERSION (0U)
142#define PWM_AR_RELEASE_MAJOR_VERSION (4U)
144#define PWM_AR_RELEASE_MINOR_VERSION (3U)
146#define PWM_AR_RELEASE_REVISION_VERSION (1U)
154#define PWM_VENDOR_ID ((uint16) 44U)
156#define PWM_MODULE_ID ((uint16) 121U)
170#ifndef PWM_E_INIT_FAILED
171#define PWM_E_INIT_FAILED ((uint8)(0x10U))
180#define PWM_E_UNINIT ((uint8)(0x11U))
189#ifndef PWM_E_PARAM_CHANNEL
190#define PWM_E_PARAM_CHANNEL ((uint8)(0x12U))
198#ifndef PWM_E_PERIOD_UNCHANGEABLE
199#define PWM_E_PERIOD_UNCHANGEABLE ((uint8)(0x13U))
206#ifndef PWM_E_ALREADY_INITIALIZED
207#define PWM_E_ALREADY_INITIALIZED ((uint8)(0x14U))
214#ifndef PWM_E_PARAM_POINTER
215#define PWM_E_PARAM_POINTER ((uint8)(0x15U))
223#ifndef PWM_E_NOT_DISENGAGED
224#define PWM_E_NOT_DISENGAGED ((uint8)(0x16U))
236#define PWM_SID_INIT ((uint8)(0x0U))
238#define PWM_SID_DEINIT ((uint8)(0x1U))
240#define PWM_SID_SET_DUTY_CYCLE ((uint8)(0x2U))
242#define PWM_SID_SET_PERIOD_AND_DUTY ((uint8)(0x3U))
244#define PWM_SID_SET_OUTPUT_TO_IDLE ((uint8)(0x4U))
246#define PWM_SID_GET_OUTPUT_STATE ((uint8)(0x5U))
248#define PWM_SID_DISABLE_NOTIFICATION ((uint8)(0x6U))
250#define PWM_SID_ENABLE_NOTIFICATION ((uint8)(0x7U))
252#define PWM_SID_GET_VERSION_INFO ((uint8)(0x8U))
254#define PWM_SID_REGISTER_READBACK ((uint8)(0xDU))
264#define PWM_STATUS_UNINIT ((uint8)(0U))
266#define PWM_STATUS_INIT ((uint8)(1U))
280#define PWM_DUTY_0_PERCENT (0x0U)
282#define PWM_DUTY_100_PERCENT (0x8000U)
284#define PWM_DUTY_50_PERCENT (0x4000U)
357typedef enum Pwm_epwmOutputCh
380typedef struct Pwm_ConfigType_PC_s
430#if (PWM_NOTIFICATION_SUPPORTED == STD_ON)
440typedef struct Pwm_ConfigType_s
446#if (STD_ON == PWM_REGISTER_READBACK_API)
460 uint32 pwmTimerSynCtrl;
534#if (STD_ON == PWM_DEINIT_API)
557#if (STD_ON == PWM_SET_DUTY_CYCLE_API)
584#if (STD_ON == PWM_SET_PERIOD_AND_DUTY_API)
612#if (STD_ON == PWM_SET_OUTPUT_TO_IDLE_API)
635#if (STD_ON == PWM_GET_OUTPUT_STATE_API)
642#if (STD_ON == PWM_NOTIFICATION_SUPPORTED)
665#if (STD_ON == PWM_NOTIFICATION_SUPPORTED)
691#if (STD_ON == PWM_VERSION_INFO_API)
712 P2VAR(Std_VersionInfoType, AUTOMATIC, PWM_APPL_DATA) versioninfo);
715#if(STD_ON == PWM_REGISTER_READBACK_API)
Pwm_ChannelClassType
Period type for pwm channels. Fixed periods prohibit changes to the period length with Pwm_SetPeriod(...
Definition Pwm.h:347
Pwm_OutputStateType
Possible output states of a PWM channel.
Definition Pwm.h:302
void Pwm_SetOutputToIdle(Pwm_ChannelType ChannelNumber)
Service to set the output of a channel immediately to idle.
void Pwm_EnableNotification(Pwm_ChannelType ChannelNumber, Pwm_EdgeNotificationType Notification)
Service to enable the Edge Notification.
void Pwm_GetVersionInfo(Std_VersionInfoType *versioninfo)
This service returns the version information of this module.
uint32 Pwm_FrequencyType
typedef of frequency value (Frequency in Hz)
Definition Pwm.h:336
uint32 Pwm_PeriodType
typedef of period value
Definition Pwm.h:327
Pwm_OutputStateType Pwm_GetOutputState(Pwm_ChannelType ChannelNumber)
uint32 Pwm_ChannelType
PWM Channel type.
Definition Pwm.h:333
void Pwm_SetDutyCycle(Pwm_ChannelType ChannelNumber, uint16 DutyCycle)
Service for setting Duty Cycle.
void Pwm_SetPeriodAndDuty(Pwm_ChannelType ChannelNumber, Pwm_PeriodType Period, uint16 DutyCycle)
Service for setting Period and Duty Cycle.
Pwm_epwmOutputCh_t
EPWM outputs in a single epwm channel.
Definition Pwm.h:358
Std_ReturnType Pwm_RegisterReadback(Pwm_ChannelType ChannelNumber, Pwm_RegisterReadbackType *RegRbPtr)
This function reads the important registers of the hardware unit and returns the value in the structu...
Pwm_EdgeNotificationType
Possible edge notification
Definition Pwm.h:314
void Pwm_DisableNotification(Pwm_ChannelType ChannelNumber)
Service to disable the Edge Notification.
void Pwm_DeInit(void)
Service for PWM de-initialization.
void(* Pwm_NotifyFuncType)(void)
Notification callback function pointer
Definition Pwm.h:368
void Pwm_Init(const Pwm_ConfigType *CfgPtr)
Service for PWM initialization.
uint16 dutyCycle
Definition Pwm.h:392
Pwm_OutputStateType idleState
Definition Pwm.h:398
Pwm_ChannelType channelId
Definition Pwm.h:372
Pwm_NotifyFuncType notificationHandler
Definition Pwm.h:431
#define PWM_NUM_CHANNELS
Number of configured channels.
Definition config/Pwm_Demo_Cfg/output/generated/soc/j721e/mcu1_0/include/Pwm_Cfg.h:150
Pwm_OutputStateType polarity
Definition Pwm.h:396
uint32 instanceClkHz
Definition Pwm.h:390
uint32 prescale
Definition Pwm.h:402
uint32 hwPeriod
Definition Pwm.h:394
Pwm_ChannelClassType channelClass
Definition Pwm.h:400
@ PWM_VARIABLE_PERIOD
Definition Pwm.h:352
@ PWM_FIXED_PERIOD
Definition Pwm.h:348
@ PWM_FIXED_PERIOD_SHIFTED
Definition Pwm.h:350
@ PWM_LOW
Definition Pwm.h:303
@ PWM_HIGH
Definition Pwm.h:305
@ EPWM_OUTPUT_CH_A
Definition Pwm.h:359
@ EPWM_OUTPUT_CH_BOTH_A_AND_B
Definition Pwm.h:363
@ EPWM_OUTPUT_CH_B
Definition Pwm.h:361
@ PWM_RISING_EDGE
Definition Pwm.h:315
@ PWM_FALLING_EDGE
Definition Pwm.h:317
@ PWM_BOTH_EDGES
Definition Pwm.h:319
Pwm channel configuration.
Definition Pwm.h:371
Pwm channel configuration.
Definition Pwm.h:389
Pwm configuration structure.
Definition Pwm.h:381
Pwm configuration structure.
Definition Pwm.h:441
PWM register readback structure.
Definition Pwm.h:451