/**
 * @file        comm_defines.h
 */

/* Define to prevent recursive inclusion **************************************/
#ifndef INC_COMM_DEFINES_H
#define INC_COMM_DEFINES_H

#ifdef __cplusplus
extern "C" {
#endif

/* Types **********************************************************************/
typedef enum{
    COMM_ADDRESS_PC = 0x00,
    COMM_ADDRESS_MB = 0x10
}comm_address_t;

typedef enum{
    COMM_RESPONSE_ACK                 = 0x10,
    COMM_RESPONSE_STATUS              = 0x11,
    COMM_RESPONSE_NACK                = 0x12,

    COMM_COMMON_SYSTEM                = 0x20,
    COMM_COMMON_COUNTERS              = 0x21,
    COMM_COMMON_ERRORS                = 0x22,
    COMM_COMMON_RESET                 = 0x23,

    COMM_ENCODER_STATUS               = 0x30,

    COMM_MOTOR_SET_RPM                = 0x40,
    COMM_MOTOR_STOP                   = 0x41,

    COMM_LOG_START                    = 0x50,
    COMM_LOG_SEGMENT                  = 0x51,
    COMM_LOG_STOP                     = 0x52,
    COMM_LOG_RESET                    = 0x53
}comm_command_t;

#ifdef __cplusplus
}
#endif

#endif /* INC_COMM_DEFINES_H */
