Skip to content

A 5-round typing game using the ATmega128A microcontroller, where players complete random key input patterns within a decreasing time limit.

Notifications You must be signed in to change notification settings

itleews/typing-rush

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 

Repository files navigation

[2024-2] 마이크로프로세서 텀 프로젝트: Typing Rush

📜 프로젝트 개요

Typing Rush는 ATmega128a 마이크로프로세서를 사용하여 구현한 5라운드 타이핑 게임입니다. 사용자는 제한 시간 내에 랜덤으로 생성된 키 입력 패턴을 3번 성공해야 하며, 라운드가 진행될수록 제한 시간이 짧아집니다.


🕹️ 게임 특징

  1. 라운드 진행

    • 총 5개의 라운드로 구성되어 있으며, 각 라운드를 3번 클리어하면 다음 라운드로 진행합니다.
    • 라운드가 진행될수록 제한 시간이 짧아집니다.
  2. 패턴 인식

    • 무작위로 생성된 5개의 키 입력 패턴을 사용자에게 제시합니다.
    • 사용자는 제시된 패턴을 제한 시간 내에 입력해야 합니다.
  3. 성공 및 실패 조건

    • 제한 시간 내에 정확히 3번 입력하면 성공.
    • 시간 초과 또는 잘못된 입력 시 게임 실패(Game Over).
  4. 하드웨어 구성

    • 7-세그먼트 디스플레이: 현재 제한 시간 표시.
    • LCD: 게임 상태(패턴, 성공, 실패 등) 출력.
    • USART 통신: PC와의 입력 신호 처리.

🛠️ 기술 스택

  • 마이크로컨트롤러: ATmega128a
  • 언어: C
  • IDE: CodeVisionAVR
  • 통신: USART (9600bps)
  • 하드웨어 구성:
    • 7-세그먼트 디스플레이
    • 16x2 LCD
    • 외부 인터럽트 버튼(KEY1, KEY2)

🕰️ 제한 시간

라운드 제한 시간(초)
Round 1 15
Round 2 10
Round 3 7
Round 4 5
Round 5 3

📋 실행 방법

  1. ATmega128a와 7-세그먼트 디스플레이, LCD를 연결합니다.
  2. PC와 ATmega128a 간의 USART 통신(9600bps)을 설정합니다.
  3. CodeVisionAVR에서 코드를 컴파일 후 ATmega128a에 업로드합니다.
  4. KEY1 버튼을 눌러 게임을 시작합니다.
  5. LCD 화면에 표시되는 키 입력 패턴을 제한 시간 내에 입력하세요.
  6. KEY2 버튼을 눌러 게임을 리셋할 수 있습니다.

🔧 하드웨어 연결

1. LCD 연결

  • RS: PORTA.0
  • RW: PORTA.1
  • Enable: PORTA.2
  • 데이터 핀: PORTA.4~PORTA.7

2. 7-세그먼트 디스플레이

  • 포트: PORTB 및 PORTD
  • 제어 핀: PORTG

3. 외부 인터럽트 버튼

  • KEY1: INT4
  • KEY2: INT5

About

A 5-round typing game using the ATmega128A microcontroller, where players complete random key input patterns within a decreasing time limit.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages