대부분의 아두이노에서 사용되는 ATmega 계열의 마이크로콘트롤러는 아날로그 입력을 받을 수 있는 A/D변환 핀이 있는데 A0, A1, A2, .. 와 같이 이름이 붙어 있다. 이 핀들은 일반적인 디지털 핀으로도 사용할 수 있다. 따라서 아두이노에서 사용자가 디지털 핀의 수가 부족해서 더 필요하다면 아날로그 핀을 디지털 핀으로 사용할 수 있다, 아래 그림에서 보듯이 아두이노 우노의 경우 A0 부터 A5 까지 6개의 아날로그핀이 있다
[그림 1] 아두이노의 아날로그 핀들
만약 A0핀을 디지털 출력핀으로 사용하고 싶다면 다음과 같이 A0 상수를 이용하여 pinMode()함수를 호출한다.
pinMode(A0, OUTPUT);digitalWrite(A0, HIGH); 혹은 digitalWrite(A0, LOW); |
다른 예로 A1핀을 디지털 입력핀으로 사용하고 싶다면 A1상수를 이용하면 된다. 입력으로 설정할 때 내부 풀업 저항도 연결할 수 있다.
pinMode(A1, INPUT);pinMode(A1, INPUT_PULLUP); |
그리고 digitalRead() 함수를 똑같이 사용할 수 있다.
int ia = digitalRead(A1);
|
이전 포스트에서 설명한 것 처럼 A0핀은 디지털 14번 핀으로 사용되는 것이다, A1은 15번 핀이고 A5는 19번 핀이다.
만약 디지털 핀이 부족하다면 이와 같은 방법으로 아날로그 핀도 디지털 핀과 똑같이 사용할 수 있다.
14, 15, 16, 17, 18, 19 이렇게 써도 됩니다
답글삭제근데 20이라고 쓰면 어떻게 될까요?