Table of Contents

Introducere

Proiectul meu vrea sa implementeze jocul de snake pe un ecran de nokia 3310 folosing micro-controllerul atmega 16. Regulile jocului:

Hardware Design

Intentionez sa leg uC la un ecran de Nokia 3310 si la 5 butoane, dupa cum se observa in schema de mai jos.

Componente:

Software Design

Intentionam sa folosesc un api de Nokia 3310, care are urmatoarele functii:

 void LCD_init ( void );
 void LCD_clear ( void );
 void LCD_update ( void );
 void LCD_gotoXY ( unsigned char x, unsigned char y );
 void LCD_writeChar ( unsigned char character );
 void LCD_writeChar_megaFont ( unsigned char character );
 void LCD_writeData ( unsigned char data );
 void LCD_writeCommand ( unsigned char command );
 void LCD_writeString_megaFont ( char *string );
 void LCD_writeString_F ( const char *string);
 void LCD_setPixel ( unsigned char x, unsigned char y);
 void LCD_clearPixel ( unsigned char x, unsigned char y);
 void LCD_drawLine ( unsigned char x1, unsigned char y1, unsigned char x2, unsigned char y2 );
 void LCD_drawBorder (void );
 void LCD_drawSplash (void );
 void delay_ms ( int millisec );
 void spi_init(void);

Sarpele in sine este defapt o lista simplu inlantuita:

 typdef struct Sarpe
 {
     char x;
     char y;
     char directie;
     struct Sarpe *next;
 }sarpe;
 X, y reprezinta coordonate, directie reprezinta cum ar trebui mutat sarpele,iar *next este un pointer la urmatoarul bloc al sarpelui.
 Pentru a scuti uC de calcule inutile, la miscarea sarpelui, se va misca doar coada si capul.
 Am folosit char in loc de int pentru a economisi memorie.

Rezultate Obtinute

Din pacate nu am putut ajunge la niste rezultate concrete, din cauza problemelor de hardware

Concluzii

Partea de hardware mi s-a parut extrem de dificila, poate si din cauza faptului ca am reusit sa cumpar 2 lcd-uri de nokia 3310 stricate.

Din aceasta cauza m-am dat batut si nu am mai incercat si cu al 3-lea.

Ar fi fost interesant sa reusesc montez toate componentele pe placuta sa vad cum se comporta snake-ul. Sper ca in urmatoarea luna chiar sa reusesc acest lucru.

Download

Nu am download

Jurnal

Jurnal:

*Am resuit sa cumpar si sa montez toate componentele pentru placuta.

*Am reusit sa lipesc placuta si sa instalez bootloader-ul pe ea.

*M-am dat batut la lipitul ecranului din cauza problemelor tehnice aparute.

Bibliografie/Resurse

http://www.myplace.nu/mp3/nokialcd.htm