This is a collection of references that various OpenLCB developers have found useful. Comments are the opinions of their authors only; reasonable people can differ.
The OpenLCB-CAN Physical Layer Standard references ISO 11898-1 and ISO 11898-2 for CAN specifications. The ISO (http://www.iso.org) sells PDF and paper copies of these. Copies can generally be found in engineering libraries. (http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=33422) (http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=33423)
Note that ISO 11898-3, 11898-4 and 11898-5 specify different variants of the CAN standard that are not relevant to OpenLCB-CAN-compliant implementations. The original 1995 Bosch CAN standard, which can be found online, is similar to ISO 11898-1 and -2, but not identical.
The OpenLCB-CAN Physical Layer Standard references TIA/EIA-568-B or the successor TIA/EIA-568-C for unshielded twisted pair (UTP) cable, and TIA-968-A for RJ45 modular plugs and jacks. The TIA (http://www.tiaonline.org) sells PDF and paper copies of these. Copies can generally be found in engineering libraries.
“Embedded Networking with CAN and CANopen”, Pfeiffer, Ayre and Keydel; generally considered the gold standard in CAN books.
“Embedded Networking with CAN and CANopen”, Olaf Pfeiffer, RTC Books, 2003, ISBN 0-929392-78-7: A good introduction to the ideas behind the CANopen industrial protocol. The space devoted to CAN specifically is limited (chapter 5), but provides a good introduction to how CAN is used in practice. It contains a very good introduction to the various varieties and capabilities of CAN controllers for embedded computers (pages 230-239), which includes useful engineering information on suitable rates, etc.
“A Comprehensible Guide to Controller Area Network”, Wilfried Voss, Copperhill Technologies, 2005
“Multiplexed Networks for Embedded Systems”, Dominique Paret, Wiley, 2007 – good coverage of CAN through first half of volume, including protocol and physical layer issues.
“Designing Embedded Systems with PIC Microcontrollers”, Tim Wilmhurst, Newnes (Elsevier), 2010 – very brief coverage of CAN issues on pages 581 through 586.
“Embedded Systems Design and Applications with the 68HC12 and HCS12”, S.F. Barret and D.J. Pack, Pearson Prentice Hall, 2005 – limited coverage of CAN from pages 595 through 600, with coverage of the details of the specific msCAN12 controller through page 634. Of limited value unless one is writing a low-level library for that controller.
A number of component manufacturers have written application notes that may be useful to OpenLCB- CAN developers.
“ANSI/TIA/EIA-568-B Standards Reference Guide” (http://www.anixter.com/AXECOM/AXEDocLib.nsf/(UnID)/8F2E0839A6190F4986257309005757CC/$file/ANSI-TIA-EIA-568-B.pdf)
“ANSI/TIA/EIA-568-B (B.1, B.2 and B.3) Commercial Building Telecommunications Cabling Standard” (http://www.mohawk-cable.com/support/ansi-tia-eia-568-b.html)
AN713 “Controller Area Network (CAN) Basics” (http://ww1.microchip.com/downloads/en/AppNotes/00713a.pdf)
AN228 “A CAN Physical Layer Discussion” (http://ww1.microchip.com/downloads/en/AppNotes/00228a.pdf)
AN853 “PIC18XXX8 CAN Driver with Prioritized Transmit Buffer” (http://ww1.microchip.com/downloads/en/AppNotes/00853a.pdf)
AN96116 “PCA82C250 / 251 CAN Transceiver” (http://www.nxp.com/documents/application_note/AN96116.pdf)
AN10211 “TJA1040 high speed CAN transceiver” (http://www.nxp.com/documents/application_note/AN10211.pdf)
Analog Applications Journal, August 1999, TI SLYT197 “TIA/EIA-568A Category 5 cables in low-voltage differential signaling (LVDS)” (http://focus.ti.com/lit/an/slyt197/slyt197.pdf)
Application Report SLOA101A “Introduction to the Controller Area Network (CAN)” (http://focus.ti.com.cn/cn/lit/an/sloa101a/sloa101a.pdf )
Application Report SLLA270 “Controller Area Network Physical Layer Requirements” (http://focus.ti.com/lit/an/slla270/slla270.pdf )
Application Report SLLA298B “Isolated CAN Reference Design” (http://focus.ti.com/lit/an/slla298b/slla298b.pdf )
Application Report SLOU262 “Isolated CAN Transceiver EVM” (http://focus.tij.co.jp/jp/lit/ug/slou262/slou262.pdf )
Analog Applications Journal, 3Q 2006, TI SLYT249 “Improved CAN network security with TI’s SN65HVD1050 transceiver” (http://focus.ti.com/lit/an/slyt249/slyt249.pdf)
This section lists component data sheets that may be of value to the OpenLCB-CAN implementor. Inclusion of a component data sheet in this section is informational, and does not a imply a recommendation, positive or negative, for the component or data sheet. No inferences should be drawn from a component data sheet being or not being included in this section.
MCP 2551 High-Speed CAN Transceiver (http://ww1.microchip.com/downloads/en/DeviceDoc/21667f.pdf)
MCP2515 Stand-Alone CAN Controller With SPI Interface (http://ww1.microchip.com/downloads/en/DeviceDoc/21801e.pdf)
PCA82C250 CAN controller interface (http://www.nxp.com/documents/data_sheet/PCA82C250.pdf)
L9615 transceiver (http://www.st.com/stonline/products/literature/ds/5637.pdf)
ISO1050 Isolated CAN Transceiver (http://focus.ti.com/lit/ds/symlink/iso1050.pdf)
SN55HVD251, SN65HVD251 Industrial CAN Transceiver (http://focus.ti.com/lit/ds/symlink/sn55hvd251.pdf)
SN65HVD1050 EMC Optimized CAN Transceiver (http://focus.ti.com/lit/ds/symlink/sn65hvd1050.pdf)
This is SVN $Revision: 1061 $