RS485 Library for Windows and Atmel AVR 8-Bit

This project implements a half-duplex, master/slave communications protocol based on RS-485 bus hardware. A Windows PC plays the role of bus-master and several Atmel 8-bit AVRs assume the role of bus-slaves. The Windows part is written in C+, the ninth data bit is simulated by the parity bit, the transceiver direction is switched by the RTS line.
RS485 Library for Windows and Atmel AVR 8-Bit - schematic

The AVR part is written in plain C and features the multi-processor communication mode (MPCM). The protocol allows for up to 128 participants. Code and makefile are written for an ATmega8 but should be easily adaptable to any other AVR with UART. The following circuit can be used to convert a PC`s standard serial interface (RS-232) to RS-485 in case you do not have an RS-232 to RS-485 converter already or even an RS-485 PCI card with suitable Windows drivers. The converter is passive in that it does not involve a microcontroller with two USARTs for translation. The +/-12V RS-232 signals are converted to 0V to +5V (TTL level) by a MAX232 (or similar). The TTL signals are directly feed into a MAX485 (or compatible) RS-485 transceiver. Not only the TXD/RXD lines are taken into account. The RTS line is also brought down to TTL in order to control the direction of the RS-485 transceiver. The above circuit is a Windows PC`s ticket to the RS-485 world. Later we will see an extension of this circuit. It also contains an ATmega8 for testing RS-485 communication between Windows and AVR. I used this circuit for developing this library. The library implements a basic master/slave bus. There is a single master and multiple slaves. Each slave has its individual/unique address. (The master though has no address. ) All communication is initiated by the master. The slave which was addressed takes the data sent by the master and answers...

Leave Comment

characters left:

New Circuits