Тема 2. Мова програмування пристроїв Arduino
Формування компетенцій
ЗК 3, ФК 2, ФК 7, ФК 10, ФК 12.
Оператори: керуючі оператори, синтаксис, арифметичні оператори, оператори порівняння, логічні оператори, вказівники доступу, бітові оператори, складальні оператори; дані: константи, типи даних, перетворення типів, область видимості змінної і специфікатори, допоміжна функція; функції: цифровий ввід/вивід, аналоговий ввід/вивід, тільки для Due, розширений ввід/вивід, час, математичні обчислення, тригонометрія, випадкові числа, біти і байти, зовнішні перериви, перериви; бібліотеки: EEPROM, SD, SPI, SoftwareSerial,wire, допоміжні класи, бібліотеки для Leonardo.
1. Мова програмування пристроїв Arduino
Редактор програм Arduino IDE
1. Головне меню
Меню редактора включає в себе наступні основні елементи: файл, правка, скетч, сервіс і
довідка. Розглянемо докладніше кожен з них.
У пункті Файл можна знайти команди, що відповідають за створення нової програми, читання
старої, збереження її змін, а також команди для завантаження програми на мікроконтролер.
- · Створити - створити нову програму (скетч);
- · Відкрити - відкрити існуючу програму;
- · Папка зі скетчами - відкрити програму із заданої папки;
- · Приклади - відкрити приклад програми;
- · Закрити - закрити поточне вікно.
- · Зберегти - зберегти зміни в раніше збережену програму;
- · Зберегти як - зберегти нову програму, із зазначенням імені;
- · Завантажити - завантажити програму в Arduino;
- · Завантажити за допомогою програматора - завантажити програму за допомогою
програматора;
- · Налаштування друку – налаштування принтера;
- · Друк - вивід на друк коду програми;
- · Налаштування – налаштування редактора;
- · Вихід - вихід з Arduino IDE.
Пункт меню Правка містить команди, пов'язані з редагування текст програми, включаючи
копіювання, вставку, настройку відступів і пошук за ключовим словом.
У розділі Скетч розміщуються команди для контролю за процесом компіляції програми.
- · Перевірити / Компілювати - компілювати програму;
- · Показати папку скетчів - відкрити системну папку з програмами;
- · Додати файл - додати до проекту файл з даними або програмою;
- · Імпортувати бібліотеку - підключити до програми бібліотеку зі списку встановлених.
Пункт меню Сервіс включає в себе допоміжні функції для роботи з самим мікроконтролером.
- · Автоформатування - автоматична розстановка відступів, переносів рядків і т.п .;
- · Архівувати скетч - архівація папки з програмою, і збереження архіву в вказане місце;
- · Виправити - кодування і перезавантажити
- · Монітор порту - відкрити вікно для обміну даними з мікроконтролером;
- · Плата - вибір поточної плати (в даному випадку Arduino Uno);
- · Послідовний порт - вибір порту, до якого підключений;
Нарешті, меню Довідка містить докладний опис всіх функцій самого редактора Arduino IDE,
а також всілякі команди і прийоми роботи з платформою Arduino.
2 . Меню іконок
Перевірити / Компілювати програму
Завантажити програму в Arduino
Створити нову програму
Відкрити існуючу програму
Зберегти програму
Монітор послідовного порту
3. Вкладки
Кожна програма для Arduino може складатися з декількох файлів. Для перемикання між
цими файлами служить система вкладок в редакторі. Там же, можна створити нову вкладку, і
асоціювати з нею файл в папці з проектом.
4. Вікно програми
Безпосередньо, текст програми створюється і редагується в головному вікні редактора. По суті,
вікно редактора являє собою типовий текстовий редактор, з підсвічуванням конструкцій коду.
5. Вікно повідомлень
У самому низу редактора Arduino IDE є невелике вікно, що служить для виведення повідомлень
про проблеми, які виникають в процесі компіляції програми, або під час завантаження
програми в мікроконтролер.
Основи програмування Arduino
Синтаксис
Програмування Arduino здійснюється на мові C ++. Нижче приведені основні конструкції і
умовності мови, необхідні для успішного проходження даного курсу.
1. Кожен вираз закінчується символом; крапка з комою. наприклад:
a = b + c;
2. Тіло функцій і складових операторів (if, else, for, while) відокремлюється фігурними дужками
(Аналогічно BeginEnd в мові Pascal). наприклад:
3. Рядки відокремлюються звичайними подвійними лапками ". Приклад:
println ( "some text");
4. Символи відокремлюються одинарними лапками:
symbol = 'a';
5. Підключення бібліотек здійснюється за допомогою конструкції:
#include <math.h>
6. Комметаріі в програмі починаються з символів // два прямих слеша. Приклад:
// це моя програма
Типи даних
Оголошення змінної в мові c ++ здійснюється за допомогою конструкції виду:
тип_перемінної ім'я_змінної;
приклад:
int x, y; // оголошені дві змінні x і y, які мають цілий тип
1. Цілі числа
byte від 0 до 255
int від 32 768 до 32 767
word від 0 до 65535
long від 2 147 483 648 до 2 147 483 647
2. Дробові числа
float від 3.4028235E + 38 до 3.4028235E + 38
double еквівалетно float в поточній версії Arduino
3. Масиви
Масиви в С ++ задаються конструкцією типу:
тип_елемента імя_массіва [розмір];
Приклад:
int numbers [10]; // задає масив з десяти цілих чисел
4. Рядки і символи
char символ;
Рядки в С ++ є масиви з елементами типу char. приклад:
char my_str [10]; // рядок з десяти символів
5. Інші типи
void порожній тип;
boolean false лібл true (брехня або істина).
Оператори
1. Оператори порівняння
== рівність
! = Неравество
< менше
<= Менше, або одно
> більше
> = Більше, або дорівнює
2. Умови
if (a> 0) {
...
команди, що виконуються в разі істинності умови
}
else {
...
команди, що виконуються в іншому випадку
}
3. Цикли
for (k = 0; k <3; k = k + 1) {
...
команди, що виконуються на кожному кроці циклу
}
У дужках послідовно вказується:
- · початкове значення ітератора k = 0;
- · умова продовження циклу k <3 (поки ітератор менше трьох);
- · дію над ітератором під час кожного кроку k = k + 1 (збільшуємо на одиницю на
кожному кроці).
Функції
тип_функціі імя_функциі (аргументи) {
команди, що виконуються в рамках функції
return результат_функціі;
}
тип_функціі - тип значення. Наприклад, стандартна функція sin має тип значення, що
повертається float.
ім’я_функції - будь-який рядок, що починається з букви, і містить тільки літери і
символи підкреслення.
аргументи - перелік аргументів, які функція використовує для своїх дій.
результат_функціі - пременися або число, що визначає значення, що повертається
функції.
Нижче наведено приклад функції, що підсумовує два цілих числа.
int sum (int a, int b) {
int result;
result = a + b;
return result;
}
Мінімальна програма
Мінімальна програма, яка може запустити на Arduino складається всього з двох
функцій:
void setup () {
}
void loop () {
}
Перша функція setup викликається тільки один раз, після перезапуску Arduino.
Друга- loop, викликається нескінченне число разів під час роботи Arduino.
Шрифти
Розмір шрифта
Колір тексту
Колір тла
Кернінг шрифтів
Видимість картинок
Інтервал між літерами
Висота рядка
Виділити посилання