Переменные в Arduino – это самая базовая вещь, которую вы узнаете в программировании, но они также и самые полезные. В этой статье мы сосредоточимся на использовании переменных, объявлении переменных, именовании переменных и выполнении математических операций с переменными на Arduino.
Что такое переменная?
Переменная — это контейнер, который используется для хранения данных. Переменные представляют собой места в статической оперативной памяти Arduino, которые зарезервированы для данных, хранящихся в переменной. Переменные могут хранить постоянные значения, такие как число три, и они могут хранить значения, которые меняются, например, входные данные от датчика. Они также могут содержать строки, функции и даже другие переменные.
Присвоение имен переменных
Чтобы создать переменную, дайте ей имя и установите ее равным чему-либо. Полезно давать переменным ассоциативные имена, которые позже напомнят вам об их назначении. Имена переменных могут быть отформатированы различными способами, но есть несколько соглашений, которые являются общими в программировании Arduino. Первый формат использует подчеркивание для разделения слов, например:
variable_name = variable_name_one =
Другой формат записи имен, когда второе (третье, четвертое и т.д.) слово в переменной пишется с заглавной буквы:
variableName = variableNameOne =
Независимо от того, как вы решите назвать свои переменные, рекомендуется придерживаться одного и того же формата во всей вашей программе.
Числа могут использоваться в именах переменных, если только имя переменной не начинается с цифры. Например, это не вызовет проблем:
variable3 = variable_5 =
Но вот такое написание выдаст сообщение об ошибке:
4variable =
Переменные также не могут быть названы ключевыми словами Arduino. Ключевые слова – это основные функции Arduino, операторы и типы данных. Все, что вы видите на справочной странице Arduino, является ключевым словом. Библиотеки также имеют свои собственные специальные ключевые слова. В среде Arduino IDE ключевые слова легко распознать по выделению текста различными цветами.
Объявление переменных
Создание переменной называется объявлением переменной. Чтобы объявить переменную, сначала запишите тип данных переменной. Например, чтобы объявить переменную типа int
с именем myVariable, мы используем следующую запись:
int myVariable = 12;
Сначала записывается тип переменной int
, за ним следует имя переменной. Затем переменная устанавливается равной числу, переменной или функции. В этом случае переменная устанавливается равной числу двенадцать. Наконец, мы заканчиваем объявление переменной точкой с запятой ;
.
Выполнение математических операций над переменными
Поскольку переменные могут содержать числа, мы можем выполнять математические операции с переменными. Переменные можно добавлять, вычитать, умножать и делить на другие переменные. Кроме того, к переменным могут быть применены более сложные математические функции, такие как тригонометрия и математическое исчисление.
Давайте создадим простой калькулятор, чтобы продемонстрировать, как выполнять математические вычисления с переменными. Приведенный ниже код будет складывать, вычитать, умножать и делить два числа, а затем выводить результаты в последовательный монитор:
int addition; int subtraction; int multiplication; int division; void setup() { Serial.begin(9600); int a = 6; int b = 3; addition = a + b; subtraction = a - b; multiplication = a * b; division = a / b; Serial.print("Сумма = "); Serial.println(addition); Serial.print("Разность = "); Serial.println(subtraction); Serial.print("Перемножение = "); Serial.println(multiplication); Serial.print("Деление = "); Serial.println(division); } void loop() {}
Нам нужны переменные для хранения результатов каждого вычисления, поэтому мы объявляем четыре переменные типа int
, называем их addition (сложение), subtraction (вычитание), multiplication (умножение) и division (деление). Так как мы не знаем, каковы будут результаты этих вычислений, мы просто объявляем эти переменные, не приравнивая их ни к чему.
Мы хотим, чтобы калькулятор запускался только один раз, поэтому код находится в функции setup()
. Мы можем оставить тело функции loop()
пустым. Результаты будут выведены на последовательный монитор, поэтому мы должны инициализировать последовательный порт с помощью Serial.begin(9600);
.
Теперь мы объявляем две переменные int
a и b для хранения чисел, которые будут использоваться в вычислениях.
Глобальные переменные Arduino
Это подводит нас к теме области видимости переменных. Область действия переменной определяет, где она может быть использована в программе. Существует два типа области видимости переменных – глобальная и локальная.
Глобальные переменные можно использовать в любом месте программы – в разделе loop()
, разделе setup()
и в любой другой функции. Обычно они объявляются в верхней части программы, как и наши переменные сложения, вычитания, умножения и деления.
Локальные переменные Arduino
Локальные переменные объявляются внутри функции, и они могут использоваться только внутри этой функции.
В приведенной выше программе мы объявили две локальные переменные типа int
a и b для хранения чисел, вводимых в калькулятор.
Поскольку мы объявили a и b внутри функции setup()
, их можно использовать только внутри функции setup()
.
Использование локальных переменных в других функциях приведет к появлению сообщения об ошибке “‘переменная’ was not declared in this scope” (“‘переменная’ не была объявлена в этой области”).
Мы уже объявили глобальные переменные в верхней части программы для хранения результатов каждого вычисления. Теперь все, что нам нужно сделать, это определить переменные, установив их равными чему-то.
Чтобы определить переменную, напишите имя переменной и установите его равным чему-либо. Нет необходимости снова объявлять тип данных. В этой части программы мы устанавливаем каждую переменную равной соответствующему уравнению для каждой математической операции:
addition = a + b; subtraction = a - b; multiplication = a * b; division = a / b;
Теперь мы можем вывести результаты вычислений на последовательный монитор. Мы делаем это с помощью функций Serial.print()
и Serial.println()
, которые печатают пояснительный текст и значение, сохраненное в переменной.
Например, результат вычисления сложения сохраняется в переменной сложения. Итак, сначала мы выводим текст с надписью “Сумма =“, затем мы выводим значение, сохраненное в переменной сложения:
Serial.print("Сумма = "); Serial.println(addition);
Затем мы проделываем то же самое для переменных вычитания, умножения и деления.
Этот калькулятор является простым примером. Но те же принципы применяются и при использовании более сложных уравнений и функций с переменными на Arduino.
Если у вас есть какие-либо вопросы, оставляйте комментарии ниже!
Документация
Компоненты
- Arduino NANO
- Arduino UNO
- Arduino MEGA