Stap 5: Jonge jaren
Nu is het tijd dat u de code bekijkt. Als u wilt om uw eigen karakter te maken, moet u een bytematrix. Je kunt jezelf helpen met deze website, die kunt u teken maken een stuk makkelijker maakt. Klik op vakken en kopiëren van tekst aan de rechterkant wanneer voldaan. Deze byte-matrix wordt het vervolgens verzonden naar LCD via createChar (n, byte-matrix) functie. Tijd om een kijkje nemen op de onderstaande code.
#include <LiquidCrystal.h> byte spaceShip1[8] = { 0b00000, 0b11110, 0b01000, 0b01100, 0b10111, 0b01100, 0b01000, 0b11110 }; LiquidCrystal lcd(7, 6, 5, 4, 3, 2); lcd.createChar(0,spaceShip1);
U moet maken van elk teken dezelfde manier. Als u een kijkje nemen op de eigenlijke code, zal u zien zijn er slechts twee ruimteschip karakters voor zowel X-Wing en TIE fighter. Het verschil tussen hen is dat een één pixel boven de tweede. Afwisseling tussen hen geeft een gevoel van "living" ruimteschip als een post op een dood object.
Ik maakte ook twee verschillende hindernissen - één voor bovenste rij en één voor de onderste. Ik probeerde animeren ze (tegengestelde factie het vaartuig), maar dat bleek niet zo goed als het hele scherm werd verwarrend + ik zou worden overgelaten met slechts 2 karakters voor explosie animatie. Ook torentjes didn't work out te goed zoals ze waren echt onder gedefinieerd met 5 x 8 px resolutie... Rotsen opknoping van het plafond en vanaf de grond porren werkte het beste.
Explosie bestaat uit drie willekeurige bosjes van pixels, elkaar wordt groter dan de laatste.
Als u uw aangepaste teken weergeven wilt, kan je dat je door te bellen naar lcd.write(n) waarbij n het nummer is voorbij als eerste parameter van de functie lcd.createChar(n,byteArray) . In bovenstaande voorbeeld dat zou worden gedaan door te bellen naar lcd.write(0).