예제 #1
0
// Displays the currently selectable keys on a single row. Row can be set to values
// 1 - 5.
void displayKeyboard(int rowToBeDisplayed)
{
    int i = 0, j = 0;
 
    moveCursorLCD(0,rowToBeDisplayed);
    for(j = 0; j < strlen(KeyBoard.Characters[i]); j++)
    {
        if(KeyBoard.CursorPosition == j)
        {
            writeInvertedCharLCD(KeyBoard.Characters[KeyBoard.ArrayRow][j]);
        }
        else
        {
            writeCharLCD(KeyBoard.Characters[KeyBoard.ArrayRow][j]);
        }
    }
    highlightChar();
}
예제 #2
0
void initMainMenuText()
{
    int i = 0, j = 0;

    for(i = 0; i <= mainMenuChoices; i++)
    {
        moveCursorLCD(0,i);
        for(j = 0; j < strlen(mainMenuOptions[i]); j++)
        {
            if(cursorHighlightMainMenu == i)
            {
                writeInvertedCharLCD(mainMenuOptions[i][j]);
            }
            else
            {
                writeCharLCD(mainMenuOptions[i][j]);
            }
        }
    }
}
예제 #3
0
파일: control.c 프로젝트: grasmanek94/prc22
void loop(void)
{
	static uint8_t ledstate = 1;
	uint16_t tmp = getMicrophonePeak();
	
	clearLCD();
	writeIntegerLengthLCD(tmp, DEC, 4);
	writeCharLCD(':');
	writeIntegerLengthLCD((uint16_t)ledstate, DEC, 4);
	
	if (tmp > 512)
	{
		ledstate <<= 1;
		if (ledstate == 16)
		{
			ledstate = 1;
		}
	}

	setLEDs(ledstate);
	mSleep(100);
}
예제 #4
0
파일: ir.c 프로젝트: kokx/fhict-proftaak4
void ir_receiveBaseStation(void)
{
    uint8_t tijdelijk;
    writeString_P("aap!\n");
    while ((personX == 0xFF) || (personY == 0xFF) || (startX == 0xFF) || (startY == 0xFF)) {
        I2CTWI_transmitByte(I2C_RP6_BASE_ADR, 27);
        tijdelijk = I2CTWI_readByte(I2C_RP6_BASE_ADR);

        writeString_P("ADDR: ");
        writeInteger((int16_t) tijdelijk, DEC);

        I2CTWI_transmitByte(I2C_RP6_BASE_ADR, 28);
        tijdelijk = I2CTWI_readByte(I2C_RP6_BASE_ADR);

        writeString_P(" DATA: ");
        writeInteger((int16_t) tijdelijk, DEC);
        writeString_P("\n");

        mSleep(100);

        // implement device bit 0 - device bit - code

        // Oops! i did it again (van 44 naar 9)
        if (tijdelijk >= 48 && tijdelijk <= 56) {
            startY = tijdelijk - 48;
        } else if (tijdelijk >= 32 && tijdelijk <= 38) {
            startX = tijdelijk - 32;
        } else if (tijdelijk >= 16 && tijdelijk <= 24) {
            personY = tijdelijk - 16;
        } else if (tijdelijk <= 6) {
            personX = tijdelijk;
        }

        // for now, just put it on the screen
        clearLCD();

        setCursorPosLCD(0, 0);
        writeCharLCD('X');

        setCursorPosLCD(0, 2);
        writeIntegerLCD(startX, DEC);

        setCursorPosLCD(0, 10);
        writeCharLCD('Y');

        setCursorPosLCD(0, 12);
        writeIntegerLCD(startY, DEC);


        setCursorPosLCD(1, 0);
        writeCharLCD('X');

        setCursorPosLCD(1, 2);
        writeIntegerLCD(personX, DEC);

        setCursorPosLCD(1, 10);
        writeCharLCD('Y');

        setCursorPosLCD(1, 12);
        writeIntegerLCD(personY, DEC);
    }
}