Если вы уже владеете C++, то чтение данной книги можно закончить на этом разделе. Ничего нового вы не узнаете, никаких полезных навыков с большой долей вероятности не приобретёте.
Программируя встраиваемые системы придётся забыть большую часть возможностей языка (и его библиотеки). Возьмём МК stm32f103c8, у которого 64 кб flash-памяти, и скомпилируем следующий код:
x
int main(void) {
std::vector<int> vec;
return 0;
}
10 Кб памяти на пустую функцию main()
? В такой объём поместится полноценная прошика с инициализацией какого-нибудь дисплея, игрой и ещё светодиодом место останется помигать.
Если коротко, то не используйте:
Компилировать код лучше всего со следующими флагами:
xxxxxxxxxx
-fno-exceptions -fno-non-call-exceptions -fno-rtti -Os
Теперь вы готовы писать прошивки для микроконтроллеров.