Serial interfaces

These pages are about serial communication normally used between computers and microcontrollers.

It covers

  • bits and bytes

  • hardware based interface (UARTS)

  • software based interface (eg software impl of uart functionallity)

under construction see menu for first pages


Serial connections are often named as RS-232

  • RS232 (Recommended Standard no 232 - from telecomm world) from 1060

  • EIA-232 (Electronic Industries Alliance) sucesor of above from 1969

The signals have following characteristic

  • data line voltage levels [+3V to +15V] (logic 0)

  • data line voltage levels [-3V to -15V] (logic 1)

  • data line idle level same as logic 1


TTL serial

Same as RS-232 except for data signal levels

NOTE1: many call a TTL serial interfacs for RS-232 - this is pedantic not true
NOTE2: real RS-232 serial lines is very very rare. Its all TTL level serial
  • data line voltage levels 0V (logic 0)

  • data line voltage levels 3.3V or 5V or x.xV (logic 1)

  • data line idle level same as logic 1

Two TTL communicating devices must use same voltage for defining logical 1

Arduino AVR series (uno,mega,…) logic 1 is 5V
ESP32 logic 1 is 3.3V
many stm32 logic 1 is 3.3V
You have to find out