Irina-Alexandra TICĂ - Pong

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Pentru acest proiect, mi-am propus să implementez jocul Pong .
Pong este un joc ce presupune existența a doi jucatori care trebuie să împiedice mingea să intre în “poarta” proprie.
Fiecărui jucător îi va fi atribuit un cursor cu ajutorul căruia va putea redirecta mingea către jucatorul advers.
Jucătorul îşi va putea mişca acel cursor propriu prin intermediul unui potenţiometru.
Mingea se va mișca cu viteză constantă, iar atunci când se loveste de pereţii terenului de joc va suferi o ciocnire elastică, aceasta schimbându-şi direcţia de deplasare.
Scopul jocului este acela de a te distra alături de un prieten. :-)

Descriere generală

Pentru a realiza acest tip de joc, este nevoie de un afișaj.
Pentru aceasta, am ales un afișaj de tip LCD cu module grafice.
Pe ecran vor aparea doua cursoare, cate unul pentru fiecare jucator și o minge. De asemenea, va aparea și terenul pe care se va desfașura jocul.

Un jucător va putea deplasa cursorul ce-i aparține, prin intermediul unui potențiometru. Fiecare jucator va avea câte un potențiometru amplasat în porțiunea lui de spațiu de joc.

LCD-ul se va afla pe placuța de test, împreună cu cele două potențiometre. Plăcuța de test pe care se află afișajul LCD împreună cu cele două potențiometre, este conectată la placuța ce conține microcontroller-ul prin intermediul porților PORTC și PORTD( GLCD-ul ), dar și la PORTA( cele două potențiometre ).

Schema Bloc

Schema

Hardware Design

Listă de piese:

  • LCD AG-12864AYILY-60H-A.
  • 2 x Potențiometru POT16K1-LIN5K 5k.
  • un conector de tip “mamă” de 2×20 pini.
  • 2 x conector de tip “mamă” de 2×10 pini.
  • fire de legătură.

Conexiune pini:

GLCD

  • GND → GND ( PORTD )
  • VCC → VCC +5V ( PORTD )
  • VO → GND ( PORTC )
  • RS → PD7
  • R/W → PD6
  • E → PD5
  • DB1-8 → PC1-7
  • CS1 → PD4
  • CS2 → PC3
  • RES → PD2


Potențiometre

  • GND → GND ( PORTA )
  • VCC → VCC ( PORTA )
  • PIN1 → PA7
  • PIN2 → PA6

Componentele au fost achiziționate de la magazinele: Comet, Conex, Syscom.

Software Design

  • Mediu de dezvoltare: Programmer's Notepad
  • Compilator: avr-gcc
  • Functiile pentru lucrul cu GLCD-ul au fost preluate de la [1]

Rezultate Obţinute

La final, proiectul meu arată în felul următor:

Concluzii

Proiectul a fost unul distractiv, reusind sa învaț diferite lucruri. Din pacate, nu am reușit să afișez ceva pe LCD. Atunci cand acesta este conectat cu placuța de test (pe care a fost încarcat programul de inițialiare și afișare text), se aprinde timp de o secundă, devine negru, iar apoi se stinge.

Download

*Nefuncțional*


pong.zip

Jurnal

1. Primul drum spre magazinele de pe Str. Maica Domnului (mi-am dorit să fie singura dată când treceam pe acolo), achiziționarea componentelor pentru etapa 1.

2. Participare la Plăcuțiada 2013 ^_^.

3. Lipire componente pe placa de bază. Produsul final:

4. A doua vizită pe Str. Maica Domnului : achiziționare LCD.

5. Achiziționare fire de legatură și conectori “mamă”.

6. Am lipit LCD + potențiometre. Rezultat :

7. Am terminat de lipit, terminarea părții hardware. Începutul părții software.( nu merge, placuța nu este recunoscută de laptop. Inițial placuța a fost recunoscută, dar după aceea nu s-a mai întamplat acest lucru).

8. Am rezolvat problema întâlnită anterior prin rescrierea bootloaderului de pe microcontroller.

9. LCD-ul nu afișază nimic (doar timp de o secunda se face negru). Am regandit conextiunea pinilor LCD-ului cu microcontrollerul, încercând ca pinii pentru date sa fie conectați la PORTC, iar cei de control, la PORTD. Acest lucru nu a rezolvat problema.

Bibliografie/Resurse

pm/prj2013/dtudose/pong.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