Microchip® Advanced Software Framework

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Type definitions for CRC functions

Data types used in connection with CRC computations.

This includes the type for variables that stores the data size in bytes, memory addresses in Flash, and pointers to memory. Both for Flash and EEPROM there are void pointer types and pointers to byte. Variables can be assigned a memory attribute with IAR. Therefore, pointers will be large enough to hold the address of a given variable. However, with GCC pointers have 16 bits. This means that if a device has a large program memory, we have to use 32-bits variables to store Flash addresses.

Typedefs

typedef uint32_t crcbytenum_t
 Data type to use for byte counts in CRC computations. More...
 

Pointer types for CRC functions

These are needed for IAR and GCC compatibility.

typedef const void * eepromptr_t
 Generic pointer to EEPROM. More...
 
typedef const uint8_t * eeprom_uint8ptr_t
 Pointer to a byte in EEPROM. More...
 
typedef const uint16_t * eeprom_uint16ptr_t
 Pointer to two bytes in EEPROM. More...
 
typedef const uint32_t * eeprom_uint32ptr_t
 Pointer to four bytes in EEPROM. More...
 
typedef flash_addr_t flashptr_t
 Generic pointer to Flash. More...
 
typedef flash_addr_t flash_uint8ptr_t
 Pointer to a byte in Flash. More...
 

typedef uint32_t crcbytenum_t

Data type to use for byte counts in CRC computations.

This type should be kept as small as possible to optimize for speed.

typedef const uint16_t* eeprom_uint16ptr_t

Pointer to two bytes in EEPROM.

typedef const uint32_t* eeprom_uint32ptr_t

Pointer to four bytes in EEPROM.

typedef const uint8_t* eeprom_uint8ptr_t

Pointer to a byte in EEPROM.

typedef const void* eepromptr_t

Generic pointer to EEPROM.

Pointer to a byte in Flash.

Generic pointer to Flash.