Ребята, доброго времени суток.
Пытаюсь подружить мегу8 и PCF8574.
Собственно делаю всё по инструкции ДШ.
I2C программный, настроен на те же ноги, что и аппаратный.
Адрес микросхемы 0x40, ноги А0-А2 подтянуты на землю.
Никакого шевеления выходов микросхемы не вижу...
Вроде кода-то "кот наплакал"

, а что-то работать не хочет ...
Код: Выделить всё
#include <mega8.h>
#include <delay.h>
#include <i2c.h>
// I2C Bus functions
#asm
.equ __i2c_port=0x15 ;PORTC
.equ __sda_bit=4
.equ __scl_bit=5
#endasm
#define PCF8574_BUS_ADDRESS 0x40
/* write a byte to the PCF8574 */
void PCF8574_write(unsigned char data) {
i2c_start();
i2c_write(PCF8574_BUS_ADDRESS);
i2c_write(data);
i2c_stop();
/* 10ms delay to complete the write operation */
delay_ms(10);
}
void main(void) {
/* initialize the I2C bus */
i2c_init();
while (1)
{
PCF8574_write(0xFF);
delay_ms(500);
PCF8574_write(0x00);
delay_ms(500);
};
}