Микроэлектроника для чайников. Урок 2. Бегущий огонь. |
![]() |
![]() |
Автор megabax | |||
15.11.2020 г. | |||
Микроэлектроника для чайников. Урок 2. Бегущий огонь.На прошлом уроке мы подключили Arduino к компьютеру и написали для него первую программу: моргающий светодиод. Но на самом деле интереснее было бы, чтобы светодиод мигал не на плате, а отдельно. Его можно вставить в плату между разъемами 13 и gnd, тогда он окажется включен параллельно светодиоду, который мы заставили мигать на прошлом уроке. И он будет мигать вместе с ним. Длинный конец светодиода (анод) вставляем в разъем 13, в котором у нас плюс, а короткий (катод) в gnd ("минус" или "земля"): Если перепутаете, светодиод мигать не будет, так как он хоть и свето-, но все равно диод и проводит ток только в одном направлении. Теперь перейдем к разбору программы. Она у нас состоит из двух частей (setup и loop): В пером блоке (setup) производятся действия по инициализации системы, например, устанавливаются режим портов ввода/вывода. В нашем случае порт 13 ()к которому подключен светодиод) устанавливается в режим вывода. А в блоке loop находиться сама программа, которая замкнута в бесконечном цикле. И внутри этого цикла мы можем производить разные действия. Например, читать информацию с портов ввода и писать на порты вывода. К портам ввода/вывода могут быть подключены разные устройства, такие как индикаторы, датчики, серводвигатель и многое другое. в нашем случае к порту подключен светодиод. Команда digitalWrite записывает значение в порт. Либо HIGH - единица, либо LOW - нуль (для цифрового порта). У Arduino есть и аналоговые порты, до них мы еще доберемся. А пока реализуем более сложную схему:
Собранная схема выглядит вот так: Обратите внимание, что светодиоды рекомендуется подключать через резисторы сопротивлением 220 Ом, в противном случае они могут перегореть. А вот и программка для нашего устройства:
Здесь мы перебираем в цикле порты от 10 до 13, в каждом из них устанавливаем сначала единицу, потом нуль. Между ними задержка в 1 секунду. Таким образом у нас получается "бегущий огонь". Также обратите внимание, что порты перед использованием нужно инициализировать в блоке setup. Теперь немного усложним программу. Сделаем чтобы был не просто бегущий огонь, а играла некая "музыка огоньков". Для этого нам потребуется такая структура, как массив. В массив мы загоним номер портов, которые нужно"зажечь". И будем в цикле перебирать элементы этого массива, зажигая произвольный свтеодиод а отом гася его:
При желании вы можете задать любую последовательность любой длины, не забудьте только в цикле указать эту длину. |
« След. | Пред. » |
---|