Hacka en gammal iPod med hjälp av en Android och en Arduino. (10 / 14 steg)
Steg 10: Koden
När du laddar upp till Arduino Uno, måste The Rx och Tx stift D0 och D1 vara tydliga
Koden är lite lång men du bara spara den och sedan öppna den från din IDE och ladda upp.
Det finns gott om kommentarer hela koden som förhoppningsvis kommer att hjälpa för att klargöra några av galenskap.
Att hålla iPod på en hårdvara UART i motsats till SoftwareSerial visat sig ha mycket mer tillförlitliga resultat.
Koden har följande struktur:
- Makrot
- Declare globala variabler
- Uppräkningar
- iPod meddelande hantering av variabler
- iPod-kommandon
- Droid meddelande hantering av variabler
- Droid kommandot adresser
- Timers (osignerade långa)
- Booleska värden
- Mjukvaran följetong initiering
- Funktionen prototyper
- Installera funktionen
- Viktigaste Loop funktion
- Anslutning hantering funktioner
- Droid Data får funktioner
- iPod Data tar emot funktioner
- Volym justera funktion
- Data skickar och tar emot funktioner
- Debug ledde funktioner
Listan över funktionen prototyper är i den ordning de visas i koden och kan användas som en innehållsförteckning.
Om du använder en Arduino som stöder flera seriella portar, kan du avkommentera #define DEBUG konstanterna att det skriva ut felsökningsinformation till seriell bildskärmen.
Det finns två typer av debug utskriftsalternativ DEBUG och DEBUG_DETAIL.
DEBUG skriver ut de grundläggande funktionerna medan DEBUG_DETAIL kommer att skriva ut den överförda informationen också.
Med båda okommenterade, inkommande data kan vara lite överväldigande. Kommentera bort enskilda DEBUG_PRINTs i hela koden kan hjälpa med detta.
När du använder en styrelse med endast en serieport, utsläppande funktionen debugLEDOn() i hela koden ställer in Pin 13 hög och slå på den bifogade ledde när det blir drabbade.