Navigation:  Bibliotheken > Threads >

Thread Beispiel

Vorherige SeiteZurück zur Kapitel ÜbersichtNächste Seite

// Demoprogramm zum Multithreading

// Das Programm ist nicht entprellt, ein kurzes Tasten führt daher zu

// mehrfacher Ausgabe des Strings

 

void thread1(void)

{

    while(true)  // Endlosschleife

    {

        if(!Port_ReadBit(PORT_SW2)) Msg_WriteText(str2);  // SW2 gedrückt 

    }

}

 

char str1[12],str2[12];

 

void main(void)

{

    str1="Taster 1";

    str2="Taster 2";

 

    Port_DataDirBit(PORT_SW1, PORT_IN);  // Pin auf Eingang

    Port_DataDirBit(PORT_SW2, PORT_IN);  // Pin auf Eingang

    Port_WriteBit(PORT_SW1, 1);  // Pullup setzen    

    Port_WriteBit(PORT_SW1, 1);  // Pullup setzen    

 

    Thread_Start(1,thread1); // Thread 1 starten

 

    while(true)     // Endlosschleife

    {

        if(!Port_ReadBit(PORT_SW1)) Msg_WriteText(str1); // SW1 gedrückt 

    }

}