StreamLib
Буферизация потоков данных и форматированный вывод для эффективной сетевой коммуникации: BufferedPrint, ChunkedPrint, CStringBuilder и printf с поддержкой F macro
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:85a5534ee9ffc8199730247a199052e717aada77b94a0f425165d7dc1ea53791StreamLib-1.4.0-85a5534e.zipОписание
Сетевая коммуникация в Arduino часто страдает от неэффективности: каждый вызов print() отправляет данные отдельно, что создаёт лишние накладные расходы в TCP/UDP или I2C протоколах. StreamLib решает эту проблему буферизацией — класс BufferedPrint накапливает данные в буфере и отправляет их пакетом после flush() или когда буфер переполнится. Помимо этого, библиотека включает ChunkedPrint для HTTP chunked encoding, ChunkedStreamReader для декодирования, CStringBuilder для построения строк в памяти и StringReadStream для работы со строками как с потоком. Все классы поддерживают printf() с форматированием из F() macro, что значительно облегчает отправку структурированных данных. Решение особенно полезно при работе с веб-запросами, где неизвестен размер ответа заранее.