Arduino-데이터 유형
C의 데이터 유형은 다양한 유형의 변수 또는 함수를 선언하는 데 사용되는 광범위한 시스템을 나타냅니다. 변수 유형은 저장소에서 차지하는 공간의 양과 저장된 비트 패턴이 해석되는 방식을 결정합니다.
다음 표는 Arduino 프로그래밍 중에 사용할 모든 데이터 유형을 제공합니다.
빈 | 부울 | 숯 | 부호없는 문자 | 바이트 | int | 부호없는 정수 | 워드 |
긴 | 부호없는 long | 짧은 | 흙손 | 더블 | 정렬 | 문자열-문자 배열 | 문자열 객체 |
빈
void 키워드는 함수 선언에서만 사용됩니다. 함수가 호출 된 함수에 정보를 반환하지 않을 것으로 예상됨을 나타냅니다.
예
Void Loop ( ) {
// rest of the code
}
부울
부울은 true 또는 false의 두 값 중 하나를 보유합니다. 각 부울 변수는 1 바이트의 메모리를 차지합니다.
예
boolean val = false ; // declaration of variable with type boolean and initialize it with false
boolean state = true ; // declaration of variable with type boolean and initialize it with true
숯
문자 값을 저장하는 1 바이트 메모리를 차지하는 데이터 유형입니다. 문자 리터럴은 'A'와 같이 작은 따옴표로 작성되며 여러 문자의 경우 문자열은 큰 따옴표 "ABC"를 사용합니다.
그러나 문자는 숫자로 저장됩니다. ASCII 차트 에서 특정 인코딩을 볼 수 있습니다 . 이것은 문자의 ASCII 값이 사용되는 문자에 대해 산술 연산을 수행 할 수 있음을 의미합니다. 예를 들어 'A'+ 1은 대문자 A의 ASCII 값이 65이기 때문에 값 66을 갖습니다.
예
Char chr_a = ‘a’ ;//declaration of variable with type char and initialize it with character a
Char chr_c = 97 ;//declaration of variable with type char and initialize it with character 97
부호없는 문자
Unsigned char1 바이트의 메모리를 차지하는 부호없는 데이터 유형입니다. unsigned char 데이터 유형은 0에서 255까지의 숫자를 인코딩합니다.
예
Unsigned Char chr_y = 121 ; // declaration of variable with type Unsigned char and initialize it with character y
바이트
바이트는 0에서 255까지의 8 비트 부호없는 숫자를 저장합니다.
예
byte m = 25 ;//declaration of variable with type byte and initialize it with 25
int
정수는 숫자 저장을위한 기본 데이터 유형입니다. int는 16 비트 (2 바이트) 값을 저장합니다. 이는 -32,768에서 32,767의 범위를 산출합니다 (최소값 -2 ^ 15 및 최대 값 (2 ^ 15)-1).
그만큼 int크기는 보드마다 다릅니다. 예를 들어 Arduino Due에서int32 비트 (4 바이트) 값을 저장합니다. 이것은 -2,147,483,648에서 2,147,483,647 사이의 범위를 산출합니다 (최소값 -2 ^ 31 및 최대 값 (2 ^ 31)-1).
예
int counter = 32 ;// declaration of variable with type int and initialize it with 32
부호없는 정수
부호없는 정수 (부호없는 정수)는 2 바이트 값을 저장하는 방식에서 int와 동일합니다. 그러나 음수를 저장하는 대신 양수 값만 저장하므로 유용한 범위는 0 ~ 65,535 (2 ^ 16)-1)입니다. Due는 0에서 4,294,967,295 (2 ^ 32-1) 범위의 4 바이트 (32 비트) 값을 저장합니다.
예
Unsigned int counter = 60 ; // declaration of variable with
type unsigned int and initialize it with 60
워드
Uno 및 기타 ATMEGA 기반 보드에서 단어는 16 비트 부호없는 숫자를 저장합니다. Due 및 Zero에서는 32 비트 부호없는 숫자를 저장합니다.
예
word w = 1000 ;//declaration of variable with type word and initialize it with 1000
긴
Long 변수는 숫자 저장을위한 확장 된 크기 변수이며 -2,147,483,648에서 2,147,483,647까지 32 비트 (4 바이트)를 저장합니다.
예
Long velocity = 102346 ;//declaration of variable with type Long and initialize it with 102346
부호없는 긴
부호없는 long 변수는 숫자 저장을위한 확장 크기 변수이며 32 비트 (4 바이트)를 저장합니다. 표준 long과 달리 부호없는 long은 음수를 저장하지 않으며 범위는 0에서 4,294,967,295 (2 ^ 32-1)입니다.
예
Unsigned Long velocity = 101006 ;// declaration of variable with
type Unsigned Long and initialize it with 101006
짧은
short는 16 비트 데이터 유형입니다. 모든 Arduino (ATMega 및 ARM 기반)에서 short는 16 비트 (2 바이트) 값을 저장합니다. 이는 -32,768에서 32,767의 범위를 산출합니다 (최소값 -2 ^ 15 및 최대 값 (2 ^ 15)-1).
예
short val = 13 ;//declaration of variable with type short and initialize it with 13
흙손
부동 소수점 숫자의 데이터 유형은 소수점이있는 숫자입니다. 부동 소수점 숫자는 정수보다 해상도가 더 크기 때문에 아날로그 및 연속 값을 근사화하는 데 자주 사용됩니다.
부동 소수점 숫자는 최대 3.4028235E + 38, 최저 -3.4028235E + 38 일 수 있습니다. 32 비트 (4 바이트) 정보로 저장됩니다.
예
float num = 1.352;//declaration of variable with type float and initialize it with 1.352
더블
Uno 및 기타 ATMEGA 기반 보드에서 배정 밀도 부동 소수점 숫자는 4 바이트를 차지합니다. 즉, double 구현은 정밀도가 향상되지 않고 float와 정확히 동일합니다. Arduino Due에서 double은 8 바이트 (64 비트) 정밀도를 갖습니다.
예
double num = 45.352 ;// declaration of variable with type double and initialize it with 45.352