Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Содержание

Arduino для начинающих. Самый простой пошаговый самоучитель (Стюарт Ярнольд)

Читать отрывок

Купить офлайн

Цена на сайте может отличаться от цены в магазинах сети. Внешний вид книги может отличаться от изображения на сайте.

Цена на сайте может отличаться от цены в магазинах сети. Внешний вид книги может отличаться от изображения на сайте.

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

Описание

Характеристики

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

С этим самоучителем любой может освоить основы электротехники и научится работать с компонентами и платами, а также программировать их, создавать скетчи и классные проекты легко и быстро!

Эксмо

Как получить бонусы за отзыв о товаре

1

Сделайте заказ в интернет-магазине

2

Напишите развёрнутый отзыв от 300 символов только на то, что вы купили

3

Дождитесь, пока отзыв опубликуют.

Если он окажется среди первых десяти, вы получите 30 бонусов на Карту Любимого Покупателя. Можно писать неограниченное количество отзывов к разным покупкам – мы начислим бонусы за каждый, опубликованный в первой десятке.

Правила начисления бонусов

Если он окажется среди первых десяти, вы получите 30 бонусов на Карту Любимого Покупателя. Можно писать неограниченное количество отзывов к разным покупкам – мы начислим бонусы за каждый, опубликованный в первой десятке.

Правила начисления бонусов

Эта книга не то чем хочет казаться

Книга «Arduino для начинающих. Самый простой пошаговый самоучитель» есть в наличии в интернет-магазине «Читай-город» по привлекательной цене. Если вы находитесь в Москве, Санкт-Петербурге, Нижнем Новгороде, Казани, Екатеринбурге, Ростове-на-Дону или любом другом регионе России, вы можете оформить заказ на книгу Стюарт Ярнольд «Arduino для начинающих. Самый простой пошаговый самоучитель» и выбрать удобный способ его получения: самовывоз, доставка курьером или отправка почтой. Чтобы покупать книги вам было ещё приятнее, мы регулярно проводим акции и конкурсы.

Ярнольд С. Arduino для начинающих. Самый простой пошаговый самоучитель.-М.:Эксмо,2017.-256с.-Электроника для начинающих

Описание

Общая информация:

  • Серия Электроника для начинающих

  • Издательство Эксмо

  • Возраст 16+

  • Автор Ярнольд Стюарт

  • Год издания 2017

  • Переплет Мягкий переплет (обложка)

  • ШтрихКод 9785699989447

  • Количество страниц 256

Описание

Описание:

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

Учебное пособие по Arduino

для начинающих, Изучите программирование Arduino онлайн

  • Все
  • Новичок
  • Средний
  • Жесткий
  • Основы программирования
  • Начиная

Интерфейсный модуль GY-521 с evive

В этом уроке мы свяжем модуль GY-521 с evive. Модуль GY-521 содержит 3-осевой акселерометр, 3-осевой гироскоп, датчик температуры и цифровой процессор движения. Мы будем отображать значение каждого датчика на последовательном мониторе.

Датчик температуры интерфейса (LM35) с evive

В этом руководстве обсуждается, как мы можем подключить датчик температуры LM-35 к evive и отобразить данные на tft-дисплее evive. НАЧАЛО….

Как подключить датчик капель дождя к evive?

В этом руководстве рассказывается, как подключить датчик капель дождя, как он работает и как интерпретировать выходные данные? Все ответы даны в этом руководстве. ДАВАЙТЕ УЗНАТЬ….

Как подключить датчик расхода воды к evive

В этом уроке мы обсудим, как подключить датчик расхода воды к evive. Как меняется расход воды, текущий расход воды и выход воды? Расход воды в литрах в час, текущий расход воды и данные о расходе воды на выходе с момента запуска отображаются на экране. Все ответы даны в этом уроке.НАЧАЛО…

Как связать датчик LDR с evive?

В этом руководстве показано, как подключить датчик ldr к evive и управлять состоянием светодиода с помощью датчика. Как работает датчик ldr? Как управлять светом с помощью датчика ldr? Все ответы даны в этом уроке. Давайте начнем…

Интерфейсный RGB светодиодный модуль с evive

В этом уроке мы соединим RGB-модуль KY-009 с evive и воспроизводим красный, зеленый и синий цвета с помощью одного светодиода

.

Создание цифровых часов с использованием «4-разрядного дисплея TM1637»

