Добавить в корзинуПозвонить
Найти в Дзене

Знакомимися с программированием на Arduino!

В этой статье я расскажу о программной части Arduino. При открытии программы Arduino IDE автоматически создаётся новый скетч. Скетч - прошивка для платы Arduino. Имеет расширение .ino и хранятся в папке с тем же названием, что и сам скетч. Если запустить прошивку без папки, то она будет автоматически создана и сам скетч будет в неё перемещён. Arduino программируется на языке Arduino Wiring, который является упрощённым C++ ( наследует от него синтаксис ). При нажатии на кнопку загрузки код компилируется и загружается в плату. Компиляция - процесс перевода исходного кода в машинный ( последовательность 0 и 1 ) Достать прошивку из прошитой платы нельзя. Если вы не знаете, где эта кнопка загрузки и как она выглядит, то почитайте мою статью "Первое подключение Arduino!". Комментарий - блок кода, который игнорируется. Создан для удобства пишущего и читающего. Удобно оставлять заметки, названия и т.д. Комментарии делятся на два типа: Библиотека - текстовый файл с готовыми функциями, написан
Оглавление

В этой статье я расскажу о программной части Arduino.

Скетч

При открытии программы Arduino IDE автоматически создаётся новый скетч.

Скетч - прошивка для платы Arduino. Имеет расширение .ino и хранятся в папке с тем же названием, что и сам скетч.

Если запустить прошивку без папки, то она будет автоматически создана и сам скетч будет в неё перемещён.

Язык программирования

Arduino программируется на языке Arduino Wiring, который является упрощённым C++ ( наследует от него синтаксис ). При нажатии на кнопку загрузки код компилируется и загружается в плату.

Компиляция - процесс перевода исходного кода в машинный ( последовательность 0 и 1 )

Достать прошивку из прошитой платы нельзя.

Если вы не знаете, где эта кнопка загрузки и как она выглядит, то почитайте мою статью "Первое подключение Arduino!".

Структура прошивки

  • Перед началом кода ( желтая рамка ) обычно пишутся комментарии.

Комментарий - блок кода, который игнорируется. Создан для удобства пишущего и читающего. Удобно оставлять заметки, названия и т.д.

Комментарии делятся на два типа:

  1. Однострочный объявляется (синяя полоска) двойным слэшем "//", всё, что пишется после него - комментарий.
  2. Многострочный объявляется (зелёная полоска) символами "/*" в начале и "*/" в конце, всё, что между ними - комментарий.
  • Подключение библиотек ( фиолетовая полоска ) с помощью связки символа "#" и слова "include" ( пишутся слитно ).

Библиотека - текстовый файл с готовыми функциями, написанными под готовый элемент (дисплей, датчик и т.д.), чтобы не писать каждый раз огромные конструкции.

  • Объявление переменных разных типов данных ( коричневая полоска ).
Скетч - пример.
Скетч - пример.

Типы данных

Все типы данных занимают разные объёмы памяти и имеют разные назначения. При правильном использовании типов данных МК будет быстрее и эффективнее справляться с задачами.

Объявление переменной:

" тип данных " " название "; или " тип данных " " название " = " значение ";

Переменная, не имеющая значения, по умолчанию становится 0. Пример: int number; number = 0.

Типы:

  1. boolean - самый маленький тип данных, занимает 1 байт, может быть равен 0 или 1, является логическим типом ( true = 1, false = 0).
  2. char - занимает 1 байт, используется для хранения одного символа в ' ' кавычках, символ хранится в виде числа, согласно таблице символов ASCII.
  3. byte - занимает 1 байт, хранит значение от 0 до 255, используем для хранения небольших положительных чисел.
  4. int - занимает 2 байта, хранит значение от - 32 768 до 32 767.
  5. unsigned int - тоже самое, что и int, но хранит только положительные числа от 0 до 65 535.
  6. word - идентичен предыдущему.
  7. long - занимает 4 байта, хранит от -2 147 483 648 до 2 147 483 647, используется для таймеров и хранения больших чисел.
  8. unsigned long - тоже самое, но хранит только положительные числа от 0 до 4 + миллиарда.
  9. float - занимает 4 байта, хранит числа с плавающей точкой ( десятичные ), занимает от -3,4028235E+38 до 3,4028235E+38. Точность: 6-7 знаков.
  10. double - точнее float, но на Arduino имеет такую же точность, поэтому его обычно не используют.

Особенности float:

  1. Присваиевать только значение с точкой, даже если оно целое (10.0)
  2. Делить только на числа с точкой, даже если они целые (float / 2.0)
  3. При делении целого числа на дробное, чтобы получить дробное, надо писать (float) перед вычислением.

Пример для пт. 3 :

int celoe_chislo = 10;

float drob = (float) celoe_chislo / 2.314;

Операции с числами типа float занимают больше времени, чем с целыми!

Примеры объявления перменных.
Примеры объявления перменных.

Таблица - подсказка со всеми типа данных и их особенностями
Таблица - подсказка со всеми типа данных и их особенностями

Статья написана, опираясь на видеокурс "Заметки Ардуинщика". Ссылка на урок по данным темам https://m.vkvideo.ru/video-97877471_456246119?t=3m4s

Успехов!

#arduino #начинающим #электроника #AlexGiver