ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
18 апреля
408497
Ксения (10.05.2013 05:04 - 05:08, просмотров: 20515)
Можно ли так "оглупить" I2C-интерфейс (ATmega8), что можно было им сдвиговым регистром (74HC595) двигать? http://eewiki.ru/w/images/6/61/Hc595.gif
Вообще-то I2C-интерфейс весь из себя навороченный, протокол сложный. Кто-то кого-то вызывает, тот откликается. Сигналы START, STOP и прочее. То ли дело старый добрый SPI :) - всё простенько и понятно. Вот только у моей Меги8 только один SPI, и занят он под другое дело. А ножки "Two-wire Serial Interface" SCL and SDA у меня свободны. Конечно, я могла бы запрограммировать ногодрыганье с задержками на любом свободном пине, только это как-то пошло :). Отсюда и вопрос - можно ли I2C приспособить для этой цели? Так его запрограммировать, чтобы он все свои протоколы забыл, по-просту байты наружу выдавал в последовательном коде? И как там у SCL и SDA насчет уровня, а то в Википедии написано, что шина I2C с открытым коллектором работает. Типа того, что шина вроде подтянута к питанию внешне, а клиенты ее только закорачивают об землю. Так ли это в I2C, который на AVR-ках? А на картинке мой сдвиговый регистр, у которого я хотела бы присоединить CKL и DIN к SCL и SDA Меги8, соответственно. Гиблая затея или может что-то получиться?