blob: a0f99b3071bee5704676d7287f1c4b4ffad1db0f [file] [log] [blame]
Brian Silvermanf7f267a2017-02-04 16:16:08 -08001/**
2 * @file ctre.h
3 * Common header for all CTRE HAL modules.
4 */
5#ifndef CTRE_H
6#define CTRE_H
7
8//Bit Defines
9#define BIT0 0x01
10#define BIT1 0x02
11#define BIT2 0x04
12#define BIT3 0x08
13#define BIT4 0x10
14#define BIT5 0x20
15#define BIT6 0x40
16#define BIT7 0x80
17#define BIT8 0x0100
18#define BIT9 0x0200
19#define BIT10 0x0400
20#define BIT11 0x0800
21#define BIT12 0x1000
22#define BIT13 0x2000
23#define BIT14 0x4000
24#define BIT15 0x8000
25
26//Signed
27typedef signed char INT8;
28typedef signed short INT16;
29typedef signed int INT32;
30typedef signed long long INT64;
31
32//Unsigned
33typedef unsigned char UINT8;
34typedef unsigned short UINT16;
35typedef unsigned int UINT32;
36typedef unsigned long long UINT64;
37
38//Other
39typedef unsigned char UCHAR;
40typedef unsigned short USHORT;
41typedef unsigned int UINT;
42typedef unsigned long ULONG;
43
44typedef enum {
45 CTR_OKAY, //!< No Error - Function executed as expected
46 CTR_RxTimeout, //!< CAN frame has not been received within specified period of time.
47 CTR_TxTimeout, //!< Not used.
48 CTR_InvalidParamValue, //!< Caller passed an invalid param
49 CTR_UnexpectedArbId, //!< Specified CAN Id is invalid.
50 CTR_TxFailed, //!< Could not transmit the CAN frame.
51 CTR_SigNotUpdated, //!< Have not received an value response for signal.
52 CTR_BufferFull, //!< Caller attempted to insert data into a buffer that is full.
53}CTR_Code;
54
55#include "ctre_frames.h"
56
57#endif /* CTRE_H */