Ну вот собственно "простейший" декодер родился наполовину.
Получилась библиотека которая на данный момент умеет:
1. Быть мобильным декодером.
2. Поддерживать 14/28/128 скоростей. (14/28 регулируется битом 1 в CV29) разницу между 14/28 и 128 понимает автоматом.
3. Понимает режим программирования CV (пишет CV1 и CV29 в EEPROM)
4. Поддерживает все функции FL, и с F1 по F28.
Не умеет все остальное, в т.ч слать Ack в ответ на запись, значения CV не читаются.
В архиве, библиотека и скетч из которого должно быть понятно что и зачем.
Есть одна тонкость, по прерываняим обрабатывается только прием DCC пакетов. После приема они скидываются в маленький буфер. Парсинг этих пакетов нужно вызывать из основного цикла. Соответственно в основном цикле не должно быть блокирующих действий. Иначе пакеты не будут обрабатываться.
Так как Про Мини тормознутая, часть пакетов все таки теряется, но поведение всей зверушки вполне адекватное
PS: Днем сделаю видео, сейчас сил уже нет.