Example #1
0
void blinken(char *text)
{
	delay_ms(500);
	lcd_clear(0);
	lcd_drawString(48, 4, 48 + 36, 16, 0, 0, text, 1, 0);
	delay_ms(500);
	lcd_clear(1);
	lcd_drawString(48, 4, 48 + 36, 16, 0, 0, text, 0, 0);
}
Example #2
0
void main(void) {
	short mx, my, tmx, tmy, ignoreBtn;
	char stat[14];
	// TODO initialise variables with the riht value
	//mx = -1;
	//my = -1;
	//ignoreBtn = 0;
	
	lcd_init();
	initIO();
	adc_init();
	
	lcd_clear(0);
	drawField();
	
	for (;;) {
		tmx = (short) (2 - adc_getValue(1) / 255.0 * 2 + 0.5);
		tmy = (short) (2 - adc_getValue(2) / 255.0 * 2 + 0.5);
		if (tmy != my || tmx != mx) {
			drawMarker(mx, my, 0);
			if (fields[mx][my] == 1) {
				placePlayerMark(mx, my, 1);
			}
			drawMarker(mx = tmx, my = tmy, 1);
		}
		if (!BUTTON_RIGHT && !ignoreBtn && !fields[mx][my]) {
			ignoreBtn = 1;
			pushes++;
			placePlayerMark(mx, my, player);
			if (checkStatus(mx, my)) {
				lcd_clear(0);
				sprintf(stat, "Player %u won!", player);
				lcd_drawString(27, 4, 0, 4, 0, 0, &stat[0], 1, 1);
				lcd_flush();
				break;
			}
			if (pushes == 9) {
				lcd_clear(0);
				sprintf(stat, "Undecided!");
				lcd_drawString(32, 4, 0, 4, 0, 0, &stat[0], 1, 1);
				lcd_flush();
				break;
			}
			if (player == 1) {
				player = 2;
			}
			else if (player == 2) {
				player = 1;
			}
		} else if (BUTTON_RIGHT && ignoreBtn) {
			ignoreBtn = 0;
		}
	}
}
Example #3
0
void displayClock(){
	unsigned char bsek, bmin, bhour;
	char buffer[8];

	if(flag){

		if(sek == 0){
			bsek = 59;
			if(min == 0){
				bmin = 59;
				if(hour == 0)
					bhour = 23;
				else
					bhour = hour -1;
			}
			else
				bmin = min -1;
		}
		else{
				bsek = sek -1;
		}

		//lcd_drawCircle(160, 120, 55, COLOR_WHITE);

		//Stundenzeiger
		lcd_degreeLine(160, 120, 90 - bhour*30, 45, COLOR_BLACK);
		lcd_degreeLine(160, 120, 90 - hour*30, 45, COLOR_WHITE);

		//Minutenzeiger
		lcd_degreeLine(160, 120, 90 - bmin*6, 45, COLOR_BLACK);
		lcd_degreeLine(160, 120, 90 - min*6, 45, COLOR_WHITE);

		//Sekundenzeiger
		lcd_degreeLine(160, 120, 90 - bsek*6, 45, COLOR_BLACK);
		lcd_degreeLine(160, 120, 90 - sek*6, 45, COLOR_WHITE);

		flag = 0;

		sprintf(buffer, "%02i:%02i:%02i", hour, min, sek);

		lcd_drawString(128, 178, buffer, FONT8X8, COLOR_WHITE, COLOR_BLACK);
		}

}