Отправка данных по i2c

Направляю: возьми учебник и осваивай программирование, а идею сделать эту вещь самостоятельно отложи на пару лет.

Ничего. Не бывает объяснений теории относительности, понятных первокласснику. Учиться нужно по порядку. И в процессе придется написать не 10 строк кода, а ближе к 100 тысяч.

Ок, тему закрыл

Да не обращай на них внимание.
Зря тему закрыл.
Для начала вчитайся в сообщения 2, 6,7 и попытайся их осмыслить.

1 лайк

Это ограничение ардуиновской библиотеки Wire, причем только на контроллерах АВР. Самой шине пофик сколько байтов вы хотите послать, это дело кода верхнего уровня.
И в любом случае это ограничение легко обходится и вовсе не означает, что более 32 байт послать нельзя.

1 лайк

Об этом написано здесь:

Перечитайте сообщения №№ 2, 4, 5, 7, 12. Если что непонятно, вбейте ключевые слова из них в поиск гугла. Сделайте хоть что-нибудь сами! Зачем требовать уточнения того, что и так уже написано? Именно поведение и провоцирует на ответы типа:

Вы сами на этот ответ напросились.

И - да, форум не может (да и не должен) заменять учебник или курс лекций.

Вас уже направили. А Вы все продолжаете задавать вопросы.
Разберитесь сначала с теми ответами, что уже получили.

В этом и состояла цель: чтобы у Вас отпало желание задавать лишние вопросы и появилось желание сделать что-то самостоятельно.

1 лайк

Да? Нук расскажи. И чтобы было доступно человеку, не знающему про циклы.

Молодец! Впредь не открывайте!

#ifndef I2C_BUFFER_LENGTH
    #define I2C_BUFFER_LENGTH 128  // Default size, if none is set using Wire::setBuffersize(size_t)
#endif

Опять какой-то мусор экзотический припер не в тему? Нет такого макроса в авр-ядре.

ТС про avr ничего в начале поста не говорил

1 лайк

Как по одному проводу это можно сделать? Надо проводов по количеству “сразу всё”, а сейчас поди только 8,16,32 и всё. Поэтому всё растягивается в очередь по одному. Например так:
VID_20240630_192233