void draw_score() { char buffor[8]; itoa(score,buffor,9); PCD8544_GotoXY(10,38); PCD8544_Puts("WYNIK: ",PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_Puts(buffor ,PCD8544_Pixel_Set, PCD8544_FontSize_5x7); }
int main (void) { trace_puts (PROJNAME); initIO(); initIRQ(); initDWT(); initSPI(); PCD8544_Init (0x38); char buf[25]; struct time_types tm; uint8_t x, y; PCD8544_GotoXY (0, 0); PCD8544_Puts ("SirVolta's", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_GotoXY (0, PCD8544_GetX_Y(PCD8544_Pos_Y) + PCD8544_CHAR5x7_HEIGHT + 1); PCD8544_Puts ("Library", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_GotoXY (0, PCD8544_GetX_Y(PCD8544_Pos_Y) + (PCD8544_CHAR5x7_HEIGHT * 2) + 1); PCD8544HorizontalLine(PCD8544_GetX_Y(PCD8544_Pos_Y) - (PCD8544_CHAR5x7_HEIGHT / 2)); PCD8544HorizontalLine(PCD8544_GetX_Y(PCD8544_Pos_Y) + (PCD8544_CHAR5x7_HEIGHT + 3)); for (uint8_t i = 10; i > 2; i -= 2) PCD8544_DrawCircle(65, 10, i, PCD8544_Pixel_Set); PCD8544_DrawFilledCircle(65, 10, 2, PCD8544_Pixel_Set); PCD8544_Refresh (); PCD8544_GetXY(&x, &y); while (1) { GPIO_ToggleBits(LEDPORT, LEDPIN); delayMs(1000); tm.seconds = (uint32_t)(uptime_ms / 1000); secondsToTime(&tm); sprintf(buf, "%.2lud%.2luh%.2lum%.2lus\n", tm.days, tm.hours, tm.minutes, tm.seconds); //clear line of text, then print it to display PCD8544_DrawFilledRectangle(x, y, x + PCD8544_WIDTH, y + PCD8544_CHAR5x7_HEIGHT, PCD8544_Pixel_Clear); PCD8544_GotoXY (x, y); PCD8544_Puts (buf, PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_Refresh (); } }
// Wywietlenie rekordu void rekord() { PCD8544_Clear(); PCD8544_Refresh(); char buffor[8]; itoa(the_best,buffor,9); PCD8544_GotoXY(0, 20); PCD8544_Puts("TWOJ REKORD:", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_Puts(buffor ,PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_Refresh(); while(kier!=2) { } kier=0; PCD8544_Clear(); PCD8544_Refresh(); }
//Zmiana ustawieñ void opcje() { PCD8544_Clear(); PCD8544_Refresh(); PCD8544_GotoXY(14, 5); PCD8544_Puts("SNAKE", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_GotoXY(10, 19); PCD8544_Puts("Paulina Kurpisz", PCD8544_Pixel_Set, PCD8544_FontSize_3x5); PCD8544_GotoXY(10, 32); PCD8544_Puts("Michal Suchorzynski", PCD8544_Pixel_Set, PCD8544_FontSize_3x5); PCD8544_Refresh(); while(kier!=2) { } kier=0; PCD8544_Clear(); PCD8544_Refresh(); }
// G³owne menu void menu() { TIM_Cmd(TIM2, ENABLE); while(1) { PCD8544_GotoXY(0,10); PCD8544_Puts(" START", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_GotoXY(0,20); PCD8544_Puts(" REKORD", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_GotoXY(0,30); PCD8544_Puts(" AUTORZY", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_GotoXY(0,40); PCD8544_Puts(" ZAKONCZ", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); // WskaŸnik w menu PCD8544_GotoXY(0,b); PCD8544_Puts("-->", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); PCD8544_Refresh(); // Wskaznik do góry if(kier==3 && b!=10) { PCD8544_GotoXY(0,b); PCD8544_Puts(" ", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); b=b-10; kier=0; } // Wska¿nik w dó³ if(kier==4&& b!=40) { PCD8544_GotoXY(0,b); PCD8544_Puts(" ", PCD8544_Pixel_Set, PCD8544_FontSize_5x7); b=b+10; kier=0; } if(kier==1 && b==10) { gra(); kier=0; } // Rekord if(kier==1 && b==20) { rekord(); kier=0; } // Opcje if(kier==1 && b==30) { PCD8544_Clear(); PCD8544_Refresh(); opcje(); kier=0; } // Wyjscie if(kier==1 && b==40) { PCD8544_Clear(); kier=0; return; } } }