Типы данных Ардуино

Ардуино типы данных, преобразование данных

Типы переменных в Ардуино ► хранят в себе различные числовые или буквенные значения. Знание типов данных Arduino поможет правильно использовать память платы

Типы данных (переменная) в Ардуино — это ячейка оперативной памяти с именем, хранящая в себе числовое или буквенное значение. С числовыми типами данных (переменными) можно выполнять любые математические операции: умножение, деление, сложение, вычитание, преобразование в другой тип данных и т.д. Переменные записываются в программе в следующем виде: <тип> <имя> = <значение>;

Таблица. Типы данных Ардуино

Тип Занимаемый размер (байт) Минимальное значение Максимальное значение
boolean 1 false true
byte 1 0 255
char 1 -128 127
int, short 2 -32768 32767
unsigned int 2 0 65535
long 4 -2147483648 2147483647
unsigned long 4 0 4294967295
float, double 4 -3.4028235E+38 3.4028235E+38

boolean

Логический тип, может принимать 2 значения — true и false, занимает 1 байт.

byte

Тип для хранения одно байтового целого числа, диапазон значений от 0 до 255.

char

Тип позволяет хранить 1 алфавитно-цифровой символ и занимает 1 байт, диапазон допустимых значений — от -128 до 127. В памяти хранится число, соответствующее символу в таблице ASCII, поэтому можно производить арифметические действия.

int

Пожалуй самый популярный тип для хранения целых чисел. Занимает 2 байта памяти и может хранить числа от -32768 до 32767.

unsigned int

Без знаковое целое число, занимает 2 байта. Диапазон значений — от 0 до 65535.

long

Тип long служит для хранение больших целых чисел. Диапазон значений от -2147483648 до 2147483647, занимает в памяти переменная 4 байта.

unsigned long

Без знаковое целое число расширенного диапазона может хранить значения от 0 до 4294967295, занимает в памяти переменная 4 байта.

float

Тип данных с плавающей запятой. Используется для нецелых расчетов. Диапазон значений от -3.4028235E+38 до 3.4028235E+38, занимает переменная 4 байта.

double

Тип данных не отличается от типа float.

string

Тип данных для хранения текстовых строк. Является массивом символов типа char.

массив

Массив — это набор элементов одного типа с доступом к элементу по индексу.

Константы, директива define

Если значение глобальной или локальной переменной не задано, то присваивается значение 0. Переменные, которые нельзя изменять в программе после объявления — называются константы. Для задания константы — перед типом данных переменной добавляют const. В следующей таблице приведены типы данных Ардуино, которые можно использовать при написании скетчей для микроконтроллера.

В языке программирования Ардуино дополнительно еще существует директива define, которая объявляется в скетче до процедуры void setup. Формат записи директивы следующий: #define <имя> <значение>. Главное отличие директивы от константы в том, что она не занимает памяти в Ардуино. Директива define используется в программе для назначения имен пинов или хранения констант (постоянных величин).

Преобразование типов данных

В Ардуино преобразование переменной — это приведение значение переменной к другому типу. Например, требуется в программе преобразовать тип данных byte в тип данных int. Для этого требуется указать нужный тип переменной в скобках перед преобразуемой переменной — результат вернет переменную с новым типом данных. Приведем пример явного преобразования типа данных (переменных) Ардуино:

byte x = 150;
int y = (int)x;
// в переменную y будет записано значение переменной x, приведенной к типу byte
float x = 15,4;
int y = (int)x;
// в переменную y будет записано значение x, приведенной к целочисленному значению
// переменная будет округлена до 15

Заключение. Знание типов переменных поможет правильно использовать объем памяти в плате Arduino, что поможет работать микроконтроллеру намного быстрее и эффективнее. Использование переменных позволяет не запоминать какое-либо значение, для этого достаточно обратиться к ячейке памяти по заданному имени.

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5,00 out of 5)
Загрузка...

Похожие записи по теме:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *