annotate packages/devs/can/arm/lpc2xxx/current/include/can_lpc2xxx_baudrates.h @ 2417:05280737f180

* include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from baudrate table entries (they aren't intended to be interpreted as octal) * tests/can_baudrates.c tests/can_busload.c tests/can_rx_tx.c: removed #include pkgconf/devs_can_loop.h
author asl
date Fri, 17 Aug 2007 08:10:44 +0000
parents e8eaf852a606
children a52d470bc691
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2409
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
1 #ifndef CYGONCE_CAN_LPC2XXX_BAUDRATES_H
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
2 #define CYGONCE_CAN_LPC2XXX_BAUDRATES_H
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
3 //==========================================================================
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
4 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
5 // devs/can/arm/lpc2xxx/current/include/can_lpc2xxx_baudrates.h
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
6 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
7 // Precalculated values for bit timing register
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
8 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
9 //==========================================================================
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
10 //####ECOSGPLCOPYRIGHTBEGIN####
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
11 // -------------------------------------------
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
12 // This file is part of eCos, the Embedded Configurable Operating System.
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
13 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
14 // Copyright (C) 2003 Gary Thomas
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
15 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
16 // eCos is free software; you can redistribute it and/or modify it under
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
17 // the terms of the GNU General Public License as published by the Free
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
18 // Software Foundation; either version 2 or (at your option) any later version.
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
19 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
20 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
21 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
22 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
23 // for more details.
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
24 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
25 // You should have received a copy of the GNU General Public License along
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
26 // with eCos; if not, write to the Free Software Foundation, Inc.,
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
27 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
28 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
29 // As a special exception, if other files instantiate templates or use macros
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
30 // or inline functions from this file, or you compile this file and link it
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
31 // with other works to produce a work based on this file, this file does not
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
32 // by itself cause the resulting work to be covered by the GNU General Public
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
33 // License. However the source code for this file must still be made available
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
34 // in accordance with section (3) of the GNU General Public License.
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
35 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
36 // This exception does not invalidate any other reasons why a work based on
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
37 // this file might be covered by the GNU General Public License.
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
38 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
39 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
40 // at http://sources.redhat.com/ecos/ecos-license/
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
41 // -------------------------------------------
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
42 //####ECOSGPLCOPYRIGHTEND####
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
43 //==========================================================================
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
44 //#####DESCRIPTIONBEGIN####
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
45 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
46 // Author(s): Uwe Kindler
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
47 // Contributors: Uwe Kindler
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
48 // Date: 2007-07-01
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
49 // Purpose: Precalculated bit timing values for various baudrates
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
50 // Description:
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
51 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
52 //####DESCRIPTIONEND####
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
53 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
54 //==========================================================================
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
55
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
56
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
57 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
58 // Peripheral clock speed
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
59 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
60 #define CYGNUM_CAN_LPC2XXX_VPB_CLK (CYGNUM_HAL_ARM_LPC2XXX_CLOCK_SPEED / CYGNUM_HAL_ARM_LPC2XXX_VPBDIV)
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
61
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
62 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
63 // Macro for creation of CAN_BR value for baudrate tbl
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
64 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
65 #define CAN_BR_TBL_ENTRY(_brp_, _tseg1_, _tseg2_, _sjw_, _sam_) \
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
66 ((_sam_ << 23) | (_tseg2_ << 20) | (_tseg1_ << 16) | (_sjw_ << 14) | (_brp_))
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
67
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
68
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
69 //==========================================================================
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
70 // BAUDRATES
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
71 //==========================================================================
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
72 #if CYGNUM_CAN_LPC2XXX_VPB_CLK == 60000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
73 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
74 // Table with register values for baudrates at peripheral clock of 60 MHz
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
75 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
76 static const cyg_uint32 lpc2xxx_br_tbl[] =
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
77 {
2417
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
78 CAN_BR_TBL_ENTRY(300, 15, 2, 0, 1), // 10 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
79 CAN_BR_TBL_ENTRY(150, 15, 2, 0, 1), // 20 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
80 CAN_BR_TBL_ENTRY(59, 15, 2, 0, 1), // 50 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
81 CAN_BR_TBL_ENTRY(39, 11, 1, 0, 1), // 100 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
82 CAN_BR_TBL_ENTRY(29, 12, 1, 0, 1), // 125 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
83 CAN_BR_TBL_ENTRY(14, 12, 1, 0, 1), // 250 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
84 CAN_BR_TBL_ENTRY( 7, 11, 1, 0, 0), // 500 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
85 CAN_BR_TBL_ENTRY( 4, 11, 1, 0, 0), // 800 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
86 CAN_BR_TBL_ENTRY( 3, 11, 1, 0, 0), // 1000 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
87 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // Autobaud - not supported
2409
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
88 };
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
89 #define HAL_LPC2XXX_BAUD_TBL_DEFINED 1
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
90 #endif // CYGNUM_CAN_LPC2XXX_VPB_CLK == 60000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
91
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
92 #if CYGNUM_CAN_LPC2XXX_VPB_CLK == 30000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
93 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
94 // Table with register values for baudrates at peripheral clock of 30 MHz
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
95 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
96 static const cyg_uint32 lpc2xxx_br_tbl[] =
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
97 {
2417
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
98 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // 10 kbaud - not supported
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
99 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // 20 kbaud - not supported
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
100 CAN_BR_TBL_ENTRY(59, 15, 2, 0, 1), // 50 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
101 CAN_BR_TBL_ENTRY(39, 11, 1, 0, 1), // 100 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
102 CAN_BR_TBL_ENTRY(29, 12, 1, 0, 1), // 125 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
103 CAN_BR_TBL_ENTRY(14, 12, 1, 0, 1), // 250 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
104 CAN_BR_TBL_ENTRY( 7, 11, 1, 0, 0), // 500 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
105 CAN_BR_TBL_ENTRY( 4, 11, 1, 0, 0), // 800 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
106 CAN_BR_TBL_ENTRY( 3, 11, 1, 0, 0), // 1000 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
107 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // Autobaud - not supported
2409
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
108 };
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
109 #define HAL_LPC2XXX_BAUD_TBL_DEFINED 1
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
110 #endif // CYGNUM_CAN_LPC2XXX_VPB_CLK == 30000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
111
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
112 #if CYGNUM_CAN_LPC2XXX_VPB_CLK == 15000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
113 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
114 // Table with register values for baudrates at peripheral clock of 15 MHz
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
115 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
116 static const cyg_uint32 lpc2xxx_br_tbl[] =
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
117 {
2417
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
118 CAN_BR_TBL_ENTRY(59, 15, 7, 0, 1), // 10 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
119 CAN_BR_TBL_ENTRY(49, 11, 1, 0, 1), // 20 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
120 CAN_BR_TBL_ENTRY(19, 11, 1, 0, 1), // 50 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
121 CAN_BR_TBL_ENTRY( 9, 11, 1, 0, 1), // 100 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
122 CAN_BR_TBL_ENTRY( 7, 11, 1, 0, 1), // 125 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
123 CAN_BR_TBL_ENTRY( 3, 11, 1, 0, 1), // 250 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
124 CAN_BR_TBL_ENTRY( 1, 11, 1, 0, 0), // 500 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
125 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // 800 kbaud - not supported
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
126 CAN_BR_TBL_ENTRY( 0, 11, 1, 0, 0), // 1000 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
127 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // Autobaud - not supported
2409
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
128 };
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
129 #define HAL_LPC2XXX_BAUD_TBL_DEFINED 1
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
130 #endif // CYGNUM_CAN_LPC2XXX_VPB_CLK == 15000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
131
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
132 #if CYGNUM_CAN_LPC2XXX_VPB_CLK == 48000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
133 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
134 // Table with register values for baudrates at peripheral clock of 48 MHz
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
135 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
136 static const cyg_uint32 lpc2xxx_br_tbl[] =
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
137 {
2417
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
138 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // 10 kbaud - not supported
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
139 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // 20 kbaud - not supported
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
140 CAN_BR_TBL_ENTRY(59, 12, 1, 0, 1), // 50 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
141 CAN_BR_TBL_ENTRY(29, 12, 1, 0, 1), // 100 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
142 CAN_BR_TBL_ENTRY(23, 12, 1, 0, 1), // 125 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
143 CAN_BR_TBL_ENTRY(11, 12, 1, 0, 1), // 250 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
144 CAN_BR_TBL_ENTRY( 5, 12, 1, 0, 0), // 500 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
145 CAN_BR_TBL_ENTRY( 3, 11, 1, 0, 0), // 800 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
146 CAN_BR_TBL_ENTRY( 2, 12, 1, 0, 0), // 1000 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
147 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // Autobaud - not supported
2409
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
148 };
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
149 #define HAL_LPC2XXX_BAUD_TBL_DEFINED 1
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
150 #endif // CYGNUM_CAN_LPC2XXX_VPB_CLK == 48000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
151
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
152 #if CYGNUM_CAN_LPC2XXX_VPB_CLK == 24000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
153 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
154 // Table with register values for baudrates at peripheral clock of 24 MHz
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
155 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
156 static const cyg_uint32 lpc2xxx_br_tbl[] =
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
157 {
2417
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
158 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // 10 kbaud - not supported
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
159 CAN_BR_TBL_ENTRY(59, 15, 2, 0, 1), // 20 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
160 CAN_BR_TBL_ENTRY(29, 12, 1, 0, 1), // 50 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
161 CAN_BR_TBL_ENTRY(14, 12, 1, 0, 1), // 100 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
162 CAN_BR_TBL_ENTRY(11, 12, 1, 0, 1), // 125 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
163 CAN_BR_TBL_ENTRY( 5, 12, 1, 0, 1), // 250 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
164 CAN_BR_TBL_ENTRY( 2, 12, 1, 0, 0), // 500 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
165 CAN_BR_TBL_ENTRY( 1, 11, 1, 0, 0), // 800 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
166 CAN_BR_TBL_ENTRY( 1, 5, 0, 0, 0), // 1000 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
167 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // Autobaud - not supported
2409
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
168 };
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
169 #define HAL_LPC2XXX_BAUD_TBL_DEFINED 1
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
170 #endif // CYGNUM_CAN_LPC2XXX_VPB_CLK == 24000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
171
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
172 #if CYGNUM_CAN_LPC2XXX_VPB_CLK == 12000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
173 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
174 // Table with register values for baudrates at peripheral clock of 12 MHz
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
175 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
176 static const cyg_uint32 lpc2xxx_br_tbl[] =
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
177 {
2417
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
178 CAN_BR_TBL_ENTRY(59, 15, 2, 0, 1), // 10 kbaud - not supported
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
179 CAN_BR_TBL_ENTRY(39, 11, 1, 0, 1), // 20 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
180 CAN_BR_TBL_ENTRY(14, 12, 1, 0, 1), // 50 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
181 CAN_BR_TBL_ENTRY( 7, 11, 1, 0, 1), // 100 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
182 CAN_BR_TBL_ENTRY( 5, 12, 1, 0, 1), // 125 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
183 CAN_BR_TBL_ENTRY( 2, 12, 1, 0, 1), // 250 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
184 CAN_BR_TBL_ENTRY( 2, 05, 0, 0, 0), // 500 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
185 CAN_BR_TBL_ENTRY( 0, 11, 1, 0, 0), // 800 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
186 CAN_BR_TBL_ENTRY( 0, 9, 0, 0, 0), // 1000 kbaud
05280737f180 * include/can_lpc2xxx_baudrates.h: Removed all prefixed zeros from
asl
parents: 2409
diff changeset
187 CAN_BR_TBL_ENTRY( 0, 0, 0, 0, 0), // Autobaud - not supported
2409
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
188 };
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
189 #define HAL_LPC2XXX_BAUD_TBL_DEFINED 1
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
190 #endif // CYGNUM_CAN_LPC2XXX_VPB_CLK == 12000000
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
191
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
192
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
193 //==========================================================================
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
194 // BIT TIMING MACRO
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
195 //==========================================================================
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
196 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
197 // Macro fills baudrate register value depending on selected baudrate
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
198 // For several LPC2XXX peripheral clock speeds we provide a pre calculated
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
199 // baudrate table. If the board uses another clock speed, then the platform
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
200 // HAL needs to provide an own HAL_LPC2XXX_GET_CAN_BR() macro that returns
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
201 // valid baudrate register values or it needs to patch this file with
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
202 // an additional table for the desired clock speed
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
203 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
204 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
205 // If a certain baudrate is not supported, then this macro shall return
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
206 // 0 as the baudrate register value
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
207 //
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
208 #ifdef HAL_LPC2XXX_BAUD_TBL_DEFINED
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
209 #define HAL_LPC2XXX_GET_CAN_BR(_baudrate_, _br_) \
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
210 CYG_MACRO_START \
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
211 _br_ = lpc2xxx_br_tbl[(_baudrate_) - CYGNUM_CAN_KBAUD_10]; \
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
212 CYG_MACRO_END
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
213 #endif // HAL_LPC2XXX_BAUD_TBL_DEFINED
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
214
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
215 //-------------------------------------------------------------------------
e8eaf852a606 2007-07-07 Alexey Shusharin <mrfinch@mail.ru>
asl
parents: 2406
diff changeset
216 #endif // #ifndef CYGONCE_CAN_LPC2XXX_BAUDRATES_H