Кодим...

Процесс написания и отладки протокола Modbus в среде Atmel AVR Studio

RS-485

Возникла необходимость изготовить устройство с интерфейсом RS-485, часто применяющимся в промышленности. В принципе всё просто - подключаешь трансивер к UART'у контроллера и всё. Однако, надо учесть, что RS-485 - полудуплексный интерфейс. А это значит, что трансивер надо переключать между режимами приёма и передачи. Реализация проста (см. рис):


Ногу RO (Receiver Output) трансивера подключаем к RX контроллера, а ногу DI (Driver Input) - к TX. Ноги RE и DE соединяются вместе и подключаются к третьей ноге контроллера, выбранной произвольно. Необходимость управлять RE и DE отдельно возникает только если вам нужно получить минимальное энергопотребеление - притянув оба вывода к земле можно перевести трансивер в спящий режим. В нашем же случае, низкий уровень на входах RE и DE соответствует режиму приёма, а высокий - режиму передачи.

Отличия в коде программы по сравнению с интерфейсом RS-232 невелики - нужно лишь устанавливать высокий уровень на выводе, управляющем режимом трансивера, перед началом передачи и низкий уровень по её окончании (например, по прерыванию USART_TXC).

ByteBlaster

Вчера мой товарищ Tonari нашёл файлы, считавшиеся утерянными полгода назад. Это были схема и разводка платы программатора ByteBlaster. Чтобы больше не терять их, было принято решение выложить файлы в свободный доступ. Для этого была создана страничка byteblaster.narod.ru.
Пользуйтесь =)

Ночь

4 часа ночи, а мне не спится... вылез с телефона в инет и создал этот блог. посмотрим, что выйдет :)