В этом уроке мы будем делать цифровые часы, используя «4-значный дисплей TM1637» и «RTC PCF8563», мы также будем использовать ползунковый переключатель и два потенциометра для установки времени, и мы будем отображать часы и минуты, полученные с «RTC PCF8563» на “TM1637” 4-разрядный дисплей

Взаимодействие датчика газа MQ-4 с evive

В этом руководстве мы соединим модуль датчика газа MQ-4 с evive, и если концентрация газа превысит определенную концентрацию, мы загоримся светодиодом

Двухцветный светодиодный модуль сопряжения с evive

В этом уроке мы будем соединять 2-цветный светодиодный модуль с evive, и мы будем создавать различные цветовые комбинации, используя этот светодиод

Интерфейсный модуль клавишного переключателя с evive

В этом учебном пособии показано, как подключить модуль клавишного переключателя к evive и отобразить состояние переключателя на TFT-дисплее.

Сопряжение ультразвукового датчика HC-SR04 с evive

В этом уроке мы соединим ультразвуковой датчик HC-SR04 с evive и рассчитаем расстояние между ультразвуковым датчиком и препятствием, от которого отражаются ультразвуковые волны

Как подключить цифровой ввод/вывод 3,3 В

В этом руководстве обсуждается использование двунаправленного логического переключателя в качестве цифрового входа и выхода 3,3 В с помощью скетча Arduino IDE.

Как подключить модуль Wi-Fi ESP8266 к evive

В этом руководстве обсуждается модуль Wi-Fi ESP8266, как его подключить к evive и как настроить его для приложений IoT с помощью AT-команд путем написания эскиза Arduino IDE.

Как использовать часы реального времени evive

В этом руководстве рассказывается, что такое часы реального времени и как использовать часы реального времени evive для отображения времени, даты и дня недели с помощью скетча Arduino IDE.

Как использовать контакты прерывания evive

В этом руководстве обсуждается, что такое прерывания, и как использовать контакты прерывания evive в Arduino IDE с помощью скетча Arduino IDE.

Как использовать емкостные сенсорные входы evive

В этом руководстве рассказывается, что такое емкостные сенсорные датчики, емкостный сенсорный ввод evive и как управлять сенсорными датчиками в evive с помощью скетча Arduino IDE.

Как настроить модуль Bluetooth HC05 с помощью AT-команд

В этом руководстве рассказывается, что такое Bluetooth, как он работает, модуль Bluetooth HC05, последовательная связь и как настроить модуль Bluetooth с помощью эскиза Arduino IDE.

Как управлять зуммером evive в Arduino IDE

В этом руководстве обсуждается, что такое пьезо-зуммер, встроенный зуммер evive, как управлять им в Arduino IDE с помощью скетча Arduino IDE.

Серворазвертка с использованием Arduino IDE

В этом уроке мы будем вращать вал радиоуправляемого серводвигателя вперед и назад на 180 градусов, используя Arduino IDE.

Как подключить серводвигатель к Arduino IDE

В этом руководстве обсуждается, что такое серводвигатели, как ими управлять и как связать их с Arduino IDE, используя блоки управления двигателями в evive с помощью скетча Arduino IDE.

Как подключить двигатель постоянного тока к Arduino IDE

В этом руководстве рассказывается, что такое двигатели постоянного тока, как ими управлять и как связать их с Arduino IDE, используя блоки управления двигателями в evive с помощью скетча Arduino IDE.

Как использовать джойстик evive (клавиша навигации)

В этом руководстве рассказывается, как работать с 5-позиционной навигационной клавишей evive и как считывать ее состояние и отображать на TFT-экране с помощью скетча Arduino IDE.

Как читать аналоговый ввод на аналоговых выводах evive

В этом руководстве рассматриваются аналоговые входные контакты в evive, что такое масштабирование, потенциометр и как считывать входные аналоговые контакты с помощью простого скетча Arduino IDE.

Как использовать ползунковый переключатель evive

В этом учебном пособии обсуждаются различные типы переключателей в зависимости от их полюса и положения, что такое ползунковые переключатели, а также простой скетч Arduino IDE для отображения состояния ползункового переключателя evive на TFT-экране.

Как использовать тактильный переключатель с evive

В этом руководстве рассказывается, что такое переключатели, типы переключателей, подтягивающие и подтягивающие резисторы, а также как управлять светодиодом на выводе 13 на evive с помощью тактильного переключателя с помощью скетча Arduino IDE.

Как использовать цифровые контакты evive в качестве входных контактов

В этом руководстве обсуждается, как настроить цифровые контакты в evive как INPUT в Arduino IDE, с помощью простого примера с использованием тактильного переключателя evive.

