74HC595 для 8266 через его I2S + DMA
Добавлено: 11 авг 2026, 13:01
На версии 9.7.1
Обычный SPI, чтобы работал, нужно каждую транзакцию «пинать» в лупе, как я рассказывал ранее. И этот луп может быть длиннее или короче, от чего могут появляться дырки, если длина лупа превысит длину транзакции, как показано тут: дырка в 45 мкс при транзакции в 8 мкс.
Но можно, если необходимо на то, воспользоваться и звуковой периферией, у которой есть DMA, и закольцевать её, положив туда массив данных: тогда дырка в 100 мкс ничего не делает передаче — она живёт теперь своей автономной жизнью.
Суть работы блока: он всегда тактирует линию, но только каждые 32 бита срабатывает пин, который используем как защёлку. И, как уже все поняли, транзакция будет максимум на 4 каскада, итого 32 пина на расширение.
Из минусов:
- неактивен UART (прошиваться будет).
- всего 4 каскада.
Пины испоьзуем:
Результаты:
На статике 100% свободы у лупа.
Выше 101000 с измерителем не выдаёт тут.
Обычный SPI, чтобы работал, нужно каждую транзакцию «пинать» в лупе, как я рассказывал ранее. И этот луп может быть длиннее или короче, от чего могут появляться дырки, если длина лупа превысит длину транзакции, как показано тут: дырка в 45 мкс при транзакции в 8 мкс.
Но можно, если необходимо на то, воспользоваться и звуковой периферией, у которой есть DMA, и закольцевать её, положив туда массив данных: тогда дырка в 100 мкс ничего не делает передаче — она живёт теперь своей автономной жизнью.
Суть работы блока: он всегда тактирует линию, но только каждые 32 бита срабатывает пин, который используем как защёлку. И, как уже все поняли, транзакция будет максимум на 4 каскада, итого 32 пина на расширение.
Из минусов:
- неактивен UART (прошиваться будет).
- всего 4 каскада.
Пины испоьзуем:
Результаты:
На статике 100% свободы у лупа.
Выше 101000 с измерителем не выдаёт тут.