|
#define | CO_LITTLE_ENDIAN |
| CO_LITTLE_ENDIAN or CO_BIG_ENDIAN must be defined.
|
|
#define | CO_SWAP_16(x) x |
| Macro must swap bytes, if CO_BIG_ENDIAN is defined.
|
|
#define | CO_SWAP_32(x) x |
| Macro must swap bytes, if CO_BIG_ENDIAN is defined.
|
|
#define | CO_SWAP_64(x) x |
| Macro must swap bytes, if CO_BIG_ENDIAN is defined.
|
|
#define | NULL (0) |
| NULL, for general usage.
|
|
#define | true 1 |
| Logical true, for general use.
|
|
#define | false 0 |
| Logical false, for general use.
|
|
|
typedef uint_fast8_t | bool_t |
| Boolean data type for general use.
|
|
typedef signed char | int8_t |
| INTEGER8 in CANopen (0002h), 8-bit signed integer.
|
|
typedef signed int | int16_t |
| INTEGER16 in CANopen (0003h), 16-bit signed integer.
|
|
typedef signed long int | int32_t |
| INTEGER32 in CANopen (0004h), 32-bit signed integer.
|
|
typedef signed long long int | int64_t |
| INTEGER64 in CANopen (0015h), 64-bit signed integer.
|
|
typedef unsigned char | uint8_t |
| UNSIGNED8 in CANopen (0005h), 8-bit unsigned integer.
|
|
typedef unsigned int | uint16_t |
| UNSIGNED16 in CANopen (0006h), 16-bit unsigned integer.
|
|
typedef unsigned long int | uint32_t |
| UNSIGNED32 in CANopen (0007h), 32-bit unsigned integer.
|
|
typedef unsigned long long int | uint64_t |
| UNSIGNED64 in CANopen (001Bh), 64-bit unsigned integer.
|
|
typedef float | float32_t |
| REAL32 in CANopen (0008h), single precision floating point value, 32-bit.
|
|
typedef double | float64_t |
| REAL64 in CANopen (0011h), double precision floating point value, 64-bit.
|
|
Target specific basic definitions and data types.
Must be defined in the CO_driver_target.h file.
Depending on processor or compiler architecture, one of the two macros must be defined: CO_LITTLE_ENDIAN or CO_BIG_ENDIAN. CANopen itself is little endian.
Basic data types may be specified differently on different architectures. Usually true
and false
are defined in <stdbool.h>
, NULL
is defined in <stddef.h>
, int8_t
to uint64_t
are defined in <stdint.h>
.