Перейти к содержанию
    

Кто-нибудь работал с AD7142 через I2C?

Не получается даже прочитать DEVID, первый байт читается нормально, второй же, какой регистр не читаю, одинаково FF считывается. Даже пробую записать в любой регистр, например число 0x1234 читаю потом 0x12FF. Инициализируется и пишется всё нормально, все ACK проходят.

 

Пробовал все варианты чтения по даташиту (Figure 52. Example of Sequential I2C Write and Readback Operation). Нифига. Может она так хитро навернуться?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не получается даже прочитать DEVID, первый байт читается нормально, второй же, какой регистр не читаю, одинаково FF считывается.
Похоже, вы на первый же отвечаете NACK и микросхема выходит из режима чтения. На все байты, кроме последнего надо формировать ACK и только на последний обязательно NACK.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Похоже, вы на первый же отвечаете NACK и микросхема выходит из режима чтения. На все байты, кроме последнего надо формировать ACK и только на последний обязательно NACK.

 

Да, спасибо, вы меня опередили. :) Была банальная опечатка при формировании АСК при чтении. Теперь все работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...