]> rtime.felk.cvut.cz Git - arc.git/blob - boards/mpc5516it/examples/com_simple/config/Can_Cfg.h
mpc5516, updated examples.
[arc.git] / boards / mpc5516it / examples / com_simple / config / Can_Cfg.h
1 /*\r
2 * Configuration of module: Can (Can_Cfg.h)\r
3 *\r
4 * Created by:              ArcCore\r
5 * Copyright:               \r
6 *\r
7 * Configured for (MCU):    MPC551x\r
8 *\r
9 * Module vendor:           ArcCore\r
10 * Generator version:       2.0.2\r
11 *\r
12 * Generated by Arctic Studio (http://arccore.com) \r
13 */\r
14 \r
15
16 #if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )
17 #error Can: Configuration file expected BSW module version to be 1.0.*
18 #endif
19
20         \r
21 \r
22 #ifndef CAN_CFG_H_\r
23 #define CAN_CFG_H_\r
24 \r
25 // Number of controller configs\r
26 #define CAN_ARC_CTRL_CONFIG_CNT         1\r
27 \r
28 #define CAN_DEV_ERROR_DETECT                    STD_OFF\r
29 #define CAN_VERSION_INFO_API                    STD_OFF\r
30 #define CAN_MULTIPLEXED_TRANSMISSION    STD_OFF  // Not supported\r
31 #define CAN_WAKEUP_SUPPORT                              STD_OFF  // Not supported\r
32 #define CAN_HW_TRANSMIT_CANCELLATION    STD_OFF  // Not supported\r
33 \r
34 typedef enum {\r
35         FLEXCAN_A = 0,\r
36         CAN_CTRL_A = 0,\r
37         FLEXCAN_B = 1,\r
38         CAN_CTRL_B = 1,\r
39         FLEXCAN_C = 2,\r
40         CAN_CTRL_C = 2,\r
41         FLEXCAN_D = 3,\r
42         CAN_CTRL_D = 3,\r
43         FLEXCAN_E = 4,\r
44         CAN_CTRL_E = 4,\r
45         FLEXCAN_F = 5,\r
46         CAN_CTRL_F = 5,\r
47         CAN_CONTROLLER_CNT = 6\r
48 }CanControllerIdType;\r
49 \r
50 typedef enum {\r
51         CAN_OBJECT_TYPE_RECEIVE,\r
52         CAN_OBJECT_TYPE_TRANSMIT\r
53 } Can_ObjectTypeType;\r
54 \r
55 \r
56 typedef enum {\r
57         TxHWObject,\r
58         NUM_OF_HTHS\r
59 } Can_Arc_HTHType;\r
60 \r
61 \r
62 typedef enum {\r
63         RxHWObject,\r
64         NUM_OF_HRHS\r
65 } Can_Arc_HRHType;\r
66 \r
67 \r
68 typedef struct {\r
69         //      Specifies the InstanceId of this module instance. If only one instance is\r
70         //      present it shall have the Id 0\r
71         uint8 CanIndex;\r
72 } Can_GeneralType;\r
73 \r
74 // Start mc9s12 unique\r
75 typedef enum {\r
76   CAN_ARC_IDAM_2_32BIT,\r
77   CAN_ARC_IDAM_4_16BIT,\r
78   CAN_ARC_IDAM_8_8BIT,\r
79   CAN_ARC_IDAM_FILTER_CLOSED,\r
80 } Can_Arc_IDAMType;\r
81 \r
82 typedef uint32 Can_FilterMaskType;\r
83 \r
84 typedef enum {\r
85         CAN_ARC_PROCESS_TYPE_INTERRUPT,\r
86         CAN_ARC_PROCESS_TYPE_POLLING\r
87 } Can_Arc_ProcessType;\r
88 \r
89 struct Can_ControllerConfig;\r
90 struct Can_Callback;\r
91 \r
92 typedef struct {\r
93         const struct Can_ControllerConfig *CanController;\r
94         \r
95         // Callbacks( Extension )\r
96         const struct Can_Callback *CanCallbacks;        \r
97         const  uint8 * const ArcHthToUnit;\r
98         const  uint8 * const ArcHthToHoh;\r
99         const  uint8 * const ArcCtrlToUnit;\r
100 } Can_ConfigSetType;\r
101 \r
102 \r
103 typedef struct {\r
104         // This is the multiple configuration set container for CAN Driver\r
105         // Multiplicity 1..*\r
106         const Can_ConfigSetType  *CanConfigSet;\r
107         // This container contains the parameters related each CAN\r
108         // Driver Unit.\r
109         // Multiplicity 1..*\r
110         const Can_GeneralType    *CanGeneral;\r
111         \r
112 } Can_ConfigType;\r
113 \r
114 extern const Can_ConfigType CanConfigData;\r
115 extern const Can_ConfigSetType Can_ConfigSet;\r
116 \r
117 #endif /*CAN_CFG_H_*/\r