Как использовать цифровые контакты evive в качестве выходных контактов

В этом руководстве рассказывается о цифровых выводах в evive, как настроить их как ВЫХОД в Arduino IDE с помощью простого примера управления светодиодом.

Как рисовать фигуры на TFT-дисплее

В этом руководстве обсуждаются функции библиотеки экранов evive TFT в Arduino IDE, которые помогают рисовать различные фигуры на дисплее с помощью простого эскиза Arduino.

Как управлять текстом на TFT-дисплее

В этом руководстве рассказывается, как изменить цвет и размер текста на TFT-дисплее evive с помощью функций из библиотеки TFT в Arduino IDE.

Начало работы с TFT-дисплеем

В этом руководстве обсуждается TFT-дисплей evive, библиотека TFT в Arduino IDE и способы отображения текста на TFT-экране.

Блинк с прошивкой на evive

В этом руководстве объясняется, как мы можем получить доступ к прошивке evive, даже если на evive запущен какой-то другой код.

Arduino IDE: цикл while

В этом руководстве обсуждается, что такое цикл while, его общий синтаксис в Arduino IDE, чем он отличается от цикла for и как он работает.

Arduino IDE: для петли

В этом руководстве обсуждается, что такое оператор цикла, цикл for, его общий синтаксис в Arduino IDE и как он работает.

Arduino IDE: оператор увеличения и уменьшения

В этом руководстве рассказывается, что такое оператор инкремента и оператор декремента, два из множества арифметических операторов, их две разные структуры и как их использовать в Arduino IDE.

Arduino IDE: условные операторы (if-else-if)

В этом руководстве рассматриваются условные операторы и их различные типы в Arduino IDE, такие как оператор if, оператор if-else и оператор if-else-if.

Arduino IDE: булевы или логические операторы

В этом руководстве рассматриваются логические операторы и различные типы логических операторов в Arduino IDE, такие как оператор И, оператор ИЛИ и оператор НЕ.

Arduino IDE: арифметические операторы

В этом руководстве рассматриваются арифметические операторы и арифметические операторы в Arduino IDE для сложения, вычитания, умножения, деления и нахождения остатка.

Arduino IDE: переменные

Переменная используется в программировании для хранения значения (целого числа, числа с плавающей запятой, символа или строки), которое может измениться в течение жизни скетча Arduino.

Эскиз Arduino: структура и поток

В этом руководстве обсуждается базовая структура скетча Arduino и выполнение программных инструкций сверху вниз.

Начало работы с Arduino IDE

В этом руководстве рассказывается, как установить Arduino IDE в Windows, Mac и Linux и настроить Arduino для загрузки программ (прошивки evive) в evive.

evive – Подключи и работай, часть 2

В этом уроке мы рассмотрим встроенные инструменты, которые есть у evive и которые действительно делают его универсальной и портативной лабораторией электроники. Это монитор состояния выводов, осциллограф, датчик и генератор функций.

evive – Plug and Play: часть 1

В этом руководстве мы собираемся дать вам практический опыт работы с интерфейсом evive plug and play с помощью действий по управлению двигателем постоянного тока, серводвигателем, пониманием встроенных сенсорных датчиков evive.

Начало работы с evive

В этом руководстве объясняется, что такое evive, как установить в него аккумулятор, как его зарядить и какие в нем доступны различные модули ввода-вывода.

руководств по Arduino для начинающих

Arduino — популярная электронная платформа с открытым исходным кодом, которая позволяет пользователям создавать интерактивные проекты с использованием простого аппаратного и программного обеспечения. Если вы хотите начать работу с учебными пособиями по Arduino, но не знаете, с чего начать, то вы попали по адресу.  Это руководство расскажет вам обо всем, что нужно знать абсолютному новичку о плате микроконтроллера Arduino, прежде чем приступить к работе над первым проектом.

В этой статье мы рассмотрим:

    • Что такое мощность постоянного и переменного тока?
    • Что такое сигнал?
    • Цифровые сигналы
      • Что такое цифровой сигнал?
      • Arduino digitalWrite() и другие функции
      • Что такое цифровая связь?
    • Аналоговые сигналы
      • Что такое аналоговый сигнал?
      • Являются ли аналоговые сигналы непрерывными?
      • Как мы используем аналоговый сигнал?
    • ШИМ-сигналы
      • Что такое ШИМ-сигнал?
      • Насколько точно ШИМ-сигнал используется для имитации аналогового сигнала?
      • Использование ШИМ с Arduino AnalogWrite()

