6static const uint8_t CANCTRL_REQOP = 0xE0;
7static const uint8_t CANCTRL_ABAT = 0x10;
8static const uint8_t CANCTRL_OSM = 0x08;
9static const uint8_t CANCTRL_CLKEN = 0x04;
10static const uint8_t CANCTRL_CLKPRE = 0x03;
128static const uint8_t CANSTAT_OPMOD = 0xE0;
129static const uint8_t CANSTAT_ICOD = 0x0E;
131static const uint8_t CNF3_SOF = 0x80;
134static const uint8_t SIDL_EXIDE_MASK = 0x08;
136static const uint8_t DLC_MASK = 0x0F;
137static const uint8_t RTR_MASK = 0x40;
139static const uint8_t RXB_CTRL_RXM_STD = 0x20;
140static const uint8_t RXB_CTRL_RXM_EXT = 0x40;
141static const uint8_t RXB_CTRL_RXM_STDEXT = 0x00;
142static const uint8_t RXB_CTRL_RXM_MASK = 0x60;
143static const uint8_t RXB_CTRL_RTR = 0x08;
144static const uint8_t RXB_0_CTRL_BUKT = 0x04;
146static const uint8_t MCP_SIDH = 0;
147static const uint8_t MCP_SIDL = 1;
148static const uint8_t MCP_EID8 = 2;
149static const uint8_t MCP_EID0 = 3;
150static const uint8_t MCP_DLC = 4;
151static const uint8_t MCP_DATA = 5;
156static const uint8_t MCP_8MHZ_1000KBPS_CFG1 = 0x00;
157static const uint8_t MCP_8MHZ_1000KBPS_CFG2 = 0x80;
158static const uint8_t MCP_8MHZ_1000KBPS_CFG3 = 0x80;
160static const uint8_t MCP_8MHZ_500KBPS_CFG1 = 0x00;
161static const uint8_t MCP_8MHZ_500KBPS_CFG2 = 0x90;
162static const uint8_t MCP_8MHZ_500KBPS_CFG3 = 0x82;
164static const uint8_t MCP_8MHZ_250KBPS_CFG1 = 0x00;
165static const uint8_t MCP_8MHZ_250KBPS_CFG2 = 0xB1;
166static const uint8_t MCP_8MHZ_250KBPS_CFG3 = 0x85;
168static const uint8_t MCP_8MHZ_200KBPS_CFG1 = 0x00;
169static const uint8_t MCP_8MHZ_200KBPS_CFG2 = 0xB4;
170static const uint8_t MCP_8MHZ_200KBPS_CFG3 = 0x86;
172static const uint8_t MCP_8MHZ_125KBPS_CFG1 = 0x01;
173static const uint8_t MCP_8MHZ_125KBPS_CFG2 = 0xB1;
174static const uint8_t MCP_8MHZ_125KBPS_CFG3 = 0x85;
176static const uint8_t MCP_8MHZ_100KBPS_CFG1 = 0x01;
177static const uint8_t MCP_8MHZ_100KBPS_CFG2 = 0xB4;
178static const uint8_t MCP_8MHZ_100KBPS_CFG3 = 0x86;
180static const uint8_t MCP_8MHZ_80KBPS_CFG1 = 0x01;
181static const uint8_t MCP_8MHZ_80KBPS_CFG2 = 0xBF;
182static const uint8_t MCP_8MHZ_80KBPS_CFG3 = 0x87;
184static const uint8_t MCP_8MHZ_50KBPS_CFG1 = 0x03;
185static const uint8_t MCP_8MHZ_50KBPS_CFG2 = 0xB4;
186static const uint8_t MCP_8MHZ_50KBPS_CFG3 = 0x86;
188static const uint8_t MCP_8MHZ_40KBPS_CFG1 = 0x03;
189static const uint8_t MCP_8MHZ_40KBPS_CFG2 = 0xBF;
190static const uint8_t MCP_8MHZ_40KBPS_CFG3 = 0x87;
192static const uint8_t MCP_8MHZ_33K3BPS_CFG1 = 0x47;
193static const uint8_t MCP_8MHZ_33K3BPS_CFG2 = 0xE2;
194static const uint8_t MCP_8MHZ_33K3BPS_CFG3 = 0x85;
196static const uint8_t MCP_8MHZ_31K25BPS_CFG1 = 0x07;
197static const uint8_t MCP_8MHZ_31K25BPS_CFG2 = 0xA4;
198static const uint8_t MCP_8MHZ_31K25BPS_CFG3 = 0x84;
200static const uint8_t MCP_8MHZ_20KBPS_CFG1 = 0x07;
201static const uint8_t MCP_8MHZ_20KBPS_CFG2 = 0xBF;
202static const uint8_t MCP_8MHZ_20KBPS_CFG3 = 0x87;
204static const uint8_t MCP_8MHZ_10KBPS_CFG1 = 0x0F;
205static const uint8_t MCP_8MHZ_10KBPS_CFG2 = 0xBF;
206static const uint8_t MCP_8MHZ_10KBPS_CFG3 = 0x87;
208static const uint8_t MCP_8MHZ_5KBPS_CFG1 = 0x1F;
209static const uint8_t MCP_8MHZ_5KBPS_CFG2 = 0xBF;
210static const uint8_t MCP_8MHZ_5KBPS_CFG3 = 0x87;
216static const uint8_t MCP_12MHZ_1000KBPS_CFG1 = 0x00;
217static const uint8_t MCP_12MHZ_1000KBPS_CFG2 = 0x88;
218static const uint8_t MCP_12MHZ_1000KBPS_CFG3 = 0x81;
220static const uint8_t MCP_12MHZ_500KBPS_CFG1 = 0x00;
221static const uint8_t MCP_12MHZ_500KBPS_CFG2 = 0x9B;
222static const uint8_t MCP_12MHZ_500KBPS_CFG3 = 0x82;
224static const uint8_t MCP_12MHZ_250KBPS_CFG1 = 0x01;
225static const uint8_t MCP_12MHZ_250KBPS_CFG2 = 0x9B;
226static const uint8_t MCP_12MHZ_250KBPS_CFG3 = 0x82;
228static const uint8_t MCP_12MHZ_200KBPS_CFG1 = 0x01;
229static const uint8_t MCP_12MHZ_200KBPS_CFG2 = 0xA4;
230static const uint8_t MCP_12MHZ_200KBPS_CFG3 = 0x83;
232static const uint8_t MCP_12MHZ_125KBPS_CFG1 = 0x03;
233static const uint8_t MCP_12MHZ_125KBPS_CFG2 = 0x9B;
234static const uint8_t MCP_12MHZ_125KBPS_CFG3 = 0x82;
236static const uint8_t MCP_12MHZ_100KBPS_CFG1 = 0x03;
237static const uint8_t MCP_12MHZ_100KBPS_CFG2 = 0xA4;
238static const uint8_t MCP_12MHZ_100KBPS_CFG3 = 0x83;
240static const uint8_t MCP_12MHZ_80KBPS_CFG1 = 0x04;
241static const uint8_t MCP_12MHZ_80KBPS_CFG2 = 0xA4;
242static const uint8_t MCP_12MHZ_80KBPS_CFG3 = 0x83;
244static const uint8_t MCP_12MHZ_50KBPS_CFG1 = 0x07;
245static const uint8_t MCP_12MHZ_50KBPS_CFG2 = 0xA4;
246static const uint8_t MCP_12MHZ_50KBPS_CFG3 = 0x83;
248static const uint8_t MCP_12MHZ_40KBPS_CFG1 = 0x09;
249static const uint8_t MCP_12MHZ_40KBPS_CFG2 = 0xA4;
250static const uint8_t MCP_12MHZ_40KBPS_CFG3 = 0x83;
252static const uint8_t MCP_12MHZ_33K3BPS_CFG1 = 0x08;
253static const uint8_t MCP_12MHZ_33K3BPS_CFG2 = 0xB6;
254static const uint8_t MCP_12MHZ_33K3BPS_CFG3 = 0x84;
256static const uint8_t MCP_12MHZ_20KBPS_CFG1 = 0x0E;
257static const uint8_t MCP_12MHZ_20KBPS_CFG2 = 0xB6;
258static const uint8_t MCP_12MHZ_20KBPS_CFG3 = 0x84;
260static const uint8_t MCP_12MHZ_10KBPS_CFG1 = 0x31;
261static const uint8_t MCP_12MHZ_10KBPS_CFG2 = 0x9B;
262static const uint8_t MCP_12MHZ_10KBPS_CFG3 = 0x82;
264static const uint8_t MCP_12MHZ_5KBPS_CFG1 = 0x3B;
265static const uint8_t MCP_12MHZ_5KBPS_CFG2 = 0xB6;
266static const uint8_t MCP_12MHZ_5KBPS_CFG3 = 0x84;
271static const uint8_t MCP_16MHZ_1000KBPS_CFG1 = 0x00;
272static const uint8_t MCP_16MHZ_1000KBPS_CFG2 = 0xD0;
273static const uint8_t MCP_16MHZ_1000KBPS_CFG3 = 0x82;
275static const uint8_t MCP_16MHZ_500KBPS_CFG1 = 0x00;
276static const uint8_t MCP_16MHZ_500KBPS_CFG2 = 0xF0;
277static const uint8_t MCP_16MHZ_500KBPS_CFG3 = 0x86;
279static const uint8_t MCP_16MHZ_250KBPS_CFG1 = 0x41;
280static const uint8_t MCP_16MHZ_250KBPS_CFG2 = 0xF1;
281static const uint8_t MCP_16MHZ_250KBPS_CFG3 = 0x85;
283static const uint8_t MCP_16MHZ_200KBPS_CFG1 = 0x01;
284static const uint8_t MCP_16MHZ_200KBPS_CFG2 = 0xFA;
285static const uint8_t MCP_16MHZ_200KBPS_CFG3 = 0x87;
287static const uint8_t MCP_16MHZ_125KBPS_CFG1 = 0x03;
288static const uint8_t MCP_16MHZ_125KBPS_CFG2 = 0xF0;
289static const uint8_t MCP_16MHZ_125KBPS_CFG3 = 0x86;
291static const uint8_t MCP_16MHZ_100KBPS_CFG1 = 0x03;
292static const uint8_t MCP_16MHZ_100KBPS_CFG2 = 0xFA;
293static const uint8_t MCP_16MHZ_100KBPS_CFG3 = 0x87;
295static const uint8_t MCP_16MHZ_80KBPS_CFG1 = 0x03;
296static const uint8_t MCP_16MHZ_80KBPS_CFG2 = 0xFF;
297static const uint8_t MCP_16MHZ_80KBPS_CFG3 = 0x87;
299static const uint8_t MCP_16MHZ_83K3BPS_CFG1 = 0x03;
300static const uint8_t MCP_16MHZ_83K3BPS_CFG2 = 0xBE;
301static const uint8_t MCP_16MHZ_83K3BPS_CFG3 = 0x07;
303static const uint8_t MCP_16MHZ_50KBPS_CFG1 = 0x07;
304static const uint8_t MCP_16MHZ_50KBPS_CFG2 = 0xFA;
305static const uint8_t MCP_16MHZ_50KBPS_CFG3 = 0x87;
307static const uint8_t MCP_16MHZ_40KBPS_CFG1 = 0x07;
308static const uint8_t MCP_16MHZ_40KBPS_CFG2 = 0xFF;
309static const uint8_t MCP_16MHZ_40KBPS_CFG3 = 0x87;
311static const uint8_t MCP_16MHZ_33K3BPS_CFG1 = 0x4E;
312static const uint8_t MCP_16MHZ_33K3BPS_CFG2 = 0xF1;
313static const uint8_t MCP_16MHZ_33K3BPS_CFG3 = 0x85;
315static const uint8_t MCP_16MHZ_20KBPS_CFG1 = 0x0F;
316static const uint8_t MCP_16MHZ_20KBPS_CFG2 = 0xFF;
317static const uint8_t MCP_16MHZ_20KBPS_CFG3 = 0x87;
319static const uint8_t MCP_16MHZ_10KBPS_CFG1 = 0x1F;
320static const uint8_t MCP_16MHZ_10KBPS_CFG2 = 0xFF;
321static const uint8_t MCP_16MHZ_10KBPS_CFG3 = 0x87;
323static const uint8_t MCP_16MHZ_5KBPS_CFG1 = 0x3F;
324static const uint8_t MCP_16MHZ_5KBPS_CFG2 = 0xFF;
325static const uint8_t MCP_16MHZ_5KBPS_CFG3 = 0x87;
330static const uint8_t MCP_20MHZ_1000KBPS_CFG1 = 0x00;
331static const uint8_t MCP_20MHZ_1000KBPS_CFG2 = 0xD9;
332static const uint8_t MCP_20MHZ_1000KBPS_CFG3 = 0x82;
334static const uint8_t MCP_20MHZ_500KBPS_CFG1 = 0x00;
335static const uint8_t MCP_20MHZ_500KBPS_CFG2 = 0xFA;
336static const uint8_t MCP_20MHZ_500KBPS_CFG3 = 0x87;
338static const uint8_t MCP_20MHZ_250KBPS_CFG1 = 0x41;
339static const uint8_t MCP_20MHZ_250KBPS_CFG2 = 0xFB;
340static const uint8_t MCP_20MHZ_250KBPS_CFG3 = 0x86;
342static const uint8_t MCP_20MHZ_200KBPS_CFG1 = 0x01;
343static const uint8_t MCP_20MHZ_200KBPS_CFG2 = 0xFF;
344static const uint8_t MCP_20MHZ_200KBPS_CFG3 = 0x87;
346static const uint8_t MCP_20MHZ_125KBPS_CFG1 = 0x03;
347static const uint8_t MCP_20MHZ_125KBPS_CFG2 = 0xFA;
348static const uint8_t MCP_20MHZ_125KBPS_CFG3 = 0x87;
350static const uint8_t MCP_20MHZ_100KBPS_CFG1 = 0x04;
351static const uint8_t MCP_20MHZ_100KBPS_CFG2 = 0xFA;
352static const uint8_t MCP_20MHZ_100KBPS_CFG3 = 0x87;
354static const uint8_t MCP_20MHZ_83K3BPS_CFG1 = 0x04;
355static const uint8_t MCP_20MHZ_83K3BPS_CFG2 = 0xFE;
356static const uint8_t MCP_20MHZ_83K3BPS_CFG3 = 0x87;
358static const uint8_t MCP_20MHZ_80KBPS_CFG1 = 0x04;
359static const uint8_t MCP_20MHZ_80KBPS_CFG2 = 0xFF;
360static const uint8_t MCP_20MHZ_80KBPS_CFG3 = 0x87;
362static const uint8_t MCP_20MHZ_50KBPS_CFG1 = 0x09;
363static const uint8_t MCP_20MHZ_50KBPS_CFG2 = 0xFA;
364static const uint8_t MCP_20MHZ_50KBPS_CFG3 = 0x87;
366static const uint8_t MCP_20MHZ_40KBPS_CFG1 = 0x09;
367static const uint8_t MCP_20MHZ_40KBPS_CFG2 = 0xFF;
368static const uint8_t MCP_20MHZ_40KBPS_CFG3 = 0x87;
370static const uint8_t MCP_20MHZ_33K3BPS_CFG1 = 0x0B;
371static const uint8_t MCP_20MHZ_33K3BPS_CFG2 = 0xFF;
372static const uint8_t MCP_20MHZ_33K3BPS_CFG3 = 0x87;
@ INSTRUCTION_READ_STATUS
@ CANCTRL_REQOP_LISTENONLY
Providing packet encoding functions for exchanging data with a remote host.