Аналоговый ввод/вывод на контакты

analogRead()

analogWrite()

Serial

Ввод/вывод на последовательный COM-порт

Последовательный порт (COM-порт) поддерживает передачу данных между компьютером и внешними устройствами по интерфейсу стандарта RS-232. RS-232 (Recommended Standard 232) – стандарт, описывающий интерфейс для последовательной двунаправленной передачи данных между терминалом и конечным устройством.

Это легендарный стандарт, который появился в США в 60-х годах 20 века, и стал основой для всех последующих интерфейсов последовательного обмена данными.

Интерфейс RS-232 полностью аппаратно реализован на персональных компьютерах в виде микросхем и разъемов. На персональных компьютерах его называют COM-портом (Communication port).

Аппаратная реализация означает то, что он работает всегда, не зависимо от того, какая операционная система установлена на компьютере (он работает и без ОС).

Этот интерфейс и в настоящее время широко распространён для связи с элементами промышленных информационных систем: приборами, датчиками, станками и другим оборудованием. Его стандартный 9‑контактный разъём DE-9p очень похож на разъём VGA и присутствует на большинстве компьютеров, выпущенных до 2010-х гг.

Все платы Arduino имеют хотя бы один последовательный порт (UART, иногда называют USART). Для обмена данными Serial используют цифровые порты ввода/вывода 0 (RX) и 1 (TX). Проблема связи с компьютером через COM-порт по стандарту RS-232 состоит в разности рабочего напряжения его (±12 В) и Arduino (0..5 В). Поэтому на большинстве полнофункциональных плат Arduino есть микросхема конвертора интерфейсов, которая позволяет передавать данные COM-порта через порт USB. Нужно сказать, что в настоящее время промышленное оборудование чаще всего подключается к компьютерам не через разъём DE-9p, а тоже через USB-конверторы интерфейсов.

Среда разработки Arduino имеет встроенный монитор последовательного интерфейса (Serial monitor). Для начала обмена данными необходимо запустить монитор нажатием кнопки Serial monitor и выставить ту же скорость связи (baud rate), с которой вызвана функция begin().

 

Структура программ

Стандартный машинный код хранится в памяти как последовательность команд. Чтобы обеспечить представление алгоритмов, используются операторы условного и безусловного перехода (if и goto). Они позволяют выборочно выполнять определённые участки кода, в том числе многократно. Свободное использование данных операторов привело к созданию очень сложных структур алгоритмов, которые отличались компактностью и эффективностью, но с точки зрения сложности понимания их принципов работы получили прозвище «клубок спагетти».

Структурное программирование

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

В результате в языках высокого уровня было полностью запрещено использование оператора безусловного перехода goto. Вместо этого были введены специальные стандартные блоки: оператор ветвления и циклы.

Принципы структурного программирования позволяют представить программу в виде вложенных друг в друга стандартных блоков. Также их можно расположить в виде дерева.

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

Условный оператор if

if (а > b)z= a; elsez= b;

 

Циклы

Цикл «Пока»

while (<условие>)< тело цикла>

Тело цикла выполняется пока условие истинно.

Пример:

while (a[k] <i) k++;

Цикл «До»

do< телоцикла>while (<условие>);

Тело цикла будет выполняться до тех пор, пока условие не примет ложное значение. Основным отличие цикла «До»является то, что тело в цикле «До»выполняется, по крайней мере, один раз.

Пример:

do

{

i++;

}

while (i<30);

Цикл со счётчиком

for (<инициализация>;<условие>;<шаг счётчика>)< телоцикла>

Тело цикла составляет либо один оператор, либо несколько операторов, заключенных в фигурные скобки { ... }.

Пример:

for (i = 1; i < 10; i++)

{ ...

}