Основные функции Arduino

Всем привет! В этой статье я расскажу про основные функции для Arduino. Как ими пользоваться, что они делают и т.д.
Что такое функция Arduino?
Функция — это набор действий, которые должен выполнить микроконтроллер, записанные один раз в программе и имеют своё название, а также параметры, которые указываются в круглых скобках через запятую. Придуманы функции для удобства написания кода, чтобы не описывать одинаковые действия по несколько раз.
Функции бывают пользовательские (созданные пользователем самостоятельно) и заложенные разработчиками ПО.
Рассмотрим примеры встроенных функций Arduino:
Функция, задающая статус пину
pinMode(номерПина, статусПина) — Необходима для того что бы Ардуино знала как использовать этот пин, принимать с него сигнал или выдавать на него сигнал.
Функция, задающая статус пину — входной пин (INPUT) или выходной (OUTPUT). В параметрах указываем номер пина, например — 3 или А3, и его статус — INPUT либо OUTPUT. Если вы собираетесь принимать на него значения с какого-нибудь датчика, тогда нужно ставить значение INPUT. Если собираетесь подключить какое-то другое устройство (например, светодиод), тогда нужно ставить OUTPUT.
Функция, которая считывает цифровое значение с пина
digitalRead(номерПина);
Функция, которая считывает цифровое значение с пина, который поставлен предыдущей функцией на ВХОД. Если на пин ток подаётся, функция возвращает «1», если не подаётся, то «0». В параметрах указываем номер пина для считывания значения, например, 4 (цифровой пин) или А5 (пин аналоговый вход).
Функция отправляет цифровой сигнал на пин
digitalWrite(номерПина, уровеньСигнала);
Отправляет цифровой сигнал на пин, который поставлен функцией pinMode на ВЫХОД. Уровней сигнала есть только два — HIGH (5v) и LOW (GND). В параметрах указываем выходной пин (любой) и уровень сигнала. Вместо HIGH и LOW можно просто написать 1 или 0 соответственно.
Функция, считывающая аналоговый сигнал с аналогового входа Arduino
analogRead(номерАналоговогоПинаВхода);
Функция, считывающая аналоговый сигнал с аналогового входа Arduino или другой подобной платы. Эта функция считывает данные только с аналоговых входов, с цифровых она ничего не считает. Возвращает значение от 0 до 1023.
Функция подаёт ШИМ сигнал на пины Arduino
analogWrite(номерПинаСШИМ, сигнал);
Эта функция подаёт ШИМ сигнал на пины Arduino, которые имеют возможность отправлять ШИМ сигнал (они отмечены на плате знаком волны рядом с номером пина). Вообще, конечно, назвали эту функцию неправильно — аналоговый сигнал и ШИМ сигнал это разные вещи.
Вот самые основные функции Arduino.
Рассмотрим пример написания собственной функции для Arduino:
Чтобы написать свою функцию, нужно ВНЕ функций SETUP и LOOP написать вот такой код:
void myFirstFunc(){
// вот здесь будет код, выполняющийся при вызове функции
}
ВАЖНО!! Вместо «myFirstFunc» нужно написать любое имя функции, не занятое другой функцией, которое содержит латинские буквы (A—Z) и цифры (0—9), записанные без пробелов. Больше никакие символы писать в названии функции нельзя. Начинаться имя функции может только с букв, цифры ставить нельзя!!
Пример имён допустимых функций:
- myfirstfunction
- myFirstFunction
- my1function
Недопустимые имена собственных функций:
- setup
- loop
- 1function
- функция:)
- моя первая функция
Запуск функции в скетче
Конечно же, если вы просто создадите функцию, в работе скетча ничего не изменится, потому что функцию нужно запустить. Для этого необходим в нужный момент указать в скетче имя вашей функции, обе круглые скобки и «точку с запятой». Например, вот так:
void loop(){ // ЗАПУСТИМ НАШУ ФУНКЦИЮ В ЦИКЛЕ LOOP
myFunction(); // ПРОПИСЫВАЕМ НАШУ ФУНКЦИЮ ВООООТ ТАК! Имя пишите своей функции
}
Пока на этом всё! Спасибо за внимание 😊