Пример #1
0
// Rozpoczecie gry
void gra(){
	PCD8544_Clear();
	TIM_Cmd(TIM3, DISABLE);
	TIM_Cmd(TIM4, ENABLE);
	setup();
	while(status_gry==0)
	{
	}
	TIM_Cmd(TIM4, DISABLE);

	PCD8544_Clear();
	PCD8544_Refresh();
}
Пример #2
0
void PCD8544_Init(unsigned char contrast) {
	//Initialize IO's
	PCD8544_InitIO();
	//Reset
	PCD8544_Pin(PCD8544_Pin_RST, PCD8544_State_Low);
	PCD8544_Delay(10000);
	PCD8544_Pin(PCD8544_Pin_RST, PCD8544_State_High);

	// Go in extended mode
	PCD8544_Write(PCD8544_COMMAND, PCD8544_FUNCTIONSET | PCD8544_EXTENDEDINSTRUCTION);

	// LCD bias select
	PCD8544_Write(PCD8544_COMMAND, PCD8544_SETBIAS | 0x4);

	// set VOP
	if (contrast > 0x7F) {
		contrast = 0x7F;
	}
	PCD8544_Write(PCD8544_COMMAND, PCD8544_SETVOP | contrast);

	// normal mode
	PCD8544_Write(PCD8544_COMMAND, PCD8544_FUNCTIONSET);

	// Set display to Normal
	PCD8544_Write(PCD8544_COMMAND, PCD8544_DISPLAYCONTROL | PCD8544_DISPLAYNORMAL);

	//Set cursor to home position
	PCD8544_Home();

	//Normal display
	PCD8544_Write(PCD8544_COMMAND, PCD8544_DISPLAYCONTROL | PCD8544_DISPLAYNORMAL);

	//Clear display
	PCD8544_Clear();
}
Пример #3
0
// 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();
}
Пример #4
0
//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();
}
Пример #5
0
int main(void)
{
    SystemInit();

    ////////////////// SPI2 - SD
    fpu_enable();
    delay_init( 168 );
    SPI_SD_Init();
    //////////////////

    RCC_AHB2PeriphClockCmd(RCC_AHB2Periph_RNG, ENABLE);	  //rng
    RNG_Cmd(ENABLE); //switch on

    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE); //button

    InitEXTIButtonPA0();//accept
    InitEXTIButtonPA1();//up
    InitEXTIButtonPA2();//right
    InitEXTIButtonPA3();//down
    InitEXTIButtonPA4();//left

    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE); //timer
    ConfTim2();

    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); //timer

    ConfTim3(350); //init with start_value game period
    SetSnakeSpeed(3);

    PCD8544_Init(0x38); 				//Initialize LCD with 0x38 software contrast
////////////////////////////////////////////

    DrawBitMap(SnakeBitMap);

    PCD8544_Refresh();
    WaitForAcceptButton();
    PCD8544_Clear();

    MainMenu();

    while (1)
	{

	}
}
Пример #6
0
void PCD8544_Initialise(void)
{
	GPIO_ResetBits(GPIOB, GPIO_Pin_11);
	GPIO_ResetBits(GPIOB, GPIO_Pin_12);
	GPIO_ResetBits(GPIOB, GPIO_Pin_13);
	GPIO_SetBits(GPIOB, GPIO_Pin_14);
	GPIO_SetBits(GPIOB, GPIO_Pin_15);
	Delay(12);
	GPIO_SetBits(GPIOB, GPIO_Pin_11);

	PCD8544_Write_Byte(0x21, LCD_Command);
	PCD8544_Write_Byte(0xB7, LCD_Command);
	PCD8544_Write_Byte(0x14, LCD_Command);
	PCD8544_Write_Byte(0x06, LCD_Command);
	PCD8544_Write_Byte(0x20, LCD_Command);
	PCD8544_Clear();
	PCD8544_Write_Byte(0x0c, LCD_Command);
}
Пример #7
0
// 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;
		}
	}
}