Помогите с i2c

Доброго времени суток
У меня слегка необычный вопрос
Я пишу под esp на lua , но при осваивании модуля “WCMCU-531” возникли проблемы он работает по i2c а в мануале только команды( без кодов и регистров) но для ардуино есть библиотека где все команды продублированны кодами и последовательность действий вроде понятна, но по i2c передаются (адрес модуля, адрес ячейки куда передаем, значение что передаем)
А на ардуино не могу понять где указывается адрес ячейки
Не могли бы объяснить или примером кода где вы указываете адрес ячейки куда передовать и откуда считывать?

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

Если “для ардуино есть библиотека”, где все расписано - то в чем вопрос? Что непонятно? Смотрите как в библиотеке и делайте так же.

Тем более как я легко нашел в гугле - вы уже спрашивали то же самое на Амперке два года назад и вам все обьясняли и даже ссылку на даташит дали.

:unamused:

Достойно уважения, кмк))

1 лайк

С i2c я разобрался (по крайней мере другие модули работают нормально )
С этим проблеммы что здесь дано API а в модуле под ардуинку перед каждой командой написан код. С этим тоже все понятно, но получается что там при работе по i2c не прописан адрес ячейки это значит что все отправляется всегда по нолевому адресу или нет ?
Если для вас все элементарно просто объясните на простом примере

Код покажите

Через I2C не обязательно числа пишутся в ячейки.

Устройство принимает поток байтов и интерпретирует их как угодно разработчику, устройство конструирующему.

Может принять набор DE AD BE EF FE ED и использовать его как команду, как адрес ячейки + связанное с ней значение, как адрес начальной ячейки и значения, связанные с ней и последующими ячейками, либо как-то иначе.