|  | Dual Active Bridge Development Board (Part-No. ) |
Content |  |  |  |  |  |

Loading...
Searching...
No Matches
pwm_interface.h
1
17/*
18© [2024] Microchip Technology Inc. and its subsidiaries.
19
20 Subject to your compliance with these terms, you may use Microchip
21 software and any derivatives exclusively with Microchip products.
22 You are responsible for complying with 3rd party license terms
23 applicable to your use of 3rd party software (including open source
24 software) that may accompany Microchip software. SOFTWARE IS ?AS IS.?
25 NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS
26 SOFTWARE, INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT,
27 MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT
28 WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE,
29 INCIDENTAL OR CONSEQUENTIAL LOSS, DAMAGE, COST OR EXPENSE OF ANY
30 KIND WHATSOEVER RELATED TO THE SOFTWARE, HOWEVER CAUSED, EVEN IF
31 MICROCHIP HAS BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE
32 FORESEEABLE. TO THE FULLEST EXTENT ALLOWED BY LAW, MICROCHIP?S
33 TOTAL LIABILITY ON ALL CLAIMS RELATED TO THE SOFTWARE WILL NOT
34 EXCEED AMOUNT OF FEES, IF ANY, YOU PAID DIRECTLY TO MICROCHIP FOR
35 THIS SOFTWARE.
36*/
37
38#ifndef PWM_INTERFACE_H
39#define PWM_INTERFACE_H
40
41// Section: Included Files
42
43#include <stddef.h>
44#include "pwm_types.h"
45
46// Section: Data Type Definitions
47
54 struct PWM_INTERFACE{
55 void (*Initialize)(void);
57
58 void (*Deinitialize)(void);
60
61 void (*Enable)(void);
63
64 void (*Disable)(void);
66
67 void (*PeriodSet)(size_t periodCount);
69
70 void (*DutyCycleSet)(size_t dutyCycleCount);
72
73 void (*DeadTimeSet)(size_t deadTimeCount);
75
76 void (*OutputModeSet)(enum PWM_OUTPUT_MODES outputMode);
78
79 void (*SoftwareTriggerSet)(void);
81
82 void (*CallbackRegister)(void (*handler)(void));
84
85 void (*Tasks)(void);
87};
88
89#endif //PWM_INTERFACE_H
pwm_types.h
This is the generated driver types header file for the PWM driver.
PWM_OUTPUT_MODES
PWM_OUTPUT_MODES
Definition pwm_types.h:52
PWM_INTERFACE
Structure containing the function pointers of PWM generator driver.
Definition pwm_interface.h:54
PWM_INTERFACE::Enable
void(* Enable)(void)
Pointer to SCCPx_PWM_Enable e.g. SCCP1_PWM_Enable.
Definition pwm_interface.h:61
PWM_INTERFACE::CallbackRegister
void(* CallbackRegister)(void(*handler)(void))
Pointer to SCCPx_PWM_CallbackRegister e.g. SCCP1_PWM_CallbackRegister.
Definition pwm_interface.h:82
PWM_INTERFACE::Tasks
void(* Tasks)(void)
Pointer to SCCPx_PWM_Tasks e.g. SCCP1_PWM_Tasks (Supported only in polling mode)
Definition pwm_interface.h:85
PWM_INTERFACE::SoftwareTriggerSet
void(* SoftwareTriggerSet)(void)
Pointer to SCCPx_PWM_SoftwareTriggerSet e.g. SCCP1_PWM_SoftwareTriggerSet.
Definition pwm_interface.h:79
PWM_INTERFACE::Disable
void(* Disable)(void)
Pointer to SCCPx_PWM_Disable e.g. SCCP1_PWM_Disable.
Definition pwm_interface.h:64
PWM_INTERFACE::DeadTimeSet
void(* DeadTimeSet)(size_t deadTimeCount)
Pointer to SCCPx_PWM_DeadTimeSet e.g. SCCP1_PWM_DeadTimeSet (This feature is hardware dependent)
Definition pwm_interface.h:73
PWM_INTERFACE::PeriodSet
void(* PeriodSet)(size_t periodCount)
Pointer to SCCPx_PWM_PeriodSet e.g. SCCP1_PWM_PeriodSet.
Definition pwm_interface.h:67
PWM_INTERFACE::Deinitialize
void(* Deinitialize)(void)
Pointer to SCCPx_PWM_Deinitialize e.g. SCCP1_PWM_Deinitialize.
Definition pwm_interface.h:58
PWM_INTERFACE::DutyCycleSet
void(* DutyCycleSet)(size_t dutyCycleCount)
Pointer to SCCPx_PWM_DutyCycleSet e.g. SCCP1_PWM_DutyCycleSet.
Definition pwm_interface.h:70
PWM_INTERFACE::OutputModeSet
void(* OutputModeSet)(enum PWM_OUTPUT_MODES outputMode)
Pointer to SCCPx_PWM_OutputModeSet e.g. SCCP1_PWM_OutputModeSet (This feature is hardware dependent)
Definition pwm_interface.h:76
PWM_INTERFACE::Initialize
void(* Initialize)(void)
Pointer to SCCPx_PWM_Initialize e.g. SCCP1_PWM_Initialize.
Definition pwm_interface.h:55