Non-conformist> Типа какая-нибудь "Азбука С"
"Искусство программирования" Кнут. Трёхтомник.
Там описание алгоритмов решения разных задач.
Конечно, много лишнего для начинающего.
И кое чего нет. Например, про конечные автоматы.
А все поделки на МК = конечные автоматы. И прежде чем их программировать, надо знать, а что же программируешь.
Ну и надо понимать, что программирование = это рисование на бумажке блок-схем или диаграмм состояния конечного автомата. А не набивание кода на конкретном языке.
Отличие такое же, как рисование чертежей и расчёт конструкции против кования железки конкретными инструментами.
Non-conformist> некие унифицированные куски, из которых можно было бы составить подобие уже своей простейшей программы
Надо использовать чужие библиотеки. Предварительно изучив.
Или наработать своё.
Например, у меня есть "драйвер клавиатуры" (для нескольких одиночных кнопок, не для матрицы). Занимается тем, что подавляет дребезг кнопок и выдаёт на выходе состояние нажатости каждой кнопки, а также события "стала нажатой" и "стала отпущенной".
"Питается" это штука от "системных часов", которые в свою очередь движутся прерываниями железного таймера.
Ну и т.д.
Всё это внутри самодельной ОС типа "хоровод".
Но у тебя, как я понимаю, другая ОС.
Что-то я растёкся по древу!