Typing Rush는 ATmega128a 마이크로프로세서를 사용하여 구현한 5라운드 타이핑 게임입니다. 사용자는 제한 시간 내에 랜덤으로 생성된 키 입력 패턴을 3번 성공해야 하며, 라운드가 진행될수록 제한 시간이 짧아집니다.
-
라운드 진행
- 총 5개의 라운드로 구성되어 있으며, 각 라운드를 3번 클리어하면 다음 라운드로 진행합니다.
- 라운드가 진행될수록 제한 시간이 짧아집니다.
-
패턴 인식
- 무작위로 생성된 5개의 키 입력 패턴을 사용자에게 제시합니다.
- 사용자는 제시된 패턴을 제한 시간 내에 입력해야 합니다.
-
성공 및 실패 조건
- 제한 시간 내에 정확히 3번 입력하면 성공.
- 시간 초과 또는 잘못된 입력 시 게임 실패(Game Over).
-
하드웨어 구성
- 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 |
- ATmega128a와 7-세그먼트 디스플레이, LCD를 연결합니다.
- PC와 ATmega128a 간의 USART 통신(9600bps)을 설정합니다.
- CodeVisionAVR에서 코드를 컴파일 후 ATmega128a에 업로드합니다.
- KEY1 버튼을 눌러 게임을 시작합니다.
- LCD 화면에 표시되는 키 입력 패턴을 제한 시간 내에 입력하세요.
- KEY2 버튼을 눌러 게임을 리셋할 수 있습니다.
- RS: PORTA.0
- RW: PORTA.1
- Enable: PORTA.2
- 데이터 핀: PORTA.4~PORTA.7
- 포트: PORTB 및 PORTD
- 제어 핀: PORTG
- KEY1: INT4
- KEY2: INT5