0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<ul><li><a>Что это такое</a></li>
1
<ul><li><a>Что это такое</a></li>
2
<li><a>Как собрать устройство</a></li>
2
<li><a>Как собрать устройство</a></li>
3
<li><a>Язык программирования</a></li>
3
<li><a>Язык программирования</a></li>
4
<li><a>Функция setup</a></li>
4
<li><a>Функция setup</a></li>
5
<li><a>Функция loop</a></li>
5
<li><a>Функция loop</a></li>
6
<li><a>Как запрограммировать микроконтроллер</a></li>
6
<li><a>Как запрограммировать микроконтроллер</a></li>
7
<li><a>Первый проект</a></li>
7
<li><a>Первый проект</a></li>
8
</ul><p>Arduino - инструмент, с которым может рано или поздно столкнуться программист. Изначально так называлась компания, производящая различные IT-механизмы и платы. На данный момент Ардуино - это специальный конструктор. Он является программируемым микроконтроллером для разнообразного оборудования.</p>
8
</ul><p>Arduino - инструмент, с которым может рано или поздно столкнуться программист. Изначально так называлась компания, производящая различные IT-механизмы и платы. На данный момент Ардуино - это специальный конструктор. Он является программируемым микроконтроллером для разнообразного оборудования.</p>
9
<p>Далее предстоит рассмотреть основы Ардуино, а также программирование этой платы с нуля для начинающих. Предложенная информация ориентирована на тех, кто уже имеет хотя бы поверхностные знания в разработке. </p>
9
<p>Далее предстоит рассмотреть основы Ардуино, а также программирование этой платы с нуля для начинающих. Предложенная информация ориентирована на тех, кто уже имеет хотя бы поверхностные знания в разработке. </p>
10
<h2>Что это такое</h2>
10
<h2>Что это такое</h2>
11
<p>Arduino - это просто. Так называется электронный конструктор. Плата, с помощью которой любой человек может создавать электромеханические устройства. Он включает в себя программную и аппаратную части.</p>
11
<p>Arduino - это просто. Так называется электронный конструктор. Плата, с помощью которой любой человек может создавать электромеханические устройства. Он включает в себя программную и аппаратную части.</p>
12
<p>Первая отвечает за среду разработки (программу для написания и отладки прошивок, IDE), готовые библиотеки и упрощенный язык программирования C++. Аппаратная часть - большая линейка микроконтроллеров и готовых модулей. С их помощью можно работать с Ардуино с нуля и очень быстро.</p>
12
<p>Первая отвечает за среду разработки (программу для написания и отладки прошивок, IDE), готовые библиотеки и упрощенный язык программирования C++. Аппаратная часть - большая линейка микроконтроллеров и готовых модулей. С их помощью можно работать с Ардуино с нуля и очень быстро.</p>
13
<p>Платы Ардуино используются для погружения в азы:</p>
13
<p>Платы Ардуино используются для погружения в азы:</p>
14
<ul><li>программирования;</li>
14
<ul><li>программирования;</li>
15
<li>механики;</li>
15
<li>механики;</li>
16
<li>электротехники.</li>
16
<li>электротехники.</li>
17
</ul><p>На его основе можно сконструировать различные полезные устройства - от мигалок и метеостанций до систем "умный дом" и средств автоматизации.</p>
17
</ul><p>На его основе можно сконструировать различные полезные устройства - от мигалок и метеостанций до систем "умный дом" и средств автоматизации.</p>
18
<h2>Как собрать устройство</h2>
18
<h2>Как собрать устройство</h2>
19
<p>Работа с Arduino строится на основе нескольких важных процессов - сборка микроконтроллеров в единое устройство, а также программирование.</p>
19
<p>Работа с Arduino строится на основе нескольких важных процессов - сборка микроконтроллеров в единое устройство, а также программирование.</p>
20
<p>Чтобы собрать устройство своими руками, потребуется:</p>
20
<p>Чтобы собрать устройство своими руками, потребуется:</p>
21
<ol><li>Сделать печатную плату и обеспечить тактирование микроконтроллеров. Для этого подключается тактовый генератор.</li>
21
<ol><li>Сделать печатную плату и обеспечить тактирование микроконтроллеров. Для этого подключается тактовый генератор.</li>
22
<li>Добавить обвязку - фильтры питания, кнопки для перезагрузки, резисторы и так далее.</li>
22
<li>Добавить обвязку - фильтры питания, кнопки для перезагрузки, резисторы и так далее.</li>
23
<li>Обеспечить оборудованию остальные компоненты. Их требуется разложить на плате или воспользоваться штекерами.</li>
23
<li>Обеспечить оборудованию остальные компоненты. Их требуется разложить на плате или воспользоваться штекерами.</li>
24
<li>Обеспечить системе стабильное питание.</li>
24
<li>Обеспечить системе стабильное питание.</li>
25
<li>Запрограммировать устройство. Иногда для этого используется специальное устройство - программатор.</li>
25
<li>Запрограммировать устройство. Иногда для этого используется специальное устройство - программатор.</li>
26
<li>Загрузить прошивку на оборудование через программатор.</li>
26
<li>Загрузить прошивку на оборудование через программатор.</li>
27
</ol><p>Это инструкция может показаться сложной, но на самом деле она простая. Ардуино - это просто. Он предоставляет настроенный микроконтроллер и все, что необходимо для его работы. Сюда же входит стабилизатор напряжения и программатор. Настоящий подарок для чайников в электронике и технике!</p>
27
</ol><p>Это инструкция может показаться сложной, но на самом деле она простая. Ардуино - это просто. Он предоставляет настроенный микроконтроллер и все, что необходимо для его работы. Сюда же входит стабилизатор напряжения и программатор. Настоящий подарок для чайников в электронике и технике!</p>
28
<h2>Язык программирования</h2>
28
<h2>Язык программирования</h2>
29
<p>Обучение Arduino немыслимо без освоения определенного языка разработки. Начало погружения в рассматриваемый МК сложно представить без C++. Ардуино использует его упрощенную версию для полноценной работы. </p>
29
<p>Обучение Arduino немыслимо без освоения определенного языка разработки. Начало погружения в рассматриваемый МК сложно представить без C++. Ардуино использует его упрощенную версию для полноценной работы. </p>
30
<p>При попытках программировать с Arduino IDE необходимо запомнить несколько базовых правил для чайников. Они точно такие же, как и при разработке на "обычном компьютере" на языках СИ-семейства:</p>
30
<p>При попытках программировать с Arduino IDE необходимо запомнить несколько базовых правил для чайников. Они точно такие же, как и при разработке на "обычном компьютере" на языках СИ-семейства:</p>
31
<ul><li>после каждой инструкции или функции ставится точка с запятой;</li>
31
<ul><li>после каждой инструкции или функции ставится точка с запятой;</li>
32
<li>тип данных нужно обязательно указывать перед объявлением функции;</li>
32
<li>тип данных нужно обязательно указывать перед объявлением функции;</li>
33
<li>если функция ничего не возвращает, она должна быть определена как void;</li>
33
<li>если функция ничего не возвращает, она должна быть определена как void;</li>
34
<li>перед объявлением переменных тоже указывается тип используемых данных;</li>
34
<li>перед объявлением переменных тоже указывается тип используемых данных;</li>
35
<li>комментарии в исходном коде допускаются - они начинаются с "//" или "/*"/.</li>
35
<li>комментарии в исходном коде допускаются - они начинаются с "//" или "/*"/.</li>
36
</ul><p>Исходный код пишется на C++, после чего Ардуино загружает его через программатор на оборудование и заставляет работать.</p>
36
</ul><p>Исходный код пишется на C++, после чего Ардуино загружает его через программатор на оборудование и заставляет работать.</p>
37
<p>Arduino для начинающих требует обязательного изучения всего нескольких функций. С их помощью уже можно программировать самое разное оборудование с нуля. Речь идет о setup() и loop().</p>
37
<p>Arduino для начинающих требует обязательного изучения всего нескольких функций. С их помощью уже можно программировать самое разное оборудование с нуля. Речь идет о setup() и loop().</p>
38
<h2>Функция setup</h2>
38
<h2>Функция setup</h2>
39
<p>Уроки и документацию на русском языке по Ардуино, которые позволят начать обучение работы с микроконтроллерами с нуля, можно отыскать в Google и других поисковиках. Но сначала рекомендуется просто рассмотреть несколько ключевых функций. Они дадут возможность работать с Ардуино на первых порах.</p>
39
<p>Уроки и документацию на русском языке по Ардуино, которые позволят начать обучение работы с микроконтроллерами с нуля, можно отыскать в Google и других поисковиках. Но сначала рекомендуется просто рассмотреть несколько ключевых функций. Они дадут возможность работать с Ардуино на первых порах.</p>
40
<p>В начале программирования требуется обратить внимание на функцию setup. Она выполняется в самом начале и всего один раз после включения или перезагрузки устройства. Здесь указываются режимы пинов, открываются необходимые протоколы связи, устанавливаются соединения с дополнительными модулями и настраиваются подключенные библиотеки.</p>
40
<p>В начале программирования требуется обратить внимание на функцию setup. Она выполняется в самом начале и всего один раз после включения или перезагрузки устройства. Здесь указываются режимы пинов, открываются необходимые протоколы связи, устанавливаются соединения с дополнительными модулями и настраиваются подключенные библиотеки.</p>
41
<p>Если для имеющейся прошивки (как у чайников) ничего из перечисленного не требуется, функция setup все равно объявляется. Ниже - стандартный ее пример:</p>
41
<p>Если для имеющейся прошивки (как у чайников) ничего из перечисленного не требуется, функция setup все равно объявляется. Ниже - стандартный ее пример:</p>
42
<p>Написание этого фрагмента отвечает за открытие последовательного порта связи с компьютером. Пины 9 и 13 назначаются как вход и выход.</p>
42
<p>Написание этого фрагмента отвечает за открытие последовательного порта связи с компьютером. Пины 9 и 13 назначаются как вход и выход.</p>
43
<h2>Функция loop</h2>
43
<h2>Функция loop</h2>
44
<p>Loop() - функция, которую программа реализовывает после setup. Если запрограммировать Arduino, то loop будет отвечать за зацикливание. Она выполняется снова и снова.</p>
44
<p>Loop() - функция, которую программа реализовывает после setup. Если запрограммировать Arduino, то loop будет отвечать за зацикливание. Она выполняется снова и снова.</p>
45
<p>Пример - ATmega328. Он установлен на большинстве плат Arduino. Выполняет loop около 10 000 раз в секунду. За счет этого программистам предоставляются широкие возможности для создания софта.</p>
45
<p>Пример - ATmega328. Он установлен на большинстве плат Arduino. Выполняет loop около 10 000 раз в секунду. За счет этого программистам предоставляются широкие возможности для создания софта.</p>
46
<h2>Как запрограммировать микроконтроллер</h2>
46
<h2>Как запрограммировать микроконтроллер</h2>
47
<p>Руководство пользователя по разработке и программированию МК указывает на то, что после сборки аппаратной части остается запрограммировать поведение оборудования. Краткая инструкция Ардуино для начинающих будет выглядеть в этом случае так:</p>
47
<p>Руководство пользователя по разработке и программированию МК указывает на то, что после сборки аппаратной части остается запрограммировать поведение оборудования. Краткая инструкция Ардуино для начинающих будет выглядеть в этом случае так:</p>
48
<ol><li>Написать прошивку. Делается это при помощи любого текстового редактора.</li>
48
<ol><li>Написать прошивку. Делается это при помощи любого текстового редактора.</li>
49
<li>Скомпилировать прошивку. Для AVR - через бесплатный консольный компилятор. Он называется avr-gcc.</li>
49
<li>Скомпилировать прошивку. Для AVR - через бесплатный консольный компилятор. Он называется avr-gcc.</li>
50
<li>Загрузить прошивку в микроконтроллер. Для AVR используется консольная утилита avrdude.</li>
50
<li>Загрузить прошивку в микроконтроллер. Для AVR используется консольная утилита avrdude.</li>
51
</ol><p>Все эти задачи Arduino решает через встроенную IDE. Она включает в себя текстовый редактор, который умеет компилировать и загружать код. В IDE поддерживается менеджер библиотек и неофициальные платы. Весь процесс прошивки сведется к одному клику по кнопке "Загрузить". Никаких дополнительных настроек не нужно.</p>
51
</ol><p>Все эти задачи Arduino решает через встроенную IDE. Она включает в себя текстовый редактор, который умеет компилировать и загружать код. В IDE поддерживается менеджер библиотек и неофициальные платы. Весь процесс прошивки сведется к одному клику по кнопке "Загрузить". Никаких дополнительных настроек не нужно.</p>
52
<h2>Первый проект</h2>
52
<h2>Первый проект</h2>
53
<p>Писать на Ардуино можно через уроки программирования для чайников. Чтобы лучше изучить выбранное направление, обучение лучше начать с наглядного примера.</p>
53
<p>Писать на Ардуино можно через уроки программирования для чайников. Чтобы лучше изучить выбранное направление, обучение лучше начать с наглядного примера.</p>
54
<p>Это первое устройство на базе Arduino. Тактовая кнопка и светодиод подключаются к микроконтроллеру:</p>
54
<p>Это первое устройство на базе Arduino. Тактовая кнопка и светодиод подключаются к микроконтроллеру:</p>
55
<p>Чтобы схема работала, необходимо написать скетч на компьютере в текстовом редакторе или в специализированной ID. Вот его пример. Здесь при нажатии на кнопку светодиод загорается, а при повторной операции - гаснет. Код соответствующего скетча:</p>
55
<p>Чтобы схема работала, необходимо написать скетч на компьютере в текстовом редакторе или в специализированной ID. Вот его пример. Здесь при нажатии на кнопку светодиод загорается, а при повторной операции - гаснет. Код соответствующего скетча:</p>
56
<p>Здесь добавлена дополнительная команда. Она называется debounse. Отвечает за подавление дребезга контактов.</p>
56
<p>Здесь добавлена дополнительная команда. Она называется debounse. Отвечает за подавление дребезга контактов.</p>
57
<p>Чтобы лучше разбираться в программировании рассматриваемого микроконтроллера, рекомендуется пройти какой-нибудь специализированный курс, коих в сети можно встретить огромное количество.</p>
57
<p>Чтобы лучше разбираться в программировании рассматриваемого микроконтроллера, рекомендуется пройти какой-нибудь специализированный курс, коих в сети можно встретить огромное количество.</p>
58
<p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em> </p>
58
<p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em> </p>
59
59