Intro To Communication Standards
We have heard about a lot of standards and protocols like serial, parallel, USB, I2C, WiFi, Bluetooth, SPI, etc. But what does they really signify ? And what are the basics we should know about them before starting any project in embedded systems.
In this discussion, we are talking about interfacing and standards involving communication between peripherals and I/Os with the Microcontroller or computer.
Data transmission can be done in two ways:
1. Parallel Communication Interface(PCI):
Parallel ports were originally developed by IBM. When IBM was in
the process of designing the PC, the company wanted the computer to work with printers offered by
Centronics, a top printer manufacturer at the time. IBM decided not to use the same port interface on the
computer that Centronics used on the printer. Instead, IBM engineers coupled a 25-pin connector, DB-25,
with a 36-pin Centronics connector to create a special cable to connect the printer to the computer. Other
printer manufacturers ended up adopting the Centronics interface, making this strange hybrid cable an
unlikely de facto standard.
When a PC sends data to a printer or other device using a parallel port, it sends 8 bits of data (1 byte) at a
time. These 8 bits are transmitted parallel to each other. The standard parallel port is capable of sending
50 to 100 kilobytes of data per second.
Advantages:
Therefore, PCI also reduces the need for high frequency transmission.
Disadvantages:
PCI requires n-wires(or n separate channels) to transmit n-bits information of a data word.
It is difficult to maintain n-wires for long distances hence it is restricted to short distant usage.
It is also susceptible to elctromagnetic interferences.
In comparison to serial transmission cable, the length of transmission is limited to a very short range due to maintenance and reliability.
Applications:
They are most commonly used to connect a host of popular computer peripherals: For example printers,
scanners, CD burners, external hard drives, network adapters, and tape backup drives, etc.
Types of Parallel Communication Interfaces:
There are four types of communication standards in PCI:
Standard parallel port (SPP)
Parallel port PS/2 (bidirectional)
Enhanced Parallel Port (EPP)
Extend Capability Port (ECP)
Some Important Parallel Communication Standards:
IEEE-488 Parallel (HPIB or GPIB )
Centronics Parallel Protocol (Printer )
SCSI
IDE
ISA (Industrial Standard Architecture, 16 bit)
PCI (Referral Component Interconnect, 32 bit)
AGP
2.Serial Communication Interface(SCI):
In serial communication, bit by bit transmission takes place in serial communication using a single channel(or single wire). The transmission of data bits of a word is majorly dependent on time. For this a clock is required. So, SCI is also associated with TDMA according to which bits of a data word are transmitted for each clock pulse.
Only a single wire(or channel) is required for transmission.
The cost of transmission and maintenance is lower.
Reliability is higher and simple in nature.
Disadvantages:
The speed of transmission is very low because transmission is through a single wire. If one bit is transmitted in 't'th second then next bit in next 't'th second and so on.
Synchronization is the most important thing in SCI. With each synchronizing clock, the integrity of the symbol information is must.(For this to achieve, we may use extra bits to extract information content like start bits, stop bits and parity bits)
Applications:
SCI can be seen in modem. SCI has several other standards and the most important and oldest, is RS-232(or EIA-232) used to connect two systems using a single wire.
RS-232
RS-422
RS-485
UART (Universal Asynchronous receiver-transmitter)
USART (Universal Synchronous- Asynchronous receiver-transmitter)
MIDI
IEEE1394, also called "FireWire"
CAN (Controller Area Network)
USB (Universal Serial Bus)
I
2
C (Inter Integrated Circuit or I squared C) -- Philips
SPI (Serial Peripheral Interface bus)
Micro-wire
Ethernet
Fiber optics
Bluetooth
WiFi
Basis of Selection of a protocol for your project or system designing:
Amount of Data - The handling of data and its amount must be ensured accordingly with the interface of communication
Speed of Processor - The speed of processor must satisfy the communication interface that means if you don't need the transmission faster you better go with the serial standards else parallel communication is good for electronic projects
Hardware or Software Implementation - The hardware and software implementation deals with the whole system. For an instance, if unused no. of ports are available at the microcontroller, we can use them for serving our purpose but there would be more wires or hardware needed. Whilst the software implementation deals with the complexity of code thereby affects the delay time and execution time.
Availabilty of Pins - If number of pins available are more, we can connect more peripherals using parallel communication. For Example, we can interface a LCD module, a motor, a no. of sensors, and a keyboard matrix at a time with available ports of AtMega16 microcontroller because it is a 40 Pin(4 Port) DIP IC. While this is not the case in AtMega8 microcontroller.
Number of Sensors - The more no. of sensors can be interfaced using parallel communication but interfacing of sensors does matter with the time of sensor activity and data acquisition from the sensor. For example, in a speed control dc motor project using a precise IR-sensor activity, if the time of data acquisition and manipulation from the sensor is more, the speed control of motor is also delayed then.
These are the clear cut basics of communication interfaces and protocol standards. But it is only a brief introduction about the very basic analogy to draw about electronic communication. In our second part of this series, we will discuss in detail the terms which are introduced here.