Доброго дня, друзі! Вы великі молодці, що зацікавились уроками Arduino!
Структура програми в Arduino IDE може змінюватись програмістом в залежності від задач і конкретних рішень, але основний її незмінний мінімальний скелет як на цьому прикладі обов'язково складається з двох функцій setup и loop. Без них програма не буде компілюватись.
void setup() {
Serial.begin(9600);
Serial.println("loop");
}
void loop() {
delay(1000);
Serial.println("loop");
}
Функція – це фрагмент програмного кода, що має унікальну назву і обмежений фігурними дужками, до якого можна звернутися з іншого місця програми.
Setup означає налаштування. Пряме назначення цієї функції складається в тому, щоб програмісти в ній задавали першопочаткові параметри функціоналу контроллера і програмних об'єктів, що використовуються в інших частинах програми.
Слово loop означає цикл, що повторюється – зациклювання виконання набору виразів, що знаходяться в цій функції. ЇЇ назначення в тому, щоб хранити вирази основного циклу програми контроллера.
Для розуміння розбіжностей між цими функціями, розглянемо блок-схему мінімальної програми Arduino.

int led_pin = 13;
void setup() {
Serial.begin(9600);
pinMode(led_pin, OUTPUT);
Serial.println("setup");
}
void loop() {
digitalWrite(led_pin, HIGH);
delay(1000);
digitalWrite(led_pin, LOW);
delay(1000);
Serial.println("loop");
}
#include “LiquidCrystal.h”
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
lcd.begin(16, 2);
}
void loop() {
lcd.print("Hello, world!");
delay(1000);
}
#include "LiquidCrystal.h"
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
lcd.begin(16, 2);
}
void loop() {
myfunc();
delay(1000);
}
void myfunc(){
lcd.print("Hello, world!");
}
/*
Blink
Turns on an LED on for one second, then off for one second, repeatedly.
*/
int led_pin = 13;
// setup function
void setup() {
Serial.begin(9600);
pinMode(led_pin, OUTPUT);
Serial.println("setup");
}
// loop function
void loop() {
digitalWrite(led_pin, HIGH);
delay(1000);
digitalWrite(led_pin, LOW);
delay(1000);
Serial.println("loop");
}
Модуль блока питания 12В 250мА
Зручний модуль живлення з 220В AC в 12В постійного струму. Розроблений для встановлення на друковану..
149.59грн.
Адаптер для радіо модуля NRF24L01
Модуль, що полегшує підключення радіо приймача-передавача NRF24L01 до любительських к..
25.66грн.
Торцеві тримачі лінійних напрямляючих 8мм
Тримач циліндричної напрямляючої діаметром 8 ммПідходить для усіх осей 3D-принтера або CNCДіаметр от..
69.12грн.
Шестерня для зубчатого ременю на 16 зубців під вісь 5 мм
Використовується для передачі та редукції обертаючого моменту від двигуна до вісі 5 ммКількість зубц..
37.03грн.
Цифровий датчик температури та вологості DHT22 з підтягуючим резистором
Опитування даних з датчика виконується мікроконтролером за протоколом WIREМаркування AM2302Діапазон ..
133.45грн.