본문 바로가기
프로그래밍/Arduino

6-1장. 아두이노의 기본 명령어

by 길냥이 2024. 4. 7.
728x90

※아두이노 프로그래밍 기초 -  기본 구문
본격적인 아두이노 프로그래밍에 들어가기 전에, 기본 구문 몇 가지부터 알아보도록 합시다.
 
 


⊙변수
변수를 선언한다 : 프로그래밍에서 사용할 수 있는 원하는 변수를 저장할 곳을 만드는 것입니다. 
 
int : 대표적인 숫자형 변수로, 정수형(integer)의 약자입니다. 소수점을 저장할 수 없으며, -2,147,483,648 ~ 2,147,483,647까지의 숫자를 저장할 수 있습니다. 이 범위를 벗어나는 값을 가지면 오버플로 오류가 일어납니다. 
String : 문자, 단어를 저장할 때 사용하는 변수입니다. 
char : 반각 문자(1byte로 표현할 수 있는 문자) 하나를 저장할 때 사용하는 변수입니다. 
boolean : 참, 거짓을 저장하는 변수입니다. 
 


 
⊙예시
다음 사진은 각각 해당하는 변수를 만든 사진입니다.
int 자료형의 a변수, char 자료형의 b 변수, boolean 자료형의 c 변수가 있습니다.
 
특이하게도 문자열 끝에 세미콜론(;) 이 붙어 있는데, 이는 문장의 끝을 의미하는 것으로 컴퓨터는 문장의 시작과 끝을 모르기 때문에 마지막 부분에 세미콜론이 필요합니다. 
 
그리고, 변수 이름 앞에 숫자가 오거나 변수 이름 중 대부분의 특수문자, 명령문이 와서는 안됩니다. 

 

 

 

⊙변수 대입 
수학에서는 등호가 서로 같다를 의미하지만, 프로그래밍에서의 등호는 대입을 의미하는 연산자입니다. 
등호 오른쪽에 있는 것을 등호 왼쪽에 대입하는 것이며,

다음 코드는 a에 100을 대입하겠다는 것입니다. 
a는 1줄에서 int 자료형으로 만들어진 변수이므로, 100이 들어갈 수 있습니다.
 
각 자료형마다 값을 저장하는 방법은 같지만(= 연산자 사용), 중간 처리의 과정은 조금 다릅니다. 

char 자료형으로 만들어진 변수인 b는 작은따옴표(')를 통해 문자를 감싸 줘야 하고.
bool 자료형으로 만들어진 변수인 c는 참일 경우 true, 거짓일 경우 false를 입력해야 합니다. 
 
string 자료형의 경우는 큰따옴표(")를 사용해서 감싸야합니다.
 
그리고 변수를 선언하자마자 값을 넣을 수도 있습니다.

 


 
⊙주석
주석은 프로그래밍을 할 때 적는 메모와도 같은 것으로서, 실제 프로그램에서는 동작하지 않지만 사람의 편의성을 위해 사용되는 것입니다.
 
// 을 통해 1줄을 주석 처리할 수 있고, /* */ 을 통해 * 사이의 모든 내용을 주석 처리할 수 있습니다.

 
 

 

⊙기본 핀 설정

아두이노 보드에는 여러개의 핀이 있고, 이 핀들에게는 각각 설정이 있습니다. 

아두이노 보드에 입력하는 명령어로 이 핀들의 성질을 바꾸고, 여러 역할을 할 수 있습니다.

 

pinMode(a,b);

특정 핀을 출력 또는 입력 모드로 설정하는 명령어입니다.

a - 설정하고자 하는 핀 번호 (혹은 변수값)

b - INPUT, OUTPUT

 

◎digitalwrite(a,b);

디지털 핀의 전압을 0V 또는 5V로 설정하는 명령어입니다.

a - 설정하고자 하는 핀 번호(혹은 변수값)

b - LOW, HIGH

 

◎delay(a); 

a - 설정하고자 하는 시간(밀리초 단위)

※밀리초 : 1/1000초, 즉 1000밀리초 = 1초이다. (1000ms = 1s)


⊙함수

함수란 프로그래밍에서 사용하는 일종의 도구입니다.

내가 만들어 놓는 도구죠.

 

예를 들어 1부터 100까지 저장하고 싶다고 생각합시다, 이때 1부터 100까지 일일이 적는 것은 너무 불편하니 변수 x에 1을 저장하고, 변수 x에 계속 1씩 더해서 출력하면 어떨까요?

 

이럴 때 사용되는 것이 함수입니다. 일일이 필요한 코드를 작성할 필요 없이 함수를 사용하는 것입니다. 

그리고 이런 함수는 한번 만들어두면 계속 사용할 수 있으니 일석이조이죠.

 

- 함수의 구조

함수는 입력, 처리, 출력의 세 부분으로 나누어집니다.

일단 예시 함수를 하나 만들어 봅시다.

사실 만들 필요도 없습니다. 아두이노 IDE를 키자마자 나오는 저것들이 함수입니다.

하늘색으로 표시된 void라는 부분은 리턴 타입인데, 이는 함수의 출력값을 어떤 데이터 타입으로 보낼 것인지 선언하는 부분입니다.

붉은 색으로 칠해진 부분이 함수의 이름을 의미합니다. 

소괄호() 쳐진 부분 안은 매개변수를 의미하는데, 함수에 들어갈 입력을 명시하는 부분입니다. 

그리고 중괄호로 처리된 부분에 동작과 관련된 코드가 삽입되며, return 명령어를 통해서 출력값을 내보낼 수 있습니다.

return 명령어는 함수를 종료하는 명령어로 사용되며, return 명령어를 사용하면 함수가 호출된 곳으로 결과값을 보내지 않습니다. 

필요 없을 경우는 사용하지 않아도 됩니다.

 

그럼 진짜로 함수를 하나 만들어 봅시다. 

 

void test(){
    digitalWrite(LED_BUILTIN, HIGH);
    delay(1000);
    digitalWrite(LED_BUILTIN, LOW);
    delay(1000);
  }

 

 

간단한 함수를 하나 만들어 왔습니다. 

무슨 뜻인지 모르겠는 당신! 가서 실습편 1장을 읽고 오세요!

 

아무튼, 이 함수를 loop 부분 안에 대신 넣어 봅시다.

그러면, 잘 작동하는 것을 확인할 수 있습니다. 

 

이렇게 함수는 여러가지에 활용할 수 있는 중요한 부분이므로, 만약 사용이 어렵다고 느끼신다면 여러 방법을 검색해보는 것을 추천합니다. 

처음 함수를 배우면 이해하기 어려울 수 있지만, 간단한 부분부터 차례로 익혀나간다면 어렵지 않게 학습할 수 있을 것입니다.

 
다음에는 더 어려운 프로그래밍에 대해서 배우도록 합시다!

728x90

'프로그래밍 > Arduino' 카테고리의 다른 글

아두이노 강좌 모음  (0) 2024.04.07
2장. LED 점등하기  (0) 2024.04.07
5-1장. 아두이노 IDE 사용법  (0) 2024.03.31
4-1장. 아두이노 IDE 설치  (0) 2024.03.24
3장. 아두이노의 부품들  (0) 2024.03.24