Наблюдение за шиной I2C через осциллограф

Работа шины I2C начинается с формирования стартового бита: при высоком уровне SCL, линия SDA переходит в низкое состояние. Затем передается 7-битный адрес устройства и бит R/W (0 – запись, 1 – чтение). Устройство, обнаружив свой адрес, подтверждает это, опуская SDA на 9-м такте. Завершается передача стоповым битом: при высоком SCL, SDA переходит в высокое состояние.
Наблюдение за шиной  I2C через осциллограф
Изображение носит иллюстративный характер

Функция HAL_I2C_Master_Transmit сначала отправляет адрес устройства в режиме записи (R/W = 0), затем данные. При обращении к EEPROM, первый байт данных устанавливает адрес внутри EEPROM, а последующие байты записываются в EEPROM. После каждого байта, устройство подтверждает прием.

Функция HAL_I2C_Master_Receive сначала отправляет адрес устройства в режиме чтения (R/W = 1), затем начинает принимать данные от устройства. После получения требуемого количества байт, master прекращает их прием, отправляя на 9-м такте единицу, и генерирует стоповый бит. Это как бы запрос на чтение: сначала записываем, откуда читать, а потом читаем.

При неверном адресе, устройство не подтверждает передачу (SDA не опускается на 9-м такте). Мастер, обнаружив отсутствие подтверждения, завершает передачу стоповым битом. Понимание этих процессов и визуальный контроль с помощью осциллографа важны для отладки и диагностики проблем.


Новое на сайте

19753ИИ обгоняет людей в биомедицинском анализе — так ли это опасно, как звучит? 19752Artemis II летит к луне: что происходит и как за этим следить 19751Лекарство от диабета первого типа: шутка про «пять лет» перестаёт быть шуткой 19750Псевдонаука на службе рабства: как учёные XIX века торговали теориями о смешанной крови 19749Как SOC-команды теряют время на многоплатформенных атаках и как это остановить 19748Как люди научились жить там, где жить невозможно? 19747Рабочий ноутбук разработчика стал главной целью хакеров 19746Может ли песок решить главную проблему возобновляемой энергетики? 19745Как группировки Qilin и Warlock обезоруживают антивирусы через уязвимые драйверы 19744Самые прожорливые чёрные дыры во вселенной остаются без еды 19743Artemis: момент, который определит целое поколение 19742Почему в горах реже болеют диабетом? 19741Что скрывается подо льдами Антарктиды и почему страны могут начать за это бороться? 19740ДНК моркови и красного коралла на туринской плащанице 19739Что нового нашёл телескоп NASA в остатках сверхновой, которую китайские астрономы...
Ссылка