아두이노 4x4 키패드 계산기 - adu-ino 4x4 kipaedeu gyesangi

1.과제목표

- 지금까지 실습한 LCD, 키패드, 부저 기능을 종합하여 다음과 같은 기능을 가진  "남은 여생 날짜수 계산기" 시스템을 구성하시오.

1) 아두이노를 기동시키면 나이를 물어 보고  

2) 사용자는 키패드로 나이를  2자리 숫자로 입력 ( 숫자를 누를때 숫자입력 확인용으로  짧은 비프음을 출력하고, 숫자 아닌 기호를 누를 때는 무시 )

3) 2자리 숫자가 완료되면 입력이 완료되었다는 의미로 멜로디 효과음을 출력하고  100세 까지 남은 날짜수를 계산하여 3초간 표시. 

4) 위작업을 계속 반복

2. 아두이노 연결

3.샘플프로그램

22 line:  입력되는 나이를 저장할 변수
23 line: 계산되는 100세까지 남은 일수를 저장할 변수, int범위인 32,767을 초과할 수 있으니 long type으로 선언해 주어야 한다.
28~35 line: 프르그램 시작할 때 화면에 설명할 내용을 3초간 표시한다
45~51 line : 키패드로 부터 입력된 문자가 숫자이면 비프음을 출력하고 while반복에서 빠져   나온다. 숫자입력이 아니면 계속 입력을 받아들인다   
44~55 line: 2자리 숫자가 완성될 때까지 입력받아 화면에 표시한다. 
58 line: 100세 까지 남은 일수를 계산하여 long type 변수로 저장한다.
59~72 : 멜로디 음과 LCD화면 표시내용을 출력하고 3초간 대기한다.

제품 카테고리

제품 태그

Fmuser 사이트

  • es.fmuser.net
  • it.fmuser.net
  • fr.fmuser.net
  • de.fmuser.net
  • af.fmuser.net -> 아프리칸스어
  • sq.fmuser.net -> 알바니아어
  • ar.fmuser.net -> 아랍어
  • hy.fmuser.net -> 아르메니아어
  • az.fmuser.net -> 아제르바이잔 어
  • eu.fmuser.net -> 바스크
  • be.fmuser.net -> 벨로루시 어
  • bg.fmuser.net -> 불가리아어
  • ca.fmuser.net -> 카탈로니아 어
  • zh-CN.fmuser.net -> 중국어 (간체)
  • zh-TW.fmuser.net -> 중국어 (번체)
  • hr.fmuser.net -> 크로아티아어
  • cs.fmuser.net -> 체코
  • da.fmuser.net -> 덴마크어
  • nl.fmuser.net -> 네덜란드어
  • et.fmuser.net -> 에스토니아어
  • tl.fmuser.net -> 필리피노
  • fi.fmuser.net -> 핀란드어
  • fr.fmuser.net -> 프랑스어
  • gl.fmuser.net -> 갈리시아어
  • ka.fmuser.net -> 조지아 어
  • de.fmuser.net -> 독일어
  • el.fmuser.net -> 그리스
  • ht.fmuser.net -> 아이티 크리올
  • iw.fmuser.net -> 히브리어
  • hi.fmuser.net -> 힌디어
  • hu.fmuser.net 헝가리어
  • is.fmuser.net -> 아이슬란드 어
  • id.fmuser.net -> 인도네시아어
  • ga.fmuser.net -> 아일랜드어
  • it.fmuser.net -> 이탈리아어
  • ja.fmuser.net -> 일본어
  • ko.fmuser.net -> 한국어
  • lv.fmuser.net -> 라트비아어
  • lt.fmuser.net 리투아니아어
  • mk.fmuser.net -> 마케도니아 어
  • ms.fmuser.net -> 말레이어
  • mt.fmuser.net -> 몰타어
  • no.fmuser.net -> 노르웨이어
  • fa.fmuser.net -> 페르시아어
  • pl.fmuser.net -> 폴란드어
  • pt.fmuser.net -> 포르투갈어
  • ro.fmuser.net -> 루마니아어
  • ru.fmuser.net -> 러시아어
  • sr.fmuser.net -> 세르비아어
  • sk.fmuser.net -> 슬로바키아어
  • sl.fmuser.net -> 슬로베니아어
  • es.fmuser.net -> 스페인어
  • sw.fmuser.net -> 스와힐리
  • sv.fmuser.net -> 스웨덴어
  • th.fmuser.net -> 태국
  • tr.fmuser.net -> 터키어
  • uk.fmuser.net -> 우크라이나어
  • ur.fmuser.net -> 우르두어
  • vi.fmuser.net -> 베트남어
  • cy.fmuser.net -> 웨일스 어
  • yi.fmuser.net -> 이디시어

