George-Octavian CHIRIAC (66984) - LCD Tetris

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul ales consta in implementarea hardware si software a unui joc Tetris. Am ales sa implementez acest proiect deoarece Tetris este unul dintre jocurile mele retro preferate. Scopul acestui proiect este intelegerea comunicatiei dintre un microcontroller ATmega324, un LCD si un buzzer. Cred ca acest proiect este unul util deoarece reprezinta o metoda simpla de relaxare.

Descriere generală

Ecranul de start contine numele jocului si butonul care trebuie apasat pentru a porni. Inceperea efectiva se realizeaza prin apasarea unui buton. La finalul jocului este afisat un scor, incrementat cu 10 puncte pentru fiecare piesa pusa si 100 de puncte pentru fiecare rand eliminat. Scopul este acela de a obtine un punctaj cat mai mare. Jocul se termina atunci cand nu se mai pot pune piese.

Hardware Design

Lista piese :

Componentă Cod producător Cantitate
ATMEGA324PA-PU ATMEGA324PA-PU 1
Soclu Microcontroller LC40 1
USB-B USB B-PCB-R 1
Quartz 16MHz Q16.000 MHz HC-49S 1
Diodă Zener BZX55C3V3 2
LED 3mm roșu CLL-50221 2
Push button TS-06E (TS-3) 6
Rezistență 100R RW25CF 100R 3
Rezistență 470R RW25CF 470R 3
Rezistență 1K5 RW25CF 1K5 1
Rezistență 10K RW25CF 10K 1
Rezistență 1K RW25CF 1K 5
Rezistență 2K RW25CF 2K 5
Condensator 100nF CML 100nF 50V NP0 3
Condensator 15pF CML 15pF 50V NP0 2
Jumper - 1
LCD Nokia 5110 LCD-10168 1
Header Pini HN1X40 5
Regulator tensiune LE33 1
Condensator electrolitic 10uFCML 10uF 50V NP0 2
Fire Mama-Mama - 15
Buzzer pasiv 5V- 1

Schema electrica :

Software Design

Mediu de dezvoltare

  • Programmers Notepad [WinAvr]
  • BootloaderHID

Biblioteci

  • avr/io.h
  • avr/interrupt.h
  • util/delay.h
  • avr/pgmspace.h
  • stdio.h
  • stdlib.h

Surse

  • lcd.h
  • lcd.c
  • main.c

La driverul celor de la Quantum Torque pentru Nokia 5110 (lcd.c, lcd.h) am adaugat functii pentru construirea pieselor de tetris, stergerea lor, verificarea coliziunilor cu alte piese si incadrarea in ecran. Toate aceste functii sunt apelate in main.c.

Rezultate Obţinute

Concluzii

Proiectul a fost unul interesant, realizarea partii hardware fiind mai usoara decat ma asteptam. Am intampinat unele dificultati, dar a fost o experienta din care am avut ce invata.

Download

Bibliografie/Resurse

Resurse Software

Resurse Hardware

pm/prj2017/mandrei/tetrispm.txt · Last modified: 2021/04/14 17:07 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0