В этом деле есть сразу три теоретических направления:
-программирование, причем системное, а не прикладное.
-электроника, которая делится на цифровую и аналоговую.
Соответственно, изучать придется все три направления разом + математику, которая под этим всем лежит.
Из математики придется подтянуть комбинаторику и математическую логику. Это минимум, чтобы только "встать на старт"
Из программирования - понадобятся ассемблер и C. Ассемблер можно изучать при помощи замечательного отладчика в AVR-Studio. Материалы -
easyelectronics.ru,
сайт Николаева (автора программатора uniprof)
И еще один сайт, для любителей web 1.0
zps-electronics.com
Из цифровой схемотехники - вышеназванный easyelectronics и замечательная книжка
Пей Ан - Сопряжение ПК с внешними устройствами
Аналоговая электроника -
Хорвиц и Хилл - искусство схемотехники.
И практика - проектирование и сборка устройств. Понадобятся определенные приборы и материалы, а также программы. Сразу следует браться за полноценную интегрированную среду разработки плат, в которой процесс ведется от схемы - и до файлов автоматического производства платы. Такой средой, например, является KiCad.
Для практики следует собрать:
Двухтранзисторный мультивибратор. Это такой Hello World! для электронщика
Кучу схем с применением легендарной К155ЛА3
Где-то после этого можно пытаться браться за микроконтроллеры.