Мне нужно соединить два контроллера - attiny2313 и atmega328 по шине I2C. Если с последней проблем нет, то вот с первым есть, потому что там надо реализовывать I2C на базе интерфейса-полуфабриката USI.
Я реализовал I2C на основе кода отсюда: http://www.instructa...USI-I2C-Slave/. Во вложении исходный код прошивки для ATTINY2313.
Код для меги простой:
Но в итоге она не зажигает светодиод - проверка не проходит. Где я ошибся?
P.S.: Подтяжки I2C - 2.2 кОм. Снижение частоты шины не помогает.
Раздел: AVR
Я реализовал I2C на основе кода отсюда: http://www.instructa...USI-I2C-Slave/. Во вложении исходный код прошивки для ATTINY2313.
Код для меги простой:
_delay_ms(1000);
i2c_start();
i2c_write(0x40);
i2c_write(0);
i2c_start();
i2c_write(0x41);
buf = i2c_read();
if (buf == 0x55) led_set(LED_RED, 1);
i2c_stop();
Но в итоге она не зажигает светодиод - проверка не проходит. Где я ошибся?
P.S.: Подтяжки I2C - 2.2 кОм. Снижение частоты шины не помогает.
Прикрепленные файлы:
Раздел: AVR