|

Основные функции 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» нужно написать любое имя функции, не занятое другой функцией, которое содержит латинские буквы (AZ) и цифры (09), записанные без пробелов. Больше никакие символы писать в названии функции нельзя. Начинаться имя функции может только с букв, цифры ставить нельзя!!

Пример имён допустимых функций:

  1. myfirstfunction
  2. myFirstFunction
  3. my1function

Недопустимые имена собственных функций:

  1. setup
  2. loop
  3. 1function
  4. функция:)
  5. моя первая функция

Запуск функции в скетче

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

void loop(){ // ЗАПУСТИМ НАШУ ФУНКЦИЮ В ЦИКЛЕ LOOP
  myFunction(); // ПРОПИСЫВАЕМ НАШУ ФУНКЦИЮ ВООООТ ТАК! Имя пишите своей функции
}

Пока на этом всё! Спасибо за внимание 😊

5/5 - (26 голосов)


Поделись!