Цитата(Camelot @ Sep 14 2005, 14:36)
Добрый всем день!
Использую на плате этого зверя, управляю им с помощью Cyclone.
Написал корку, которая используя I2C, пишет в него Memory Adsress Pointer, но
этот девайс не отдает бит ACK в нужные моменты, т.е. простыми словами
молчит. Посмотрел на осциле - все ОК, пакет с синхронизацией правильные,
как в доке, но ACK от DS1678 вместо логического 0 равен логической единице (DS1678 не сливает). Если кто знает с чем это может быть связано, посоветуйте плиз.
В каком режиме работает Ваш 'Cyclone'? Сделайте правильно начальную инициализацию Master-Slave (процессор-DS1678). Очень похоже что это не ответ ACK, а самый натуральный NACK.
И во избежании дальнейших ощибок лучше воспользуйтесь готовой (рабочей) программой-драйвером обслуживающая I2C. Такого добра и на нашем форуме и в паутине предостаточно...