Краткое руководство по началу работы с Arduino

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

  • Цифровые сигналы: мигающий пример
  • Аналоговые сигналы: пример аналогового входа
  • Сигналы ШИМ:  Пример ШИМ с затуханием

Однако, если вы не знакомы с такими темами, как питание переменного и постоянного тока, цифровые сигналы, аналоговые сигналы и сигналы ШИМ, мы настоятельно рекомендуем сначала прочитать эту статью. Изучив это руководство, вы получите гораздо больше пользы от вышеупомянутых руководств по Arduino, сначала получив прочную основу в основах. Таким образом, вы получаете преимущество в своих проектах по сравнению с теми, кто тщательно изучает эти ключевые концепции

Переменный ток против постоянного тока

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

Возможно, вы уже встречали термины «переменный ток» и «постоянный ток», но, возможно, не знаете, что они на самом деле означают. DC означает постоянный ток , а AC означает переменный ток . Постоянный ток , как следует из названия, течет прямо только в одном направлении и может обеспечивать постоянное напряжение.

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

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

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

В контексте этой статьи плата Arduino использует питание постоянного тока для своего включения. Это питание постоянного тока поступает либо от вашего компьютера через подключенный USB-кабель, либо через питание от переменного тока к постоянному, адаптированное к вашей сетевой розетке.

Цифровые и аналоговые сигналы — что такое сигнал?

Типы сигналов — еще одна важная тема, которую нужно знать перед тем, как приступить к изучению руководств по Arduino. Сигналы — это способ передачи и получения информации, и они позволяют электронным устройствам общаться друг с другом.

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

Что такое цифровой сигнал?

Цифровые сигналы

Вы можете представить цифровой сигнал как выключатель света . Подобно выключателю света, цифровой сигнал имеет два состояния: ВКЛ и ВЫКЛ. В состоянии ВКЛ напряжение сигнала равно напряжению питания . Напряжение питания для Arduino UNO составляет 5 вольт, поэтому, если цифровой сигнал находится в состоянии ON, он будет иметь значение 5 вольт. Другие термины, которые вы часто будете видеть вместо ON включает HIGH или 1 , что означает одно и то же. Для состояния OFF напряжением является GND (земля) или 0 вольт. Иногда люди могут называть состояние OFF LOW или 0 .

На изображении ниже показано поведение цифрового сигнала, похожее на световой выключатель. Когда сигнал включен (или 1), он имеет значение 5 В. Когда сигнал выключен (или 0), он имеет значение 0 В. Обратите внимание, что между и нет значений, цифровой сигнал может быть только 5В или 0В.

Что такое цифровая связь?

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

Некоторые распространенные протоколы, о которых вы могли слышать, включают UART (именно так ваш компьютер общается с Arduino через USB-кабель), I2C и SPI .

Учебники Arduino по цифровым сигналам

Плата Arduino UNO имеет четырнадцать контактов цифрового ввода-вывода (I/O) . Эти контакты помечены от нуля до тринадцати, и их можно увидеть в красной рамке на изображении ниже.

Цифровой выход — это сигнал, который начинается с Arduino и поступает на другое устройство. Вы бы использовали функцию digitalWrite() в вашем коде, чтобы указать Arduino UNO отправлять информацию в другую систему. С другой стороны, цифровой вход — это сигнал, поступающий от другого устройства и поступающий на Arduino UNO. Вам нужно использовать функцию digitalRead() для чтения этой входящей информации с других устройств. Некоторые из этих цифровых входов/выходов имеют специальные функции . Например, контакт 13 подключен к встроенному светодиоду.

Для учебных пособий Arduino по цифровым сигналам мы рекомендуем следовать этому пример мигания , где вы будете управлять включением и выключением светодиода.

Что такое аналоговый сигнал?

Другой тип сигнала, который мы используем каждый день, это аналоговый сигнал . Определите в уме диммируемый выключатель света , аналогичный нашему аналогу выключателя света для цифровых сигналов. Диммируемый выключатель света может быть полностью включен или выключен, как цифровой выключатель, но его также можно повернуть на половину яркости или на любое значение между полностью включен или полностью выключен . Точно так же аналоговый сигнал может иметь 0 вольт, 5 вольт или любое значение между ними, например 2,5 вольта, 4,3 вольта или 0,001 вольта.

Основное различие между аналоговыми сигналами и цифровыми сигналами заключается в том, что аналоговые сигналы являются непрерывными , в отличие от дискретных цифровых сигналов.

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

