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