안녕하세요 데브구일입니다!
버튼을 사용할때 사용되는 Pull Up과 Pull Down에 대해 이해하고
회로를 알아보는 시간을 가져야 할 것 같다는 생각이 들어서 포스팅 하게되었습니다 !
:D 다음에 적는 글을 차근차근 읽으시면서 이해하시는게 나중에도 좋으실테니 꼭 차근차근 읽어 보시기 바랍니다 !
그리고 작성하면서 http://cafe.naver.com/arduinostory/20898 이 사이트를 참고했습니다 :D
작성자분께서 아주 잘 설명해주셨는데요 !
제가 이해한 내용으로 적어 보았습니다 :D
1. 플로팅 현상 (Floating)
Pull up & Pull down 저항을 설명하기 전에 플로팅 현상을 먼저 설명해드릴게요 !
플로팅 현상은 말 그대로 둥둥 떠다니는 현상인데요
위 그림을 보시면 스위치가 연결이 되었을때는 5v가 나오고 있습니다
그런데 여기서 ! 스위치를 끊어버리면 0v 일까요 ?!
이때는 5v도 0v도 아닌 플로팅 상태라고 합니다 ! (제 3의 상태라고도 한다네요 !)
여러분의 이해를 돕기 위해서 :D
제가 생각한 플로팅 상태는 이렇습니다 :D (혹시 제가 잘 못 이해하고 있다면 댓글로 알려주세요!)
이제 전기가 이동하다가 갑자기 갈 곳이 없어서? 마구 날뛰는 그런 비슷한 현상인 것 같아요 !
그래서 5v나 0v가 아닌 통통 튀는 값이 빠르게 연속적으로 바뀌여서
기계가 정상적인 신호를 받지 못해 비정상적인 행동을 하게 된다고 생각하고 있답니다 :D (하하)
그래서 저 플로팅 현상이 언제 발생하냐하면요
대표적으로 아두이노에서는 스위치가 있어요 !
아두이노로 눌렀을때 LED가 한번 켜지고 땠을때 LED가 꺼지는 프로그램을 업로드하고 !
스위치를 눌렀을때 플로팅 현상이 발생하여 눌렀을때 LED가 켜지긴 하는데 !
스위치를 땠을때 LED가 안꺼지는 현상이 발생하지요 !
그러고 조금 있으면 꺼지기도합니다 !
이러한 현상을 제거 하기위한 방법이 바로 !!
Pull up & Pull down 저항을 이용하는 방법입니다 !!
2. Pull up 저항 (스위치)
Pull up 먼저 설명 드리겠습니다 !!
Pull up의 경우 위 처럼 저항이 위로 올라가 있기 때문에 Pull up 이라는 이름이 붙여졌다네요 :D
위에는 저항이 있고 아래는 스위치 그리고 그 사이에서 아두이노로 입력 신호를 받게 이루어져 있는데요
위 그림처럼 전류가 흐르게 될텐데요 !
전류는 전기적인 특성으로 인해 높은 곳에서 낮은 곳으로 흐르게 됩니다 !
그리고 저항이 높은 곳 보다 낮은 곳으로 더 이동하지요 :D
스위치가 닫혀있는 경우 (Pull UP 스위치 ON)
여기서 5v가 흐르게 될때 스위치가 닫혀 있는 경우에는 아두이노 측에서의 전류가 존재하기 때문에
GND로 흐르게 되고 ! 아두이노에 있는 미세한 전류 또한 GND로 같이 흐르게 됩니다 !
쉽게 생각하시면 배고픈 강아지가 먹이가 있는 곳으로 가는데
GND 측에 있는 먹이와 아두이노에 있는 먹이로 치자면
가는 길 목에 장애물이 많이 있고 없고 차이로 생각하시면됩니다 !
GND측에는 장애물이 없이 아주 편하게 뚫려 있기 때문에 강아지가 좋아라하고
달려가서 먹이를 먹겠지요 :D
스위치가 열려있는 경우 (Pull UP 스위치 OFF)
스위치가 열려 있는 경우에는 5v가 GND로 갈 수 없기때문에
아두이노로 흐르게 됩니다 !
여기서 강아지로 비유하자면 GND측에 먹이가 있긴한데 다리가 끊어져 못가는 상황입니다
하지만 아두이노 측에도 먹이는 있지요 :D
그래서 강아지는 장애물이 있긴하지만 아두이노측으로 이동하겠지요 :D
하하 이해가 되실진 모르겠지만 :D... 참고하시면 좋을 것 같습니당
3. Pull down 저항 (스위치)
Pull down의 경우 Pull up과 반대로 저항이 아래쪽에 위치해 있어요 !
그래서 Pull down 스위치라는 이름을 가지고 있지요 :D
Pull down 스위치의 경우 위 그림처럼 전류가 흐르게 될텐데요 !
스위치가 닫혀있는 경우 (Pull DOWN 스위치 ON)
여기서 5v가 흐르게 될때 스위치가 닫혀 있는 경우
저항이 있어서 아두이노 측으로 더 많은 전류가 흐르게 되어
아두이노에 입력 신호가 흐르게 됩니다 :D
여기서 GND로도 작은 전류가 흐르긴 하기 때문에 작은 화살표를 그려 넣었습니당 :D
여기서도 강아지가 나옵니당 :D
이번에는 GND측과 아두이노측에 둘 다 먹이가 있고 갈 수도 있는 상황인데요
가는 길 목에 GND에는 많은 장애물이 있고 아두이노는 많이 없는 상태인 겁니다 :D
그럼 강아지가 장애물을 조금만 넘고 먹이를 먹을 수 있는 아두이노 측으로 이동하겠지요!
뭐 몇몇 마리는 아두이노 측으로 너무 많은 강아지가 달려가서 GND로 가는 강아지도 있겠네요 :D
스위치가 열려있는 경우 (Pull DOWN 스위치 OFF)
스위치가 열려 있는 경우에는 5v가 공급이 되지 않는 상태인데요 !
이때는 아두이노에서 나오는 미세한 전류가 GND측으로 흐르게 됩니다 :D
여기서 강아지로 비유하자면 GND측에는 먹이가 있고 아두이노에는 없는 상황인거죠 :D
그럼 GND에 장애물이 많긴하지만 그래도 먹이를 먹으러 강아지가 달려 갈겁니다 :D
하하 :D
제가 이해하는데 도움 되시라고 강아지를 비유하면서 적어보았는데요
어떠신지는 잘 모르겠지만 참고들 하셔서 도움 되셨으면 좋겠습니다 :D
그리고 혹시나 이해가 잘 안되셨으면 처음에 말씀드렸던 사이트로 가서 한번 읽어보시면 도움이 되실 것 같네요 :D
그럼 이만 포스팅을 마치도록 하겠습니당 :D
'개발 자료' 카테고리의 다른 글
아스키코드 (ASCII) (0) | 2022.04.03 |
---|