Учебники Arduino по аналоговым сигналам

Плата Arduino UNO имеет шесть аналоговых входов, помеченных от A0 до A5 , расположенных в правом нижнем углу Arduino UNO. Эти выводы выделены красным прямоугольником на следующем изображении.

Поскольку Arduino UNO является цифровым устройством, входящие аналоговые сигналы необходимо подавать через устройство, называемое аналого-цифровым преобразователем (АЦП). АЦП преобразует аналоговый сигнал в цифровой сигнал, понятный микроконтроллеру.
 Функция AnalogRead(), встроенная в IDE Arduino, может использоваться для считывания значений с указанного аналогового вывода. Arduino UNO не имеет родного аналогового выхода. Чтобы иметь аналоговый выход, на борту должно быть устройство, называемое цифро-аналоговым преобразователем (ЦАП) , которое является полной противоположностью АЦП. Поскольку Arduino UNO не имеет ЦАП , для имитации аналогового сигнала часто используется ШИМ-сигнал.

Для учебных пособий Arduino по аналоговым сигналам мы рекомендуем следовать этому пример аналогового ввода , где вы будете считывать входящий сигнал при повороте ручки.

Что такое ШИМ-сигналы?

Сигналы ШИМ

ШИМ расшифровывается как широтно-импульсная модуляция и часто используется для имитации аналоговых сигналов с помощью цифровых сигналов . Название «широтно-импульсная модуляция» — это просто причудливый термин для «изменения ширины импульса в этом шаблоне». На изображении ниже показан пример ШИМ-сигнала. Вероятно, вы видите, что ширина импульса изменяется (или модулируется) с течением времени.

Для описания ШИМ используются две характеристики:

    • Частота
    • Рабочий цикл

Частота Измеряется в герцах, что составляет всего 1 секунду. Математически частота обратно пропорциональна периоду, а период — это время, необходимое для возникновения одного цикла этого паттерна, как показано на рисунке ниже. если у вас есть частота 10 Гц, у вас будет эта импульсная последовательность 10 раз в секунду.

Другой характеристикой ШИМ-сигнала является рабочий цикл . Рабочий цикл — это ширина импульса , которая измеряется в процентах. Рабочий цикл – это в основном количество места, которое занимает импульс в течение всего периода.

На изображении ниже вы можете видеть, что первый импульс составляет 25% периода, поэтому его рабочий цикл составляет 25%.

Во втором периоде импульс занимает 50 % периода, что означает, что его рабочий цикл составляет 50 %.

Насколько точно ШИМ-сигнал используется для имитации аналогового сигнала?

Приведенный ниже пример поможет ответить на этот вопрос. В приведенном ниже примере «Низкий» означает 0 вольт или заземление, а «Высокий» означает 5 вольт. Оранжевая линия между высоким и низким сигналом — это наше среднее напряжение. Мы видим, что частота (то есть время между нарастающими фронтами) постоянна. Однако по изменению ширины импульсов видно, что рабочий цикл (процент времени, в течение которого каждый импульс высокий) меняется.
Поскольку ширина импульсов изменяется , мы видим, что среднее напряжение с течением времени колеблется между землей и 5 вольтами . Чем больше рабочий цикл, тем больше среднее напряжение.

Изменение среднего напряжения на графике демонстрирует одну важную характеристику аналоговых сигналов: сигнал может иметь любое значение между напряжением ON (высокое) и OFF (низкое) . Это именно то, что мы подразумеваем под ШИМ-сигналом, имитирующим аналоговый сигнал.

Учебные пособия Arduino по ШИМ-сигналам

ШИМ-сигнал — это тип цифрового сигнала , поэтому мы по-прежнему используем те же цифровые контакты, расположенные в верхней части Arduino. Как показано на изображении ниже, вот тильда (~) рядом с определенными цифровыми контактами : контакты 3, 5, 6, 9, 10 и 11. Это означает, что эти контакты могут генерировать ШИМ-сигнал.

Плата Arduino позволяет очень легко генерировать ШИМ-сигналы. Используйте функцию AnalogWrite() Arduino для создания аналогового выхода с использованием одного из контактов ШИМ.

Генерация ШИМ от Arduino имеет некоторые ограничения, о которых вам следует знать.

Одним из ограничений является то, что частота фиксирована для контактов ШИМ . Для контактов 5 и 6 частота зафиксирована на уровне 980 Гц, что означает 980 импульсов в секунду.

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

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