Domofei
Cкажем у меня так реализовано, что делать если на одном железе нужная периферия сидит на одних ножках а на другом других? Использовать #ifdef тогда в платформа не зависящем коде, или вовсе создать header file лично для инициализации периферий в папке для платформа зависящем коде?
скрипт на пыхтоне, на классах реализовать несколько вариантов железа, из инстанса генерить код на Си, через командную строку дергать нужный класс, если собираешь прошивку сразу на пачку разных устройств