Date:2021/10/18 21:55:31 Hits:

계산기는 복잡한 수학적 계산에 간단한 산술 연산을 수행하는 데 사용되는 장치입니다. 계산기의 부상은 Abacus와 같은 장치에서 현대의 사용에서 신용 카드 크기의 복잡한 전자 솔리드 스테이트 장치에 이르기까지 볼 수 있습니다. 간단한 산술 계산을 수행하는 데 사용할 수 있는 작은 계산기 외에도 계산기는 다음을 수행할 수 있는 복잡한 과학적 전망도 제공합니다. 삼각법, 대수학, 미적분학 등과 같은 다양한 수학 및 통계 연산을 수행합니다. 그러나 그러한 복잡한 공학용 계산기는 비용이 많이 들 수 있습니다. 이 프로젝트에서는 Arduino UNO, 16 x 2 LCD 디스플레이 및 4 x 4 매트릭스 키패드를 사용하여 간단한 산술 계산기를 설계합니다. 배우고 싶은 Arduino 프로젝트의 다음 세트를 선택하십시오 Electronicshub: Arduino 프로젝트»개요 회로 다이어그램구성 요소 구성 요소 설명회로 설계작업 프로세스장점 프로젝트 이미지코드회로도 구성 요소Arduino UNO [여기에서 구매]16 x 2 LCD 디스플레이 [여기에서 구매]4 x 4 매트릭스 키패드 모듈 또는 16 푸시 버튼10 KΩ 전위차계브레드 보드 ( 프로토타입 보드 설명 )Arduino UNO 연결 구성 요소 프로젝트의 마이크로 컨트롤러 부분은 Arduino UNO입니다. LCD 및 매트릭스 키패드를 제어하고 사용자 입력에 따라 필요한 계산을 수행합니다. 16 x 2 LCD 디스플레이: 환영 메시지, 사용자 입력 및 최종적으로 출력을 표시하는 데 사용되는 간단한 영숫자 디스플레이 모듈입니다. 계산.4 x 4 매트릭스 키패드: 키패드는 휴먼 머신 인터페이스의 일부이며 인간의 입력이 필요한 임베디드 시스템에서 정말 중요한 역할을 합니다. 매트릭스 키패드는 일반적으로 계산기, 전화기 등에 사용됩니다. 많은 입력 스위치가 필요한 곳. 4X4 키패드의 구성은 정말 간단합니다. 16개의 행과 XNUMX개의 열을 포함하는 어레이 형태로 배열된 XNUMX개의 버튼 또는 스위치로 구성됩니다. 누름버튼의 한쪽 끝은 한 행에 연결되고 다른 쪽 끝은 한 열에 연결됩니다. 회로 설계 회로의 설계는 이해하기 쉽지만 많은 연결과 전선이 필요하기 때문에 구현하기가 약간 지저분합니다. 여기에서는 회로 설계에 대해 설명합니다. 먼저 LCD 디스플레이를 Arduino UNO에 연결합니다. LCD는 4비트 모드에서 사용되므로 4개의 데이터 연결만 필요합니다. 데이터 핀 D4~D7(핀 11~14)은 Arduino의 디지털 I/O 핀 2~5에 연결됩니다. 그런 다음 LCD의 XNUMX개 제어 핀을 연결해야 합니다. RS, RW 및 E. RS(Pin 4)는 Arduino의 Pin 0에 연결됩니다. E(Pin 6)는 Arduino의 Pin 1에 연결됩니다. RW(핀 5)는 접지에 연결됩니다. 참고: RS 및 E는 일반적으로 직렬 통신과 관련된 Arduino의 핀 0 및 1에 연결됩니다. 장치를 프로그래밍하는 동안 조심해야 하므로 Arduino UNO를 프로그래밍하는 동안 이 두 연결을 분리해야 합니다. 다음 연결은 LCD의 전원 공급과 관련됩니다. 핀 1(VSS)은 접지에 연결되고 핀 2(VDD)는 5V 전원에 연결됩니다. 핀 3(VEE)은 디스플레이의 대비를 조정하기 위해 POT에 연결됩니다. 핀 15와 핀 16은 백라이트 LED용 전원 핀입니다. 5V 및 접지 공급 장치에 연결해야 합니다. 다음 연결은 매트릭스 키패드에 관한 것입니다. 키패드의 4행 핀(행 1~4행)은 Arduino UNO의 핀 13~10에 연결되고 4열 핀(열 1~열 4)은 Arduino UNO의 핀 9~6에 연결됩니다. 계산기는 Arduino UNO 보드와 키패드 매트릭스를 사용하여 이 프로젝트에서 설계되었습니다. 프로젝트의 작업은 여기에 설명되어 있습니다. 프로젝트의 키패드는 4행 4열로 구성되며 구조는 아래 그림과 유사합니다. "Keypad.h"라는 특수 라이브러리는 어떤 키를 찾는 데 사용됩니다. 눌려진다. 이 라이브러리는 별도로 다운로드해야 하며 Arduino IDE에 추가해야 합니다. 키가 결정되면 덧셈, 뺄셈, 곱셈, 나눗셈과 같은 관련 연산을 수행할 수 있습니다. LCD 디스플레이의 선명한 화면 버튼도 포함되어 있습니다. 라이브러리가 대부분의 작업을 수행하지만 키를 결정하는 과정을 이해할 수 있습니다. 회로 설계에서 언급했듯이 키패드의 행은 핀에 연결됩니다. Arduino의 13 – 10번과 키패드의 열은 Arduino의 핀 9 – 6에 연결되어 있습니다. 모든 행 핀은 높게, 모든 열 핀은 낮게 당겨집니다. 이제부터 Arduino는 열 핀이 HIGH가 될 때까지 기다립니다. 키를 누르면 발생합니다. 키를 누르면 스위치가 해당 행과 열 사이의 연결을 닫습니다. 높은 전위에서 낮은 전위로 전류의 흐름으로 인해 열이 높아집니다. 열에서 전위의 이러한 변화는 Arduino가 특정 열에 해당하는 키가 눌렸다는 것을 이해하도록 합니다. 이제 행을 찾을 시간입니다. 한 번에 모든 행에 HIGH 신호를 제공하는 대신 Arduino는 한 번에 한 행에 HIGH를 활성화하고 열에서 감지된 HIGH 신호가 있는지 확인합니다. 해당 열에서 HIGH 신호가 감지되지 않으면 Arduino는 다음 행을 검색합니다. 이 프로세스는 해당 열에서 HIGH 신호가 감지될 때까지 반복됩니다. 일단 해당 열에서 HIGH 신호가 감지되면 행이 식별됩니다. 외부에서 이 키 감지 프로세스는 시간이 오래 걸리는 것처럼 보이지만 실제로 위에서 언급한 모든 프로세스를 완료하는 데 걸리는 시간은 마이크로 초입니다. 그러나 사람이 버튼을 누르는 데 걸리는 평균 시간은 밀리초입니다. 그렇기 때문에 키를 눌렀을 때 키 감지 프로세스가 시작되고 키를 놓기 전에 완료됩니다. 장점 이 프로젝트에서는 Arduino UNO, 매트릭스 키패드 및 LCD를 사용하여 간단한 산술 계산기를 구현합니다. 복잡한 계산을 수행하도록 확장할 수 있지만 이러한 계산을 해결하려면 논리를 신중하게 설계해야 합니다.

메시지를 남겨주세요 

메시지 목록