I2C шлюз для компьютера (через com-порт) на ATTiny2313 |
Уже довольно давно засела мне в голову мысль, что было бы замечательно работать с I2C устройствами прямо из какой-нибудь терминалки. Нет, можно конечно в терминалке, умеющей независимо переключать состояния ног com-порта, надёргать весь протокол отдельными битами, но это не очень удобно и даже очень неудобно, поэтому я решил для общения по I2C сваять на микроконтроллере специальный шлюз. Такой шлюз можно использовать, например, в качестве программатора микросхем памяти с интерфейсом I2C.
Для экспериментов был выбран микроконтроллер ATTiny2313. Выбран он был за достаточно быстрое ядро AVR, возможность подключения 20 МГц кварца, приличное количество ног и низкую стоимость. Далее была собрана вот такая схемка:
Детали:
R1 - 1..10 кОм
R2, R3 - 4,7 кОм
C1..C5 - 0,1 мкФ
C6,C7 - 15 пФ
кварц 20 МГц
+ преобразователь интерфейсов MAX232, контроллер ATTiny2313, 3 джампера и несколько разъёмов.
Джамперы (перемычки) JP1, JP2 позволяют организовать подтяжку линий Clock и Data к питанию, если это не сделано на плате к которой вы подключаетесь (для чего нужна такая подтяжка - смотрите в описании интерфейса I2C). Джампер JP3 позволяет запитать подключаемое устройство от шлюза.
Сам шлюз можно запитать прямо от компьютера, через стандартный разъём питания (как на рисунке справа), которых в любом компе с избытком. В этом разъёме нам нужно только два провода - красный (+5В) и чёрный (общий). На стороне шлюза нам, естественно, нужен ответный разъём, - как на рисунке слева.
Для возможностей внутрисхемного программирования (ICSP) контроллера, на разъёмы выведены ноги интерфейса SPI (Clock, MOSI, MISO) и нога reset. Готовое устройство выглядит вот так:
На фотке экспериментальная модель, поэтому внимательный читатель может заметить, что она не совсем совпадает с выложенной схемой и разводкой, но это мелочи (просто в девайсе на фотке предполагалось, что вместо джамперов будут транзисторы, которыми также будет рулить контроллер, однако транзисторов под рукой не оказалось + в экспериментальной модели не впаяны разъёмы для внутрисхемного программирования).
Скачать печатную плату (DipTrace2.2) можно скачать по этой ссылке. Ну вот, с аппаратной частью разобрались, однако, пока в контроллере нет прошивки, наш девайс - просто кусок железа. Исходники программ и готовые прошивки, наделяющие это чудо разными полезными свойствами, можно найти и скачать по приведённым ниже ссылкам:
Источник: www.radiohlam.ru
C этой схемой также часто просматривают: |
ЗАЖИГАЛКА ДЛЯ ГАЗА Зарядное устройство для автомобильных и мотоциклетных батарей Зарядное устройство для автомобильных аккумуляторов Имитатор для проверки телефонных аппаратов Простые датчики для охранной сигнализации RCD-программатор для PIC-контроллеров RCD-программатор для EEPROM (93Cxx, 24Cxx, 25Cxxx) Программатор PROGOPIC для PIC-контроллеров (PIC12, PIC16, PIC18) и микросхем памяти: I2C (24Cxx), Microwire (93Cxx) с питанием от батареек Универсальный программатор PIC и AVR для COM-порта
| |
USB генератор пароля в виде флешки Самодельная USB-гарнитура Защита от помех устройства, питаемого от разъёма USB Простое управление куллером компьютера Переходник для подключения к USB-порту устройства с большим потребляемым током 1-wire шлюз для компьютера (через com-порт) на ATTiny2313 SPI шлюз для компьютера (через com-порт) на ATTiny2313 Стрелочный индикатор загрузки ЦП и оперативной памяти ПК Sim Card Reader SOLO GWR Sim-Reader v.3 |