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

Loading...
Searching...
No Matches
crc_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 CRC_INTERFACE_H
39#define CRC_INTERFACE_H
40
41// Section: Included Files
42
43#include <stdbool.h>
44#include "crc_types.h"
45
46// Section: Data Type Definitions
47
54 struct CRC_INTERFACE
55{
56 void (*Initialize)(void);
58
59 void (*Deinitialize)(void);
61
62 void (*SeedSet)(uint32_t seed, enum CRC_SEED_METHOD seedMethod, enum CRC_SEED_DIRECTION seedDirection);
64
65 void (*CalculateBufferStart)(void *buffer, uint32_t sizeBytes);
67
68 void (*CalculateProgramStart)(uint32_t startAddr, uint32_t sizeBytes);
70
71 bool (*CalculationIsDone)(void);
73
74 uint32_t (*CalculationResultGet)(bool reverse, uint32_t xorValue);
76
77 uint32_t (*CalculationResultRawGet)(void);
79
80 uint32_t (*CalculationResultReverseGet)(void);
82
83 uint32_t (*CalculationResultXORGet)(uint32_t xorValue);
85
86 void (*EventCallbackRegister)(void (*CallbackHandler)(void));
88
89 void (*Tasks)(void);
91};
92
93#endif //CRC_INTERFACE_H
crc_types.h
This is the generated driver types header file for the CRC driver.
CRC_SEED_DIRECTION
CRC_SEED_DIRECTION
Definition crc_types.h:77
CRC_SEED_METHOD
CRC_SEED_METHOD
Definition crc_types.h:66
CRC_INTERFACE
Structure containing the function pointers of CRC driver.
Definition crc_interface.h:55
CRC_INTERFACE::CalculateBufferStart
void(* CalculateBufferStart)(void *buffer, uint32_t sizeBytes)
Pointer to CRC_CalculateBufferStart.
Definition crc_interface.h:65
CRC_INTERFACE::Tasks
void(* Tasks)(void)
Pointer to CRC_Tasks (Supported only in polling mode)
Definition crc_interface.h:89
CRC_INTERFACE::EventCallbackRegister
void(* EventCallbackRegister)(void(*CallbackHandler)(void))
Pointer to CRC_EventCallbackRegister.
Definition crc_interface.h:86
CRC_INTERFACE::CalculateProgramStart
void(* CalculateProgramStart)(uint32_t startAddr, uint32_t sizeBytes)
Pointer to CRC_CalculateProgramStart.
Definition crc_interface.h:68
CRC_INTERFACE::SeedSet
void(* SeedSet)(uint32_t seed, enum CRC_SEED_METHOD seedMethod, enum CRC_SEED_DIRECTION seedDirection)
Pointer to CRC_SeedSet.
Definition crc_interface.h:62
CRC_INTERFACE::CalculationResultGet
uint32_t(* CalculationResultGet)(bool reverse, uint32_t xorValue)
Pointer to CRC_CalculationResultGet.
Definition crc_interface.h:74
CRC_INTERFACE::Deinitialize
void(* Deinitialize)(void)
Pointer to CRC_Deinitialize.
Definition crc_interface.h:59
CRC_INTERFACE::CalculationResultReverseGet
uint32_t(* CalculationResultReverseGet)(void)
Pointer to CRC_CalculationResultReverseGet
Definition crc_interface.h:80
CRC_INTERFACE::CalculationResultXORGet
uint32_t(* CalculationResultXORGet)(uint32_t xorValue)
Pointer to CRC_CalculationResultXORGet.
Definition crc_interface.h:83
CRC_INTERFACE::CalculationIsDone
bool(* CalculationIsDone)(void)
Pointer to CRC_CalculationIsDone.
Definition crc_interface.h:71
CRC_INTERFACE::CalculationResultRawGet
uint32_t(* CalculationResultRawGet)(void)
Pointer to CRC_CalculationResultRawGet.
Definition crc_interface.h:77
CRC_INTERFACE::Initialize
void(* Initialize)(void)
Pointer to CRC_Initialize.
Definition crc_interface.h:56