Gravity Maze

Introducere

Descriere generală

Joc ce constă în deplasarea unei bile printr-un labirint, prin folosirea unui accelerometru unor butoane. Jocul va fi implementat pe un LCD de Nokia 3310.

Hardware Design

Schema plăcii de bază și tutorialul după care a fost realizată se găsește aici.

Lista de piese pentru extensie:

  • 5 rezistențe 3k3
  • 5 rezistențe 1k8
  • 1 condensator 10uF
  • 3 diode
  • placă test
  • 4 push-buttons (pentru ele s-au activat rezistențele de pull-up din microcontroler)
  • LCD Nokia 3310, a costat 19RON, cumpărat de aici

Schema extensiei create pentru joc:

Dispunerea pinilor la LCD:

vtoraja_5.jpg

Conexiunile pentru LCD (foarte fine) le-am realizat prin lipirea unor sârme (rămase de la diverse piese) care au fost apoi fixate într-o placă de test.

Un screenshot din simularea in Proteus:

demo_lcd.jpg

Software Design

Mediul de programare folosit este WinAvr.

Pentru LCD, am folosit driverul pentru PCD8445 de aici, adaptat pentru conexiunile cu Atmega16. A mers foarte bine cu Proteus.

Am încercat apoi să folosesc și driverul de pe Quantum Torque. Acesta nu a funcționat în Proteus, dar am înțeles că avea mai multe șanse de a funcționa pe plăcuță. Nu a funcționat.

Labirintul pentru joc este ținut într-o matrice de biți (pentru o linie de 84 pixeli avem 84/8 = 11 elemente pe linie). Sursele, precum si schema Proteus se găsesc aici.

Rezultate Obtinute

Placa de bază și extensia: pm_final.jpg

Programul funcționează în simulator, nu și pe plăcuță. Nu am reușit să detectez de ce LCD-ul nu răspunde la nicio comandă, tensiunea de alimentare este bună, la fel și pe pini.

Concluzii

A fost un proiect interesant, din care chiar am învățat multe lucruri. Cel mai important este că a trebuit să gândim logic și să încercăm să proiectăm ceva care avea măcar șanse să funcționeze.

Download

Jurnal

13 martie - sesiunea de corodat/gaurit/imprimat PCB

22 martie - 27 martie - realizare placă de bază

27 martie - primul test al plăcuței, încăracat bootloader

5 aprilie - 12 aprilie – alegerea temei de proiect

22 mai - am comandat accelerometrul LIS302DL la Robotop

25 mai - încercare de a reprograma plăcuța 1

26 mai - mi s-a spus că accelerometrul nu este disponibil și nu o să ajungă prea curând în stoc, am decis să îl înlocuiesc cu 4 butoane și să complic puțin jocul

28 mai - încercare de a reprograma plăcuța 2

30 mai - am reușit să adaug în Proteus o bibliotecă pentru LCD-ul de Nokia 3310 și să simulez o bilă ce se mișcă pe LCD controlată prin butoane

30 mai - 2 iunie - cumpărare piese

2 iunie - am reprogramat plăcuța cu bootloader-hid și a mers să scriu un program de acasă (după multe deconectări-conectări a fost recunoscută)

3 iunie - finalizare extensie (nefuncțională)

Bibliografie/Resurse

Contact

georgescu.andrada [at] gmail.com

pm/prj2010/mcarjaliu/gravity-maze.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