RS232 Converters


This pages lists some various RS232 converter projects that use Microchip PIC microcontrollers.

These are the basic building blocks and prototype implementations of different interface standards for which I have written code.

After building each of them on prototyping board they have been built as stand-alone devices that can be used for interfacing or debug.

They are also useful for prototyping functions that are to be used in PIC projects because the interface commands can be tested from software on a PC without needing to write them as PIC code first.

At the moment I am not making the complete projects available for download. The main parts of the code that perform RS232 and other (I2C, SPI and PS/2) interfaces are included in the library of PIC code that is available for download.


The I2C interface is available as a built-in function on some of the higher end PIC devices. This implementation uses a very simple PIC to provide a bit-banging I2C master interface.

The I2C bus is used in a lot of electronic devices and this converter can be used for reading the contents of serial EEPROMs in various electronic devices.

This is what I use to read and write the data EEPROM in my Temperature Recorder project.

I also built a standalone RS232 to I2C converter to test the functions and for access to EEPROM and other I2C devices.


The SPI interface makes use of the Synchronous Serial Port (SSP) on PIC 16fxxx devices.

The SPI interface is the one that is used for reading and writing SD and MMC memory cards. With a simple RS232 interface it is possible to access the functions on these cards that are normally not available (reading the internal configuration registers or setting and clearing read-only flags).

I built a standalone RS232 to SPI converter to test the functions and for testing access to SD card reading and writing.


The Infra-Red interface combines a receiver with a 38 kHz modulation frequency and a transmitter with the same frequency (by switching the LED quickly).

This can be used to capture and playback most Infra-Red remote controls, either at waveform level or pre-programmed waveform formats (e.g. RC5, SIRCS).

It was this converter which allowed me to capture and decode the remote control for my Infra-Red Transmitter project.

I also built a standalone RS232 to Infra-Red converter to test the functions and to prototype the Infra-Red Transmitter project.


The PS/2 interface is the common way (although now being replaced by USB) for connecting a mouse or keyboard to a computer. The data on these connections is serial like RS232 but with some quirks.

The PIC is programmed to behave either as a mouse or keyboard host so that the data from either device can be captured very easily. With simple modifications it could be made to act as a mouse or keyboard device as well.

I built a standalone RS232 to PS/2 converter to test the functions.