아이티 IT aie tee ay ty
[아두이노]digitalRead를 통한 스위치의 신호 읽기 본문
-아니! 이미 늦었다! (요?카게)

하지만 오늘 우리는 스위치를 또 누를 겁니다.
아두이노 제 6부 2화, digitalRead 사용하기
오늘은 지난시간에 말씀드린 두번째 방법을 사용해서 스위치를 제어해 볼 생각 입니다. 지난시간이 생각 안나신다면 여기 로 들어가 보시기 바랍니다.
digitalRead 는 말입니다, 아주 간단합니다. digitalWrite 와 비슷한 개념이자 반대되는 성격을 가진 그런, 명령어인 것 이지요. digitalRead 는 입력값이 두가지가 될 수 있습니다. 바로 HIGH 와 LOW 입니다.
말 그대로 HIGH 는 전기가 들어온다는 말이고, LOW 는 전기가 안 들어온다는 말 입니다. 회로를 보시죠.
여기서, 우리는 스위치를 누를 때 합선이 된다는 원리를 가지고, 5V(+극) 의 전기가 GND(-극) 으로 통할 수 있게되어 전류가 흐를 수 있다는 사실을 알 수 있습니다. 그러면서 자연히 13번 포트에 전기가 들어가게 되고 그러면 digitalRead를 실행했을때 전기가 들어왔으니 HIGH 를 입력값으로 받을 수 있습니다. 그리고 만일 digitalRead의 값으로 HIGH 가 나오면, 12번의 LED를 켤 수도 있죠.
코드를 보면,
void setup() { // put your setup code here, to run once: pinMode(13, INPUT); pinMode(12, OUTPUT); } void loop() { // put your main code here, to run repeatedly: if (digitalRead(13) == HIGH){ digitalWrite(12, HIGH); }else{ digitalWrite(12, LOW); } }
이런 코드가 나오게 됩니다. 한줄 한줄 해석해 보면, setup 메소드에서는 pinmode 메소드 를 사용하여 13번 포트와 12번 포트를
각각 입/출력으로 설정해 두고, loop 메소드 에서는 13번 포트의 digitalRead의 값을 가지고 12번 포트에 전기를 흘려줄지 말지를
if문을 사용하여 결정하고 있습니다. 이게 끝입니다. 간단하죠?
그럼 전 다음시간에 돌아오겠습니다.
'프으로오그으래애미잉' 카테고리의 다른 글
[아두이노] 세븐 세그먼트 디스플레이 다루기 -1(소개) (0) | 2018.06.26 |
---|---|
[아두이노] 잠깐 쉬어가기 (0) | 2018.06.19 |
[아두이노]스위치 사용하기-1 (0) | 2018.06.07 |
[아두이노] 조도센서 이용하기 (0) | 2018.06.06 |
[힘센 칭구]IDE 의 코드 알아보기 (0) | 2018.06.05 |