Serial Communications: Difference between revisions

From Wildsong
Jump to navigationJump to search
Brian Wilson (talk | contribs)
mNo edit summary
Brian Wilson (talk | contribs)
mNo edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
[[Category: Serial Communications]]
[[Category: Serial Communications]]


Each protocol builds on the older technology.
Each protocol builds on the older technologies. Earliest specs defined only a method for signaling; voltage levels and data rates. Later specifications define higher layers in the ISO stack (here I just say "LINK") and the latest such as NMEA 2000 and USB also define what connectors and wiring schemes can be used.
 
Sometimes link protocols are defined separately but commonly used on a given physical layer, for example, Apple's Localtalk network was implemented using RS422 signaling but a multipoint bus topology similar to RS485 and CAN.


{| border=1
{| border=1
|-
|-
| '''Physical''' || '''Signaling''' || '''Link''' || '''Comments'''
| '''Physical''' || '''Signaling''' || '''Link protocol''' || '''Comments'''
|-
|-
| RS232 || single end (signal+ground) || || point to point
| RS232 || single end (signal+ground) || || Point to point. Usually uses DB9 or (older DB25) connectors.
|-
|-
| || || NMEA 0183 || Simple ASCII protocol for data transfer, most commonly used by GPS receivers.
| || || NMEA 0183 || Simple ASCII protocol for data transfer, most commonly used by GPS receivers.
Line 17: Line 19:
| || || Localtalk || Networking for Apple computers
| || || Localtalk || Networking for Apple computers
|-
|-
| [[RS485]] || differential || || bus, master slave (one controller many peripherals)
| [[RS485]] || differential || || bus, master slave (one controller many peripherals) Many different connectors and wiring schemes are used.
|-
|-
| || || LonTalk || Networking for building control systems
| || || LonTalk || Networking for building control systems
Line 24: Line 26:
|-
|-
| [[USB]] || differential ||  
| [[USB]] || differential ||  
| "Universal Serial Bus", peripheral connections for computers; (one host controller, many peripherals)
| "Universal Serial Bus", peripheral connections for computers; star topology, one host and one peripheral on a given piece of wire but a peripheral can be a hub with many peripherals
|-
|-
| NMEA 2000 || differential || Networking for maritime applications
| [[NMEA 2000]] || differential || Networking for maritime applications
|}
|}
'''RS232''' - point to point - one computer and one device per port. Defines a standard set of data rates but no software protocol. Can be half or full duplex.


'''NMEA 0183''' - this is a simple software protocol that uses RS232 for its hardware layer. NMEA 0183 is used for exchanging information between a master station (usually a computer or a "chart plotter") and a controller or sensor. Originally NMEA 0183 was intended for use on boats but also widely used in GPS equipment, most GPS receivers can be progreammed to output a NMEA 0183 data stream.
'''NMEA 0183''' - this is a simple software protocol that uses RS232 for its hardware layer. NMEA 0183 is used for exchanging information between a master station (usually a computer or a "chart plotter") and a controller or sensor. Originally NMEA 0183 was intended for use on boats but also widely used in GPS equipment, most GPS receivers can be progreammed to output a NMEA 0183 data stream.
Line 39: Line 39:
'''CAN (Control Area Network) bus''' - devised by Intel and Bosch for automobiles. Uses collision detection, so any node can talk anytime it needs to.  
'''CAN (Control Area Network) bus''' - devised by Intel and Bosch for automobiles. Uses collision detection, so any node can talk anytime it needs to.  


[[USB]] Universal Serial Bus - now found on all new desktop computers and many peripherals; has pretty much replaced RS232 on computers. Like RS485, it uses half duplex and differential signaling. Like CAN, it has a software protocol defined. It also has connectors and cabling included in the specifications.
[[NMEA 2000]] - complete specification for the physical and software communications; designed to be used on boats. NMEA 2000 is based on CAN, but like USB, the allowed data rate, connectors and cabling are included in the spec.
 
'''NMEA 2000''' - complete specification for the physical and software communications; designed to be used on boats. NMEA 2000 is based on CAN, but like USB, the allowed data rate, connectors and cabling are included in the spec.


== External links ==
== External links ==

Latest revision as of 18:36, 2 February 2009


Each protocol builds on the older technologies. Earliest specs defined only a method for signaling; voltage levels and data rates. Later specifications define higher layers in the ISO stack (here I just say "LINK") and the latest such as NMEA 2000 and USB also define what connectors and wiring schemes can be used.

Sometimes link protocols are defined separately but commonly used on a given physical layer, for example, Apple's Localtalk network was implemented using RS422 signaling but a multipoint bus topology similar to RS485 and CAN.

Physical Signaling Link protocol Comments
RS232 single end (signal+ground) Point to point. Usually uses DB9 or (older DB25) connectors.
NMEA 0183 Simple ASCII protocol for data transfer, most commonly used by GPS receivers.
PPP PPP allows connecting to a TCP/IP network over an RS232 connection, usually via modem and a telephone line.
RS422 differential point to point
Localtalk Networking for Apple computers
RS485 differential bus, master slave (one controller many peripherals) Many different connectors and wiring schemes are used.
LonTalk Networking for building control systems
CAN bus differential bus, "Controller Area Network", widely used in automobiles.
USB differential "Universal Serial Bus", peripheral connections for computers; star topology, one host and one peripheral on a given piece of wire but a peripheral can be a hub with many peripherals
NMEA 2000 differential Networking for maritime applications

NMEA 0183 - this is a simple software protocol that uses RS232 for its hardware layer. NMEA 0183 is used for exchanging information between a master station (usually a computer or a "chart plotter") and a controller or sensor. Originally NMEA 0183 was intended for use on boats but also widely used in GPS equipment, most GPS receivers can be progreammed to output a NMEA 0183 data stream.

RS422 - Like RS232 but with differential signaling. Still point to point.

RS485 - Differential signaling, nominally at 0-5V. Adds bus topology that can be half or full duplex. In half duplex mode there can be one master and many slave nodes. Master polls slaves to avoid contention; only one slave talks at a time. No software protocol defined.

CAN (Control Area Network) bus - devised by Intel and Bosch for automobiles. Uses collision detection, so any node can talk anytime it needs to.

NMEA 2000 - complete specification for the physical and software communications; designed to be used on boats. NMEA 2000 is based on CAN, but like USB, the allowed data rate, connectors and cabling are included in the spec.

External links

IEEE

NMEA = National Marine Electronics Association

http://www.universalbus.com/