Переменные в Arduino IDE разделяются на глобальные и локальные. Глобальные переменные доступны для чтения и записи в любом месте программы, в любой её функции. А к локальным переменным можно обращаться только в той функции, где они объявлены.
Глобальные переменные объявляются в тексте программы вне функций и перед всеми выражениями и функциями, внутри которых к ним планируется обращение.
int pin1 = 13;
int pin2 = pin1 +2;
void setup() {
pinMode(pin1, OUTPUT);
}
void loop() {
digitalWrite(pin1, HIGH);
delay(pin2);
digitalWrite(pin1, LOW);
delay(pin2);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(g);
}
int g;
int pin1 = 13;
void setup() {
int pin1 = 12;
pinMode(pin1, OUTPUT);
}
void loop() {
digitalWrite(pin1, HIGH);
delay(1000);
digitalWrite(pin1, LOW);
delay(1000);
}
for (int j = 0; j < 100; j++) {
//переменная j будет видна только
//внутри данного цикла for
j = j + 5; //нет ошибки
}
j = j + 5; //ошибка
int myfunc1() {
int myvar1;
myvar1 = myvar1 + 1;
return myvar1;
}
int myfunc2() {
static int myvar2;
myvar2 = myvar2 + 1;
return myvar2;
}
int RELAY_PIN = 11;//глобальная
void setup()
{
pinMode(RELAY_PIN, OUTPUT);
pinMode(MOTOR_PIN, OUTPUT);//ошибка
Serial.begin(SER_SPEED);//ошибка
int SER_SPEED = 9600;//локальная
}
int MOTOR_PIN = 3;//глобальная
unsigned long last = millis();//глобальная
void loop()
{
if (millis() - last>SER_SPEED){ //ошибка
digitalWrite(RELAY_PIN,HIGH);
digitalWrite(MOTOR_PIN,HIGH);//нет ошибки
last = millis();
}
}
Электронный термостат на нагрев или охлаждение
ОписаниеПрограммируемый терморегулятор предназначен для контроля температуры в диапазоне от -50 °С д..
178.96грн.
Линейный шаговый двигатель - что это?
Линейный шаговый двигатель Привет, друзья! Мне выпала удачная возможность познакомить вас с, разр..
Arduino 4-20 мА подключение датчика уровня
Бывают такие времена в жизни ардуинщика, когда ему приходится из глубин любительских датчиков подыма..
Модуль термопары К-типа MAX6675 0...+1024°C
Модуль для измерения температуры термопары на основе специализированной микросхемы MAX6675Диапа..
161.59грн.
Терминальный модуль реле для Wemos D1 mini
Модуль для установки Wemos D1 mini с винтовыми клеммниками и одним реле. Имеет выход шины I2C норма..
197.62грн.