Программируем Arduino | страница 22



long

4

–2 147 483 648…+ 2 147 483 647

Требуется только для представления очень больших чисел

unsigned long

4

0…4 294 967 295

См. описание типа unsigned int

float

4

–3,4028235E+38…+3,4028235E+38

Используется для представления вещественных чисел

double

4

Как для типа float

Этот тип должен был бы занимать 8 байт и иметь более широкий диапазон и более высокую точность по сравнению с типом float. Но в Arduino тип double является полным аналогом типа float


Команды Arduino

В библиотеке Arduino доступно большое число команд. В табл. 1.2 перечислены наиболее часто используемые из них вместе с примерами.


Таблица 1.2. Функции из библиотеки Arduino

Команда

Пример

Описание

Цифровой ввод/вывод

pinMode

pinMode(8, OUTPUT);

Переводит контакт 8 в режим работы цифрового выхода. Поддерживаются также режимы INPUT и INPUT_PULLUP

digitalWrite

digitalWrite(8, HIGH);

Устанавливает высокий уровень напряжения на контакте 8. Чтобы установить низкий уровень напряжения, используйте константу LOW вместо HIGH

digitalRead

int i;

i = digitalRead(8);

Присваивает переменной i значение HIGH или LOW в зависимости от уровня напряжения на указанном контакте (в данном случае — на контакте 8)

pulseIn

i = pulseIn(8, HIGH);

Возвращает продолжительность в микросекундах следующего импульса с напряжением HIGH на контакте 8

tone

tone(8, 440, 1000);

Генерирует на контакте 8 серию импульсов с частотой 440 Гц продолжительностью 1000 мс

noTone

noTone();

Прерывает любые серии импульсов, запущенные вызовом tone

Аналоговый ввод/вывод

analogRead

int r;

r = analogRead(0);

Присваивает переменной r значение в диапазоне от 0 до 1023. Значение 0 соответствует напряжению 0 В на контакте 0, а значение 1023 — напряжению 5 В (или 3,3 В, если для питания платы используется напряжение 3,3 В)

analogWrite

analogWrite(9, 127);

Выводит широтно-импульсный сигнал. Протяженность положительного импульса может изменяться в диапазоне от 0 до 255, где число 255 соответствует 100%. Этой функции можно передавать номера контактов, обозначенных на плате как PWM (контакты 3, 5, 6, 9, 10 и 11)

Команды для работы со временем

millis

unsigned long l;

l = millis();

Переменные типа long в Arduino хранят 32-битные значения. Значение, возвращаемое функцией millis(), — это число миллисекунд, прошедших с момента последнего сброса платы. Примерно через 50 дней значение обнуляется и счет начинается заново

micros

long l;

l = micros();

Действует подобно millis, но возвращает число микросекунд, прошедших с момента последнего сброса платы. Значение обнуляется примерно через 70 минут