С чего начинать изучать микроконтроллеры

С чего начать изучение микроконтроллеров, существуют ли эффективные учебники или самоучители?

Пожалуй, самый популярный самоучитель среди новичков, это самоучитель Корабельникова, за что ему огромнейшее спасибо (в том числе и за ошибки с недочётами, которые там допущены). Состоит курс из двух частей, первая из которых в свободном доступе и абсолютно бесплатна. Вторая платная, и, вероятно, очень полезная, но я не рекомендую Вам торопиться тратить на неё деньги, поскольку, как показал опыт, для въезда достаточно половины того, что есть в первой части.

Стоит предупредить сразу – для изучения, особенно с азов, придётся много читать, вникать, изучать техническую документацию, в общем – трудиться в поте лица. Наскоком не получится.

Основным для меня, в плане первого знакомства с контроллерами, стал вышеуказанный источник. НО, только для первого знакомства. Не рекомендую использовать самоучитель Корабельникова для углубленного изучения, это может негативно отразиться на Вашем опыте, а переучиться будет сложнее, поскольку извилины Вашего мозга уже будут лежать в определённой калее, из которой придётся всё же немного вывернуть. Лучше с чистого листа всё сделать правильно.

Основным источником вдохновения при программировании бесспорно является техническая документация производителя кристалла. На въёзде там будет многое для Вас не понятно. Но, по мере написания кода и самостоятельного разбора различного рода косяков программ и тонкостей работы кристалла, неясность будет таять на глазах, и Вы станете чаще обращаться именно к технической документации кристалла, нежели к своим мыслям.

Дополнительно хорошо помогли форумы. Вот некоторые ссылки:

С чего начать... - там по теме ещё 4 ветки форума.

Немного вдохновили пара статей на хабре - Дайте мне железа! Часть 1 и Дайте мне железа! Часть 2.

Что касается железа, если слишком проблематично паять или приобретать программатор для прошивки микроконтроллеров, можно и нужно научиться пользоваться программами симуляторами, например Протеусом, которые содержат большинство современных микроконтроллеров и других компонент в своих библиотеках и могут их успешно имитировать. При этом Вам не понадобится сразу покупать ни сам микроконтроллер, ни программатор, ни паять схемы для первых опытов. Достаточно будет собрать виртуальную схему, указать контроллеру файл скомпилированной вами прошивки и посмотреть, как ваше виртуальное детище работает. Реальная железка собранная по этой же схеме будет работать так же, за исключением некоторых случаев, о которых я поведаю в своей заключительной работе с конкретным примером, достаточно сложным для новичков.

Чаще всего на стадии изучения успешно помогают, но очень не хватает хороших, рабочих примеров. В дальнейшем я постараюсь выложить все файлы, написанные мной на ассемблере по ходу изучения с подробными комментариями и схемами.

Удачного изучения!

Google