Использование C++ в Keil?
1. Сишные библиотеки, как правило, констистентны. Взяв библиотеку на С++, не понятно, что там внутри будет — шаблонная магия или С++ образца 98 года. В проекте может не быть поддержки исключений, а библиотека их будет активно использовать. И так далее. То есть даже выбрав С++, намного проще использовать сишные библиотеки. А там и до чистой сишки недалеко.
2. Выше требования к скиллу программистов. Например, пресловутые виртуальные методы дают оверхед, а шаблоны — нет, но это же всем нужно объяснять, как писать на С++ с меньшим оверхедом, чем на С. 

В целом, для железа я больше люблю С++ без фанатизма, с библиотеками, имеющими чисто сишный интерфейс.
потому, что Си — это классика жанра, а почему многие любят классику вопрос риторический, кто-то не любит модных тенденций, кто-то лениться просто ну и так далее… А если говорить о технической стороне дела, то уже написано что есть
а) накладные расходы
б)не ясно или нет уверенности что эти накладные расходы окупят своё сущестование, то есть какие-то фишки С++ уместны, а какие-то «дороги» для контроллера или задачи. RTTI например тежеловат
г) если работает команда, то есть вероятность что, кто-то захочет попробывать все эти новые плюшки, то есть открывается яшик пандорры, оказывается например, что RTTI съел половину памяти МК.
д) если в Си явно было чётко видно что вот тут вызывается функция INIT(), то в С++ этого явно не видно что вызывается конструктор, да видно что есть оператор new, но что там в этом конструкторе сложного объекта понапихано — нужно смотреть, а при просмотре ввидишь что вызывается конструктор предка и конструкторы членов класса. То есть Си он более ассемблерный, за каждой инструкцией более проще увидеть во что это выливается на ассемблерном уровне.