Interaktiva LED öl Pong tabell (66 / 87 steg)
Steg 66: Programvara: rutnät Animation: LED resultattavlan
Det första laget att få motståndarlaget ner till noll koppar på bordet kommer att vinna. Varje gång en kopp tas bort från ena sidan av bordet, kommer poäng på den sidan av tabellen att sänkas med en. Betyg på varje sida kan vara mellan tio och noll, med andra ord, varje kopp på bordet är värt en punkt.
Funktionsanrop
LED_Scoreboard (UINT32 pod_sensors)
Sekundär funktion samtal
Update_Sensors()
Pack_Sensor_Data()
Koden läge
LED_Graphics.c
LED_Graphics.h
Koden läge - sekundära funktioner
IR_Sensors.c
IR_Sensors.h
Genomförandet
Detta är en allmän animation som måste placeras inuti den huvudsakliga delen av programmet. Detta aktiverar funktionen för att uppdatera animeringssekvenser varje gång programmet loopar igenom de viktigaste rutin. Tillsammans med denna funktion måste vi också köra Update_Sensors() och få det returnerade värdet för Pack_Sensor_Data() för att hålla resultattavlan uppdatera poäng på varje sida av bordet. Det returnerade värdet för Pack_Sensor_Data() är ett 32-bitars heltal och skickas till denna funktion. Denna funktion sedan tolkar packade data och bestämmer poängen för öl pong spelet.
Kombinerade exempel
Uppdatera de analoga IR sensor värdena
Update_Sensors();
Avgöra om några föremål upptäcks och packa data i "sensor_bits"
sensor_bits = Pack_Sensor_Data();
Passera packade sensordata in animeringen och Visa resultattavlan
LED_Scoreboard(sensor_bits);