1 / 14

Serial Communications

Serial Communications. Sending and receiving data between devices. Serial Communications describes a general way in which two devices can send or receive data from one another. To send or receive data, bits have to be moved around

mariko-ryan
Download Presentation

Serial Communications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Serial Communications Sending and receiving data between devices CE-2810 Dr. Mark L. Hornick

  2. Serial Communications describes a general way in which two devices can send or receive data from one another To send or receive data, bits have to be moved around The term Serialindicates that the data bits are transmitted sequentially, one bit at a time Conversely, in parallel communication, multiple bits are transmitted simultaneously CE-2810 Dr. Mark L. Hornick

  3. The physical signaling of serial data takes many forms • USB (Universal Serial Bus) • Firewire • Bluetooth • IR • Ethernet • RS-232 • RS-422 • RS-485 • WiFi CS-280 Dr. Mark L. Hornick

  4. Atmel Atmega32USART Subsystem CS-280 Dr. Mark L. Hornick

  5. USART overlaps PortD pins • RXD pin is used to receive serial data • Enabling the USART receiver overrides PD0 function • TXD pin is used to transmit serial data • Enabling the USART transmitter overrides PD1 function CE-2810 Dr. Mark L. Hornick

  6. RS-232 on the SunRom board • The SunRom board includes a RS-232 converter chip that converts the low-level signals of TXD/RXD to RS-232 voltages • TXD/RXD: 0 to +5v • RS-232: -15 to +15v • The converter chipinterfaces theAtmega32 to the 15-pin D-shell connector CE-2810 Dr. Mark L. Hornick

  7. TTL vs RS-232 voltage levels • TTL (transistor logic) signals • v < 2 = logical 0 • v > 3 = logical 1 • 2 < v < 3 = undefined • RS-232 signals • -15 < v < -3 = logical 1 • +3 < v < +15 = logical 0 • -3 < v < +3 = undefined Note that logic values appear to be inverted if RS-232 signals are viewed on an oscilloscope CS-280 Dr. Mark L. Hornick

  8. Only 3 lines on the 15-pin connector are used for RS-232; Tx(2), Rx(3), and Ground(5) CS-280 Dr. Mark L. Hornick

  9. Connection between two communicating serial devices The Tx (transmit) line of one device is connected to the Rx (receive) line of the second device Tx Tx Rx Rx CS-280 Dr. Mark L. Hornick

  10. Asynchronous vs Synchronous • In synchronous communications, the two communicating devices must keep their respective clock signals synchronized • Even when no data is being sent, the two devices continuously exchange “sync” characters • In asynchronous communications, the two devices maintain their own clocks • Nothing is transmitted when there is nothing to send • But a “handshake” has to be established whenever data needs to be transmitted – extra overhead The USART subsystem of the Atmega32 supports bothmodes, but we’ll only use the asynchronous mode. CE-2810 Dr. Mark L. Hornick

  11. Asynchronous transmission of a byte of data • Each byte of data is surrounded by “framing” bits, inserted by the USART LSB MSB 5,6,7,8, or 9 data bits Parity bit can be disabled (no parity bit) 1 or 2 stop bits CS-280 Dr. Mark L. Hornick

  12. The Parity bit is an error checking mechanism used to detect data corruption Equal to 1 if the number of non-zero data bits is odd,(#data bits + parity bit = even number of bits) Equal to 1 if the number of non-zero data bits is even, (#data bits + parity bit = odd number of bits) The Parity is computed first on the transmitting end, and included as the Parity bit in the frame. The Parity is then recomputed on the receiving end, and the result is compared to the Parity bit value. If the Parity calculation on the receiving end does not match, the receiver knows data corruption occurred.This allows errors to be DETECTED, but does not provide a means of CORRECTION. CS-280 Dr. Mark L. Hornick

  13. RS-232 signal transmission of the letter ‘K’ (ASCII 0x4C) CS-280 Dr. Mark L. Hornick

  14. Speed metrics • The speed of serial transmission is usually measured in bits-per-second • This is called the baud rate • Because of the overhead bits used in each frame, 2400 baud is NOT the same as 300 characters per second • Since each character takes >8 bits to transmit • The Atmega32 USART can be configured to operate between 2400 and 1M baud CS-280 Dr. Mark L. Hornick

More Related