Меню

Микроконтроллеры AVR

Микроконтроллеры (далее по тексту просто МК) ворвались в нашу жизнь и очень сильно ее облегчили. Они используются абсолютно везде, начиная с вашей стиральной машины и заканчивая смартфоном. Сами по себе МК ничего не могут делать, но занимают главную «должность» в электронной аппаратуре. Они УПРАВЛЯЮТ  процессом работы всех отдельных узлов радиоэлектронной аппаратуры и КОНТРОЛИРУЮТ ситуацию, чтобы та не вышла за рамки дозволенности). Эта их основная функция ;-). Вот и все!

Приступая к изучению микроконтроллеров с нуля, даже опытные электронщики порой заходят в тупик, не знают с чего начать и как понять все это. Гора информации кажется неподъемной и настолько страшной и не понятной, что порой на  первых попытках изучения МК все и заканчивается.

 Что такое микроконтроллеры?

В настоящее время видов МК очень много. Самые знаменитые из них это микроконтроллеры PIC фирмы Microchip Technology, в народе «пики»;  а также микроконтроллеры AVR фирмы Atmel, в народе называемые «авээрки». Самые продвинутые электронщики уже юзают микроконтроллеры STM фирмы STMicroelectronics. Думаю, до них нам еще далеко. Так как самыми простыми МК для изучения являются AVR с них, пожалуй, и начнем.

Микроконтроллер представляет из себя пластмаску с железными ножками в различных корпусах. Ниже на рисунке корпуса микроконтроллеров  AVR:

Микроконтроллеры AVR

 Давайте рассмотрим МК AVR Atmega8 в DIP корпусе:

Микроконтроллеры AVR

Для того, чтобы узнать, как у нее идет нумерация ножек (распиновка), надо простой найти выемку на микросхеме, и от нее уже начинать счет ;-)

Микроконтроллеры AVR

А вот так идет счет, против часовой стрелки:

Микроконтроллеры AVR

Теперь давайте рассмотрим схемотехническое обозначение МК AVR Atmega8:

Микроконтроллеры AVR

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

[quads id=1]

Как же это все работает?

Внутри микроконтроллера функционирует программа. Эта программа способна выполнять ТОЛЬКО ТРИ ДЕЙСТВИЯ, она может на любую из ножек ПОДАТЬ ПИТАНИЕ в 5 Вольт (включить логическую единицу), ВЫКЛЮЧИТЬ ПИТАНИЕ (логический ноль), ПРОЧИТАТЬ, подаем мы на ногу питание со стороны или нет. Вот и все, другого не дано, программа ни на что более не способна. Это, на самом деле, сильно упрощает программирование.  Подробнее про  основы цифровой электроники можно прочитать зде сь.

Например, мы хотим помигать светодиодом.

В основном, с этой программы начинают изучение микроконтроллеров. Как поступим в этом случае?

Для начала мы прицепим, скажем, на ножку «2» микроконтроллера светодиод (LED-RED). Пусть он будет прицеплен  анодом, а катод светодиода будет сидеть на земле (GND или, грубо говоря, минус питания). Схема будет выглядеть следующим образом:

Микроконтроллеры AVR

Схема сделана в программе Proteus, к которой мы вернемся в следующих статьях.

Итак, на ноге PD0 второго вывода микросхемы сидит светодиод с токоограничительным резистором. Резистор здесь просто ограничивает проходящий ток через светодиод, чтобы светодиод не сгорел.

Что же дальше?

Дальше нам надо запрограммировать наш МК программой. На языке программеров это звучит как «залить», «прошить», «шивануть». Для этого существуют специальные программаторы.

А дальше программа внутри микроконтроллера должна делать следующее:

  1. Подать питание на ногу PD0 (светодиод загорается)
  2. Подождать сколько нужно (продолжает гореть)
  3. Выключить питание на ноге PD0 (светодиод тухнет)
  4. Подождать сколько нужно ( все еще не горит)
  5. Перейти к шагу 1 (светодиод загорается)

Вот и все, больше ничего программа делать не будет, только тупо моргать светодиодом ;-)

Посмотрим что будет, если из алгоритма выкинуть хотя бы один шаг.

Думаю нет необходимости выкидывать шаги 1 и 3, очевидно, что без них светодиод либо никогда не загорится, либо будет всегда выключен.

Что если убрать шаг 2? Тогда получится следующее: Питание включено, диод горит, далее через не ощутимое человеком мгновение светодиод погас, идет задержка. Светодиод включается на столь малое время, что нам кажется, будто он постоянно выключен.

Аналогично будет, если убрать задержку под номером 3, светодиод будет выключаться на столь малое время, что будет казаться нам постоянно включен.

Вот что примерно представляет из себя микроконтроллер.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *