스톱워치 디지털

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
>
새로운 AI자료
생성
다운로드

상세정보

소개글

"스톱워치 디지털"에 대한 내용입니다.

목차

1. 디지털 시계 프로젝트 개요
1.1. 프로젝트 목적
1.2. 프로젝트 구현 기능
1.2.1. 시계 작동
1.2.2. 알람
1.2.3. 타이머
1.2.4. 스톱워치
1.2.5. 세계 시간

2. 하드웨어 및 소프트웨어 구현
2.1. 하드웨어 구성
2.2. 소프트웨어 설계
2.2.1. 시계 작동
2.2.2. 알람
2.2.3. 타이머
2.2.4. 스톱워치
2.2.5. 세계 시간

3. 구현 결과
3.1. 시계 작동 테스트
3.2. 알람 기능 테스트
3.3. 타이머 기능 테스트
3.4. 스톱워치 기능 테스트
3.5. 세계 시간 기능 테스트

4. 스톱워치 설계
4.1. 서론
4.2. 기본 설계
4.3. 추가 기능 설계
4.3.1. Lap 기능
4.3.2. 알람 기능
4.4. 설계 시 고려사항

5. 참고 문헌

본문내용

1. 디지털 시계 프로젝트 개요
1.1. 프로젝트 목적

디지털 시계 프로젝트의 목적은 VHDL을 활용하여 다수의 7-segment로 디지털 시계를 구현할 수 있다는 것이다. 본 프로젝트를 통해 학생들은 VHDL 프로그래밍 능력과 다양한 회로 설계 능력을 기를 수 있으며, 키트의 segment 활용 및 클락 신호 처리 능력도 향상시킬 수 있다. 또한 통합적인 이해력을 기르고 복잡한 구조를 해석하고 설계할 수 있는 능력을 기를 수 있다.


1.2. 프로젝트 구현 기능
1.2.1. 시계 작동

시계 작동은 디지털 시계 프로젝트의 핵심 기능이다. 시계 작동에서는 현재 시각과 날짜를 나타내는 기본 모드와 시간과 날짜를 조정할 수 있는 설정 모드로 구성된다.

기본 모드에서는 현재 시각과 날짜를 계속해서 표시한다. 년, 월, 일, 요일, 시, 분, 초 등의 값을 실시간으로 갱신하여 디스플레이에 출력한다. 사용자가 아무 버튼을 누르지 않아도 시간이 자동으로 증가하면서 현재 시각과 날짜가 정확히 나타나도록 구현되어 있다.

설정 모드에서는 버튼을 이용해 시, 분, 초와 년, 월, 일, 요일을 직접 조정할 수 있다. 설정 모드로 전환하면 해당 항목이 깜박이며, 이때 버튼을 눌러 값을 증감시킬 수 있다. 예를 들어 시 설정 모드일 때 버튼을 누르면 시간이 1씩 증가하고, 분/초 설정 모드에서는 분과 초가 각각 1씩 증가한다. 날짜 설정 모드에서도 년, 월, 일, 요일이 순서대로 조정된다.

이처럼 시계 작동 기능은 현재 시각과 날짜를 실시간으로 표시하고 사용자가 직접 설정할 수 있도록 구현되어 있다. 이를 통해 디지털 시계의 기본적인 기능을 수행할 수 있게 된다.


1.2.2. 알람

알람은 사용자가 설정한 시각과 현재 시간이 일치하면 소리가 나는 기능이다. 알람 모드(mode=2)에서는 시간 설정이 가능하며, 설정된 시간이 되면 삐 소리가 울린다. 알람 소리가 울리면 사용자가 아무 버튼을 누르면 소리가 멈추게 된다.

알람 작동을 위한 코드를 살펴보면 다음과 같다. 먼저 알람 작동을 위한 변수들을 선언한다. 알람 시, 분, 초를 저장할 변수를 선언하고, 현재 시, 분, 초와 비교하기 위한 변수도 선언한다.

알람 모드(mode=2)에서는 버튼 스위치를 통해 알람 시간을 설정할 수 있다. 시, 분, 초를 각각 조절할 수 있으며, 이때 버튼 스위치의 one-shot 기능을 활용하여 버튼을 누른 순간에만 값이 변경되도록 한다.

설정된 알람 시간과 현재 시간을 비교하는 코드에서는 XNOR 게이트를 사용한다. XNOR 게이트는 두 입력값이 같으면 1, 다르면 0을 출력하는데, 이를 이용해 설정된 알람 시간과 현재 시간이 일치하는지 확인한다. 모든 자리(시, 분, 초)가 일치하면 LED가 켜지게 된다.

알람 소리 출력 부분에서는 piezo 소자를 활용한다. 알람 시간이 되면 piezo 소자에 신호를 보내 소리가 나게 한다. 사용자가 아무 버튼을 누르면 소리가 멈추도록 구현하였다.

이와 같이 알람 기능은 현재 시간과 설정된 알람 시간을 비교하여 일치하는 경우 소리를 출력하는 기능이다. 사용자가 시, 분, 초를 직접 설정할 수 있으며, 알람이 울리면 아무 버튼을 눌러 알람을 해제할 수 있다.


1.2.3. 타이머

타이머는 일정 시간이 지나면 알람이 울리는 기능이다. 디지털 시계 프로젝트에서 구현된 타이머는 사용자가 직접 시, 분, 초를 설정할 수 있으며, 시간이 다 흐르면 삐 소리가 나서 알려준다.

사용자는 mode=3일 때 버튼 스위치를 통해 타이머의 시간을 조절할 수 있다. 이때 시, 분, 초를 각각 설정할 수 있으며, start 버튼을 누르면 타이머가 작동된다. 시간이 다 흐르면 삐 소리가 나오고 이를 멈추기 위해 아무 버튼이나 누르면 된다.

타이머의 작동을 위해서는 타이머 카운트를 관리하는 부분이 필요하다. 타이머CNT를 관리하여 시간이 다 되면 알람이 울리도록 구현되어 있다. 또한 mode=3일 때 start, stop 버튼이 작동되도록 설정하였다. 타이머의 시, 분, 초 관리 방식은 시계 작동 부분의 SEC, MIN, HOUR 관리와 유사하다.

이처럼 디지털 시계에 탑재된 타이머 기능은 사용자가 원하는 시간을 직접 설정할 수 있고, 시간이 다 되면 알람으로 알려주는 유용한 기능이다. 시간 관리에 도움을 줄 수 있는 중요한 기능이라고 할 수 있다.


1.2.4. 스톱워치

스톱워치는 정확하게 시간을 측정할 수 있고, 측정된 시간을 숫자로 표시해 주어 사용자에게 편리성을 제공하는 기능이다. 아날로그 스톱워치에 비해 디지털 스톱워치는 사용이 편리하고 정확도가 높으며, 현 세대에서 더욱 선호되고 있다.

본 프로젝트에서는 VHDL을 이용하여 7-segment 디스플레이로 구성된 디지털 스톱워치를 구현하였다. 디지털 스톱워치의 핵심적인 기능은 시간 측정, 시작/정지, 리셋이며, 기존에 배웠던 VHDL 문법과 다양한 설계 기술을 통합적으로 활용하여 이를 구현하였다.

스톱워치의 작동 원리는 다음과 같다. 먼저 함수발생기의 CLOCK PULSE와 연결된 게이트를 거쳐 동기식 카운터로 입력된다. JK Flip Flop은 토글 기능으로 작동하여 CLOCK PULSE가 Rising/Falling Edge일 경우 결과값을 토글하여 0과 1을 출력한다. 이 토글 값이 1일 경우 정지, 0일 경우 시작하게 된다. 또한 모든 카운터는 동기식으로 제작되어 10진 카운터의 경우 9에서 0으로 넘어갈 때 Carry 신호를 발생시키고, 이 신호는 다음 자리 카운터의 CLK로 입력된다. 최종적으로 카운터의 값은 7-segment decoder와 연결되어 7-segment display에 출력된다.

이와 같은 디지털 스톱워치 설계를 통해 VHDL 문법 복습, 복잡한 구조 해석 및 설계 능력, 그리고 키트의 세그먼트 활용과 클락 신호 다루기 능력을 기를 수 있었다. 특히 스톱워치의 핵심 기능인 시간 측정, 시작/정지, 리셋 기능을 구현하는 과정에서 다양한 설계 기술을 경험할 수 있었다.LAP 기능 및 알람 기능 설계

스톱워치에는 기본적인 시간 측정, 시작/정지, 리셋 기능 외에도 다양한 추가 기능을 ...


참고 자료

전자전기컴퓨터설계실험2 실험 교안
Alan B. Marcovitz / 디지털 논리설계 ; Introduction to Logic Design 3rd Edition / 최종필 강정원 공역 / 한국맥그로힐(McGraw-Hill Korea) / 2010년 01월 10일
김재호, 김성신, 남일구 공저 / 논리회로 설계 및 실험 / 부산대학교출판문화원 / 2021년 02월 26일
논리회로(EE30396) 강의 자료
제 2장 조합회로 시스템
제 3장 카르노 맵
제 5장 대형 조합회로
제 6장 순차시스템의 해석
제 7장 순차회로 시스템의 설계
Logisim-evolution : Digital Logic Designer and Simulator
https://github.com/logisim-evolution/logisim-evolution.git
Datasheet (7404 Hex Inverter NOT)
https://www.alldatasheet.com/datasheet-pdf/pdf/255269/NXP/74HC02.html
Datasheet (7408 Quad 2 input AND)
https://www.alldatasheet.com/datasheet-pdf/pdf/104081/PHILIPS/74HC08.html
Datasheet (7432 Quad 2 input OR)
https://www.alldatasheet.co.kr/datasheet-pdf/pdf_kor/546569/NXP/74HC32.html
Datasheet (7474 D Flip Flip)
https://www.alldatasheet.co.kr/datasheet-pdf/pdf_kor/15659/PHILIPS/74HC74.html
Datasheet (74107 JK Flip Flop)
https://www.alldatasheet.com/datasheet-pdf/pdf/15526/PHILIPS/74HC107.html
Datasheet (7447 decoder)
https://www.alldatasheet.com/datasheet-pdf/pdf/82663/ETC/7447.html

주의사항

저작권 EasyAI로 생성된 자료입니다.
EasyAI 자료는 참고 자료로 활용하시고, 추가 검증을 권장 드립니다. 결과물 사용에 대한 책임은 사용자에게 있습니다.
AI자료의 경우 별도의 저작권이 없으므로 구매하신 회원님에게도 저작권이 없습니다.
다른 해피캠퍼스 판매 자료와 마찬가지로 개인적 용도로만 이용해 주셔야 하며, 수정 후 재판매 하시는 등의 상업적인 용도로는 활용 불가합니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우