Отсутствие честного открытого коллектора в данном случае - не беда, можно использовать буфер с тремя состояниями.
А с PULLUP я не очень понял, у вас внешней подтяжки нет вообще? Кто тогда линию в '1' держит? Если это делает CPLD - то это неверно, все устройства на I2C должны выдавать на линию либо '0' либо 'Z'. Если у вас там '1' и нет какой-либо подтяжки (проверьте, что slave I2C устройства не имеют внутренней подтяжки, иногда такие встречаются), то скорее всего некорректно описан сам I2C на CPLD.
Сообщение отредактировал Inanity - Aug 9 2015, 23:33
|