Содержание:
#include
Директива, позволяющая подключать в проект дополнительные файлы с кодом.
#include <Servo.h> // подключает библиотеку Servo.h
#include "Servo.h" // подключает библиотеку Servo.h
В чём отличие <Servo.h> и "Servo.h"? Когда указываем название "в кавычках", компилятор сначала ищет файл в папке со скетчем, а затем в папке с библиотеками. При использовании <галочек> компилятор ищет файл только в папке с библиотеками#define
Директива, дающая команду препроцессору заменить указанное название на указанное значение. Чаще всего таким образом объявляют константы:
#define MOTOR_PIN 10 // пин мотора 10
#define LED_PIN 3 // пин светодиода 3
После компиляции все встречающиеся в тексте программы слова MOTOR_PIN будут заменены на цифру 10, а LED_PIN - на цифру 3. Такой способ хранения констант не использует оперативную память микроконтроллера. Также define позволяет делать т.н. макро функции. Например Ардуиновская функция sq (квадрат) является макро, который при компиляции превращается в умножение:
#define sq(x) ((x)*(x))
Функция map
map(val, min, max, outMin, outMax)
Перевести диапазон числа val (от min до max) в новый диапазон (от outMin до outMax).
Работает только с целыми числами
val = map(analogRead(0), 0, 1023, 0, 100);
получить с аналогового входа значения 0-100 вместо 0-1023.Работает только с целыми числами