아두이노에서 사용하는 데이터 타입과 상수
1. 상수
1) 부동 소수점 상수: 코드의 가독성을 위한 표현방식으로 컴파일 시에 값이 변환된다.
2) 정수 상수: 일상적으로 사용되는 숫자. 숫자는 일반적으로 int로 취급하지만 변환자에 의하여 바꿀 수 있다.
① 십진수(10기반): 일반적으로 알고 있는 숫자. 별다른 접두어가 없으면 십진수 형식이다.
② 이진수(2기반): 0과 1로만 이루어진 숫자, B를 접두어로 사용하여 표현한다.
③ 8진수(8기반): 0~7의 숫자로만 구성된 수, 0(숫자 0)을 접두어로 사용하여 표현한다.
④ 16진수(16기반): 0~9의 숫자와 A~F의 문자로 구성된 수, 0x를 접두어로 하여 표현한다.
3) 상수: 아두이노 언어에서 사전에 정의된 표현
① HIGH | LOW : 디지털 핀에서 읽거나 쓸 때 얻거나 정의할 수 있는 두 가지 상태
② INPUT | OUTPUT | INPUT_PULLUP : 디지털 핀의 모드로 각 상태에 따라 전기적 반응이 변화한다.
③ LED_BUILTIN : 보드상의 LED가 연결된 핀의 번호. 일반적으로는 디지털 핀 13번에 연결되어 있다.
④ true | false : 아두이노 언어에서 참과 거짓을 표현하기 위하여 사용되는 두개의 상수
2. 변환
1) byte(): 값을 byte형으로 변환한다.
2) char(): 값을 char형으로 변환한다.
3) float(): 값을 float형으로 변환한다.
4) int(): 값을 int형으로 변환한다.
5) long(): 값을 long형으로 변환한다.
6) word(): 값을 word형으로 변환한다.
3. 데이터 타입
1) String(): String 클래스의 객체를 생성한다.
2) array: 인덱스 숫자를 통해 접근 가능한 변수의 집합체
3) bool: 참 또는 거짓의 두가지 값 중의 하나를 가지는 데이터형
4) boolean: 아두이노에서 정의된 bool의 비표준 별칭으로 bool타입으로 사용하는 것을 추천한다.
5) byte: 8비트의 부호없는 숫자를 저장한다.(0~255)
6) char: 문자 한개의 값을 저장하는 데에 사용하는 데이터형
7) double: 정밀도가 두배인 부동소수점 숫자. 보드에 따라 차지하는 데이터용량 및 정밀도가 다르다.
8) float: 부동소수점 숫자를 위한 데이터형으로 소수점 값을 갖는다.
9) int: 숫자의 저장을 위해 가장 많이 사용하는 데이터형
10) long: 숫자 저장을 위해 확장된 크기의 변수
11) short: 16비트 데이터 타입 -32,768 ~ 32,767 값의 표현 가능
12) size_t: 바이트 단위로 모든 객체의 크기를 나타낼 수 있는 데이터형
13) string: 텍스트 문자열은 String 데이터 유형을 사용하거나 char형의 array로 마지막을 null 처리할 수도 있다.
14) unsigned char: 메모리의 1byte를 차지하는 부호가 없는 데이터형. byte 데이터형과 동일
15) unsigned int: 2byte를 차지하는 int와 동일하지만 음수대신 양수만 저장하여 0~65,536값이 표현 가능하다.
16) unsigned long: 확장된 크기의 변수로 4byte를 차지, 0~4,294,967,295를 표현 가능하다.
17) void: 함수의 선언에서만 사용되며 반환값이 없음을 표시한다.
18) word: 최소 16 bit의 부호없는 수를 저장할 수 있다.
4. 변수 범위와 제한자
1) const: 상수를 나타내는 키워드. 변수를 읽기 전용으로 만든다.
2) scope: 지역, 전역 변수를 구별하는 변수의 접근 범위에 관한 특성
3) static: 함수가 최초 호출될 때 초기화 되어 함수가 호출, 종료되더라도 데이터는 보존, 지속되는 변수
4) volatile: 변수 정성자로 변수의 데이터타입 앞에 사용되어 컴파일러와 연결프로그램의 변수 취급방식을 수정한다.
5. 유틸리티
1) PROGMEM: SRAM대신 플래시 프로그램 메모리에 데이터를 저장한다.
2) sizeof(): 변수타입의 바이트 수 또는 배열이 차지하고 있는 바이트 수를 반환한다.
'3D 프린터 개발 산업기사 실기준비' 카테고리의 다른 글
아두이노 참조(ARDUINO REFERENCE): 구조(STRUCTURE) (0) | 2019.06.23 |
---|---|
아두이노 참조(Arduino Reference): 함수(Functions) (0) | 2019.06.03 |