| Предыдущая версия справа и слеваПредыдущая версия | |
| products:laboratory_iot_с:exp2 [2024/11/12 16:28] – [Программный код эксперимента] labuser30 | products:laboratory_iot_с:exp2 [Дата неизвестна] (текущий) – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1 |
|---|
| ===== Эксперимент 2. Маячок ===== | |
| |
| В первом эксперименте мы мигали светодиодом, установленным на плате. Теперь настало время самостоятельно собрать схему и подключить светодиод. Перед этим нужно обязательно прочитать [[theory:breadboard|об устройстве макетной платы]], если это еще не сделано. Сначала нужно установить на макетную плату компоненты, потом провода. | |
| |
| ==== Подключение светодиода ==== | |
| При подключении светодиода необходимо обратить внимание на то, что этот электронный компонент является //полярным//. То есть он имеет полярность, ему не все равно как его подключают. Часто говорят, что у него есть плюс и минус. На самом деле так говорить не совсем правильно. Правильно говорить, что у него есть //анод// и //катод//. Анод подключают к плюсу, а катод к минусу. | |
| |
| <WRAP center round info 60%> | |
| Если светодиод подключить неправильной полярностью ничего страшного не произойдет, он не сгорит, но и светиться не будет. | |
| </WRAP> | |
| |
| {{ :products:esp-iot:led.png?nolink&600 |}} | |
| |
| |
| Светодиод, в отличие от обычной лампочки, напрямую к источнику тока не подключают. Светодиод обязательно подключают последовательно с резистором. Этот резистор необходим для ограничения тока, протекающего через светодиод. Его называют токоограничительным резистором. Без этого резистора светодиод сгорит! На нашей плате Лаборатории IoT все светодиоды уже подключены последовательно с токоограничительными резисторами, чтобы при сборке схем не нужно было устанавливать их на макетной плате. Но этот опыт соберем с резистором на макетной плате, чтобы он точно отложился в памяти как совершенно необходимый элемент. | |
| |
| <WRAP center round important 60%> | |
| Перед сборкой или изменением любой схемы нужно отключать плату от питания, иначе есть вероятность что-то замкнуть и испортить в процессе сборки. | |
| </WRAP> | |
| |
| <WRAP center round important 60%> | |
| Светодиод нельзя подключать к источнику питания напрямую. Всегда необходимо использовать токоограничительный резистор, иначе светодиод сгорит. | |
| </WRAP> | |
| |
| ==== Схема эксперимента ==== | |
| {{ :products:esp-iot:exp2.1.png?direct |}} | |
| //Рисунок 1. Электрическая принципиальная схема эксперимента// | |
| |
| {{ :products:esp-iot:exp2.png?direct&600 |}} | |
| //Рисунок 2. Монтажная схема эксперимента// | |
| Теперь подключим кабель и запустим на исполнение код эксперимента | |
| |
| ==== Программный код эксперимента ==== | |
| <file Arduino Exp2.ino[enable_line_numbers="2", start_line_numbers_at="1"]> | |
| #define LED_PIN 16 | |
| |
| void setup() { | |
| pinMode(LED_PIN, OUTPUT); | |
| } | |
| |
| void loop() { | |
| digitalWrite(LED_PIN, LOW); | |
| delay(1000); | |
| digitalWrite(LED_PIN, HIGH); | |
| delay(1000); | |
| } | |
| </file> | |
| |
| Отличие от программы из эксперимента 1 заключается в другом номере вывода микроконтроллера. Конечно, ведь мы подключили светодиод к другому выводу. Номера портов ввода-вывода (GPIO) подписаны справа от разъема. Мы подключили светодиод к контакту с надписью 16. | |
| |
| В первой стоке с помощью директивы ''#define'' мы задаем понятный нам псевдоним ''LED_PIN'' порту 16, который далее используется в функциях ''pinMode()'' и ''digitalWrite()''. Директивы ''#define'' говорит компилятору, что при компиляции программы нужно вместо псевдонима подставить его значение. | |
| |
| ==== Дополнительное задание ==== | |
| <WRAP center round tip 60%> | |
| Попробуй удалить первую строчку программы, заменить LED_PIN на 16 и в функциях pinMode() и digitalWrite(). | |
| </WRAP> | |
| <WRAP center round tip 60%> | |
| Попробуй подключить светодиод к другим контактам и поменяй номер в программе. | |
| </WRAP> | |