Handheld Pong & inkräktare på billigt (Arduino kompatibel) (9 / 13 steg)
Steg 9: Program styrelsen - LCD, tecken och utlänningar
Skissen är den metoden som vi kommer att läsa ingångarna (två växlar och två analoga potentiometrar) och skapa lämpliga utgången på den LCD uppvisning och/eller ljudmodul. Sketchen skrevs nu något föråldrad Arduino 1.0.3. Det kan köras på nyare versioner men 1.0.3 är fortfarande tillgängliga för nedladdning om du behöver den.
Nyckeln för att visa på LCD-skärmen är en modifierad version av det utmärkta PCD8544_SPI biblioteket av Arthur Liberman (aka "The coolaste" - http://www.alcpu.com). Detta är inställd för att tillåta tecken utöver 127, som definieras som representerar utlänningar, några mindre Teckensnittsnumren och reservdelar skeppet ikoner.
Den modifierade versionen av biblioteket är kopplad till detta steg som en zip-fil. Packa upp och spara den till katalogen bibliotek i Arduino 1.0.3. Starta om Arduino och det ska plockas.
I de modifierade biblioteket representerar tecknen 0x80 till 0x8D sju par av utlänningar med varje främmande att ha två former i på varandra följande tecken. Tecken 0x90 till 0x99 innehålla siffrorna 0 till 9 i en miniatyr teckensnitt, vilket gör att poängen ska visas utan att ta en hel rad av displayen. Detta är samma ASCII-koder som normala siffrorna 0 till 9 men med den översta biten in. Vi använder som i skissen för att underlätta visning nummer. Ikonen reservdelar fartyg definieras också här i 0x9A.
Nokia 5110 LCD-skärmen visar sex rader med tecken, varje tecken som definieras i en 6 x 8 (w x h) pixel grid. Eftersom du behöver definieras ett blanksteg mellan tecken, i praktiken typsnittet som fem byte per tecken, med varje byte som representerar en kolumn för tecknet. Både bibliotek definitionen och LCD själv ta karaktär data i detta format (en byte som motsvarar en informationskolumn 8 pixlar). Konstigt, jag vet.
Jag tryckt bifogade karaktär design täcker och hade barnen färg i lådor att generera två former av varje främmande. Jag definierat ett par själv och låta dem göra 2-3. De lade upp värdena för varje av de färgade rutorna att ge ett tal som representerar varje kolumn i deras främmande design. Detta var sedan valideras genom bifogade Excel-bladet för att kontrollera att numren de hade beräknas representerade utlänningar de hade designat. Vi använder inte den översta raden så att utlänningar inte sammanfoga när visas.
Om du vill ange en ny alien i skissen, öppna filen PCD8544_SPI.h från biblioteksmappen i WordPad eller liknande textredigerare och redigera tecken definitionerna i 0x80 till 0x8D. Spara filen och ladda om Arduino för att genomföra de nya utlänningslagen.