Arduino IDE - это интегрированная среда разработки (IDE), которая используется для программирования микроконтроллеров Arduino. В Arduino IDE используются различные типы данных, которые определяют, какой тип информации можно хранить и обрабатываеть микроконтроллером.
Типы данных и их вес (размер) в байтах:
- int:
- Описание: Тип данных int (integer) представляет целые числа со знаком.
- Размер: 2 байта (от -32,768 до 32,767).
- unsigned int:
- Описание: Тип данных unsigned int представляет целые числа без знака.
- Размер: 2 байта (от 0 до 65,535).
- long:
- Описание: Тип данных long представляет длинные целые числа со знаком.
- Размер: 4 байта (от -2,147,483,648 до 2,147,483,647).
- unsigned long:
- Описание: Тип данных unsigned long представляет длинные целые числа без знака.
- Размер: 4 байта (от 0 до 4,294,967,295).
- float:
- Описание: Тип данных float представляет числа с плавающей точкой одинарной точности.
- Размер: 4 байта (от -3.4028235E+38 до 3.4028235E+38).
- double:
- Описание: Тип данных double представляет числа с плавающей точкой двойной точности.
- Размер: 8 байт (от -1.7976931348623157E+308 до 1.7976931348623157E+308).
- uint8_t:
- Описание: Тип данных uint8_t представляет беззнаковые целые числа размером 8 бит (1 байт).
- Размер: 1 байт (от 0 до 255).
- int8_t:
- Описание: Тип данных int8_t представляет целые числа со знаком размером 8 бит (1 байт).
- Размер: 1 байт (от -128 до 127).
- uint16_t:
- Описание: Тип данных uint16_t представляет беззнаковые целые числа размером 16 бит (2 байта).
- Размер: 2 байта (от 0 до 65,535).
- int16_t:
- Описание: Тип данных int16_t представляет целые числа со знаком размером 16 бит (2 байта).
- Размер: 2 байта (от -32,768 до 32,767).
- uint32_t:
- Описание: Тип данных uint32_t представляет беззнаковые целые числа размером 32 бита (4 байта).
- Размер: 4 байта (от 0 до 4,294,967,295).
- int32_t:
- Описание: Тип данных int32_t представляет целые числа со знаком размером 32 бита (4 байта).
- Размер: 4 байта (от -2,147,483,648 до 2,147,483,647).
- uint64_t:
- Описание: Тип данных uint64_t представляет беззнаковые целые числа размером 64 бита (8 байт).
- Размер: 8 байт (от 0 до 18,446,744,073,709,551,615).
- int64_t:
- Описание: Тип данных int64_t представляет целые числа со знаком размером 64 бита (8 байт).
- Размер: 8 байт (от -9,223,372,036,854,775,808 до 9,223,372,036,854,775,807).
- boolean:
- Описание: Тип данных boolean представляет логические значения true (истина) или false (ложь).
- Размер: 1 байт (обычно хранит 0 для false и 1 для true, но фактически использует только 1 бит).
- char:
- Описание: Тип данных char представляет одиночные символы или небольшие целые числа (хранит ASCII-код символа).
- Размер: 1 байт (от -128 до 127 или от 0 до 255, в зависимости от использования со знаком или без).
- byte:
- Описание: Тип данных byte представляет беззнаковые целые числа размером 8 бит (1 байт).
- Размер: 1 байт (от 0 до 255).
Пример кода:
/*
Сайт автора https://arduino-tex.ru/
Проекты на Arduino https://portal-pk.ru/page-17/proekty-na-arduino.html
Проекты на ESP https://arduino-tex.ru/menu/10/11/proekty-na-esp8266-esp32.html
Страница урока https://arduino-tex.ru/news/171/osnovnye-ponyatiya-protokola-udp-primer-raboty-udp-s-esp32-i.html
*/
void setup() {
Serial.begin(9600);
int myInt = 12345;
unsigned int myUInt = 65535;
long myLong = 987654321;
unsigned long myULong = 4294967295;
float myFloat = 3.14;
double myDouble = 2.71828;
uint8_t myUint8 = 255;
int8_t myInt8 = -128;
uint16_t myUint16 = 65535;
int16_t myInt16 = -32768;
uint32_t myUint32 = 4294967295;
int32_t myInt32 = -2147483648;
uint64_t myUint64 = 18446744073709551615;
int64_t myInt64 = -9223372036854775808;
boolean myBoolean = true;
char myChar = 'A';
byte myByte = 200;
Serial.println("Size of int: " + String(sizeof(myInt)) + " bytes");
Serial.println("Size of unsigned int: " + String(sizeof(myUInt)) + " bytes");
Serial.println("Size of long: " + String(sizeof(myLong)) + " bytes");
Serial.println("Size of unsigned long: " + String(sizeof(myULong)) + " bytes");
Serial.println("Size of float: " + String(sizeof(myFloat)) + " bytes");
Serial.println("Size of double: " + String(sizeof(myDouble)) + " bytes");
Serial.println("Size of uint8_t: " + String(sizeof(myUint8)) + " bytes");
Serial.println("Size of int8_t: " + String(sizeof(myInt8)) + " bytes");
Serial.println("Size of uint16_t: " + String(sizeof(myUint16)) + " bytes");
Serial.println("Size of int16_t: " + String(sizeof(myInt16)) + " bytes");
Serial.println("Size of uint32_t: " + String(sizeof(myUint32)) + " bytes");
Serial.println("Size of int32_t: " + String(sizeof(myInt32)) + " bytes");
Serial.println("Size of uint64_t: " + String(sizeof(myUint64)) + " bytes");
Serial.println("Size of int64_t: " + String(sizeof(myInt64)) + " bytes");
Serial.println("Size of boolean: " + String(sizeof(myBoolean)) + " bytes");
Serial.println("Size of char: " + String(sizeof(myChar)) + " bytes");
Serial.println("Size of byte: " + String(sizeof(myByte)) + " bytes");
}
void loop() {
// Your code here
}
Типы данных.
Тип данных
|
Вес (размер) в байтах
|
Диапазон значений
|
int
|
2
|
-32,768 до 32,767
|
unsigned int
|
2
|
0 до 65,535
|
long
|
4
|
-2,147,483,648 до 2,147,483,647
|
unsigned long
|
4
|
0 до 4,294,967,295
|
float
|
4
|
-3.4028235E+38 до 3.4028235E+38
|
double
|
8
|
-1.7976931348623157E+308 до 1.7976931348623157E+308
|
uint8_t
|
1
|
0 до 255
|
int8_t
|
1
|
-128 до 127
|
uint16_t
|
2
|
0 до 65,535
|
int16_t
|
2
|
-32,768 до 32,767
|
uint32_t
|
4
|
0 до 4,294,967,295
|
int32_t
|
4
|
-2,147,483,648 до 2,147,483,647
|
uint64_t
|
8
|
0 до 18,446,744,073,709,551,615
|
int64_t
|
8
|
-9,223,372,036,854,775,808 до 9,223,372,036,854,775,807
|
boolean
|
1
|
true (истина) или false (ложь)
|
char
|
1
|
-128 до 127 или 0 до 255
|
byte
|
1
|
0 до 255
|
Примечание:
Размеры типов данных, как указано выше, верны для микроконтроллеров AVR (например, Arduino Uno) и многих других платформ на базе AVR. Если вы используете Arduino на базе других микроконтроллеров (например, ARM) или другой версии Arduino IDE, размеры типов данных могут отличаться.
Заключение:
Используя различные типы данных в Arduino IDE, вы можете эффективно управлять памятью и работать с различными типами информации на микроконтроллере Arduino. Знание размеров типов данных поможет вам избежать ненужных переполнений памяти и эффективно использовать ограниченные ресурсы устройства.
Мы рады объявить о нашем присутствии на Boosty! Arduino-Tex приглашает всех наших друзей и последователей поддержать нас на этой замечательной платформе. Здесь вы найдете эксклюзивный контент, уникальные проекты и возможность стать частью нашей творческой команды. Присоединяйтесь к нам на Boosty и вместе мы сделаем мир Arduino еще удивительнее!
Понравилась статья Типы данных в Arduino IDE и их вес (размер) в байтах? Не забудь поделиться с друзьями в соц. сетях.
А также подписаться на наш канал на YouTube, вступить в группу Вконтакте, в группу на Facebook.
Спасибо за внимание!
Технологии начинаются с простого!
Файлы для скачивания
|
Пример кода.ino | 2 Kb | 464 |
Скачать
Вы можете скачать файл.
|
Комментарии