나무 숲
클럭 신호 Clock signal - 상승 에지rising edge, 하강 에지falling edge 본문
클럭 신호 Clock signal
논리상태 H(high,논리 1)와 L(low,논리 0)이 주기적으로 나타나는 방형파 신호를 말한다.
디지털 회로에서 클럭 신호에 맞추어 신호의 처리를 하는 동기 처리를 위해 사용한다. 클럭은 순차회로의 플립플럽에서 반드시 필요하다.
클럭 신호의 요소:
신호의 크기
주기를 결정하는 주파수
한 주기 동안 상태 H와 L의 시간비인 듀티비
디지털 회로에서 신호가 반영하는 시점은 신호가 상태 변화할 때의 짧은 순간에 이루어 지는 경우가 많다.
그림으로써는 위와 같이 나타냅니다.
1일 때가 high, 0일 때가 low를 의미합니다.
상승 에지 rising edge & 하강 에지 falling edge
상승 에지란, 상태 0에서 1로 변화하는 순간을 나타냅니다.
하강 에지란, 상태 1에서 0으로 변화하는 순간을 나타냅니다.
중요한 것은 순간!!! 이라는 의미입니다.
그림으로 나타내면 아래와 같습니다.
버튼을 한 번 누르는 순간!!!!!!!!!!!!! 을 아주 잘게 쪼갠다면 위와 같이 나타낼 수 있겠죠.
0(버튼 안눌러짐) > (0->1 버튼 누르는 순간) > 1(버튼 누르는중인 상태) > (1->0 버튼에서 손 떼는중인 순간) > 0
상승 에지 하강 에지
레벨 에지란 0 또는 1로 고정되어 있는 순간을 의미합니다.
level edge 보다는 level triggering으로 더 잘 알려져 있는 듯 합니다.
위 그림을 보시면 상승/하강 에지의 상태에서 뭔가를 수행시킨다~는 것을 알 수 있습니다.
헌데 이러한 상승/하강 에지가 왜 중요하느냐!! 하면, 예를 들어 키보드 입력을 한 번 받을 때, 클락 신호가 1일 때 입력받는다~고 가정해봅시다.
그러면 아주 짧은 시간 동안이라 할지라도 1이 연속적으로 나오는데 한 번 눌러도 입력은 다다다닷 될 수 있습니다.
그렇기에 0->1일 때나 1->0일 때와 같이 타이밍을 맞추어 주어야, 버튼을 누르는 순간 또는 버튼에서 손을 떼는 순간 입력이 들어가는 것입니다.
사실 이런 상승/하강 에지에서는 chattering 채터링/bouncing 바운싱 이라고 불리는 현상이 일어납니다.
위 그림은 (1->0) 즉 손가락을 떼는 모습인데요, 아주 짧은 시간동안 저렇게.. 기계적인 진동으로 야기되는 현상이 나타납니다. 1이 두두두둣 여러번 오락가락 하니까 키를 한 번 눌렀다 떼도 해당 문자가 두두두두둣 나오겠죠, 한 번만 나오는 게 아니라. 이것을 매끈하게 해주는 것을 debouncing 디바운싱 이라고 하는데 아두이노 코드 등을 짤 때 사용됩니다.
-
https://programmingelectronics.com/tutorial-19-debouncing-a-button-with-arduino-old-version/
https://ko.wikipedia.org/wiki/%ED%81%B4%EB%9F%AD_%EC%8B%A0%ED%98%B8
http://www.electronics-tutorials.ws/counter/count_3.html
http://letanphuc.net/2015/03/stm32f0-tutorial-3-external-interrupts/
http://www.phatcode.net/res/260/files/html/SystemOrganizationa4.html
http://mistertee-talks-electronics.blogspot.kr/2014/06/fixing-switch-bounce-in-firmware.html
https://www.allaboutcircuits.com/textbook/digital/chpt-4/contact-bounce/
'Career' 카테고리의 다른 글
[C++ STL] vector 튜토리얼 (1) - 생성자 Constructor (0) | 2017.05.09 |
---|---|
데이터 통신과 네트워킹 (0) | 2017.05.07 |
gcc vi편집기 명령어 (0) | 2017.04.20 |
GCC 컴파일 과정 (0) | 2017.04.18 |
프로그래밍 오류의 종류 - 컴파일 에러/런타임 에러/링킹 에러/논리 에러/파스 에러 (1) | 2017.04.15 |