스크랩

각 복사하기 버튼을 이용하여 블로그나 카페에 HTML 형식으로 붙여넣기 하실 수 있습니다.

소스복사하기

[[[AVR]키패드 입력제어 및 디바운싱 처리하기]]제어하기,CLCD,키패드 문자열입력,사용법,소스,회로도,키매트릭스,ATmega128,디바운싱

다운로드: icon[AVR]키패드 입력제어 및 디바운싱 처리하기.zip


목차
Ⅰ. 목 표

Ⅱ. 개발환경

Ⅲ. 실험

1. 키패드로 CLCD에 문자 입력 받기
- 실험개요
- 부품리스트
- 회로도
- 소스코드
- 실험결과
- 원리 및 동작해석

2. 키패드로 CLCD에 문자열 입력 및 디바운싱 처리하기
- 실험개요
- 부품리스트
- 회로도
- 소스코드
- 실험결과
- 원리 및 동작해석
 
본문내용
Ⅰ. 목 표
이 보고서에서는 AVR MCU ATmega128과 3×4 키패드, CLCD를 이용하여 키패드의 입력을 MCU로 받아 CLCD로 확인하는 실험을 진행한다. 먼저 키패드의 입력값을 한 문자 씩 CLCD로 확인해보고 키패드의 기본적인 동작과 원리를 해석해 보도록 하겠다.
그리고 두번째 실험에서는 키패드로 문자열을 입력받는 실험을 진행한다. 키를 계속 누르고 있을 때 중복입력이 되지 않도록 소프트웨어적인 디바운싱 처리기법을 적용하여 문자열을 입력받을 수 있도록 한다. 그리고 그 원리에 대해서 해석해 볼 수 있도록 하겠다.

<중략>

예를 들어. 사용자가 5번을 눌렀다고 할 때 Row 0 에 ‘L’을 출력하고(1행 선택) Col 0~3 에 ‘L’이 입력되었는지 감지해봐도 1행에는 스위치가 눌린 곳이 없기 때문에 Col 0~3 은 모두 풀업된 ‘H’일 뿐이다.
그 다음 Row 1 에 ‘L’을 출력하고(2행 선택) Col 0~3에 ‘L’이 입력되었는지 감지하면, 5번 스위치가 눌리기 때문에 Col 1 에 ‘L’이 검출되면서 눌려진 키 값을 변수에 저장하고 리턴하게 된다.

<중략>

- 원리 및 동작해석


스위치는 한번 누르면 스위치 내부의 접점이 충격에 의하여 여러 번 진동한다. 때문에 이런 진동에 의하여 접점이 여러 번 붙었다가 떨어지게 되고 입력신호도 그만큼 중복되어 입력되게 된다. 이런 바운싱bouncing은 의도치 않은 키입력을 연속으로 야기시키기 때문에 하드웨어적이나 소프트웨어적으로 디바운싱debouncing을 처리해 주어야 할 필요가 있다.
2024-03-28 20:57:57 211.234.109.229/data/data_scrap.html 최근 수정일: 2019-11-06 15:55:18. 총퀴리수 : 3 총쿼리시간 : 0.00296 [0.00077]/[ DB:report] select count(*) AS CNT from psCart where SessNum='20240328205757851907'; [0.00076]/[ DB:report] SELECT seq FROM psRlist WHERE rpID=758473; [0.00143]/[ DB:report] SELECT * FROM psReport WHERE rpID=758473;