blindman писал(а):Прочитали 20 байт в буфер, реально на шину ушло 15 - 5 байт потеряны навсегда.
Почему потеряны? Мы разве следующим запросом не можем еще раз читать продолжить?
blindman писал(а):=DeaD=, недостаток твоего подхода в том, что он не позволяет драйверам сохранять состояние между запросами - только один запрос к определённому регистру, возможно разбитый на несколько более мелких, ограниченных размерами буферов или чем-то ещё. Последующие запросы никак не зависят от предыдущего
Не понял, а твой побайтовый вариант от моего по-20-байтового кроме размера передаваемого блока чем еще отличается?
Добавлено спустя 1 минуту 37 секунд:
blindman писал(а):Vooon писал(а):Порядок байт: старший — младший.
Есть этому какие-то веские причины?
Я бы тоже такой порядок принял, читать удобней при отладке. И писать потом в инструкциях проще - меньше вопросов от пользователей модулей.
Vooon писал(а):На данный момент и при работе через юсарт на уровне виртуального слейва мы не знаем сколько байт запрошено.
Можно в этом случае передавать ему это, как ограничение на размер буфера.