Android pfodApp kontrollerade datalogging Arduino IRTemp mätaren (2 / 2 steg)
Steg 2: Arduino koden
Arduino koden för pfodUnoIRTempMenus.ino är ett av exemplen i pfodIRTemp.zip bibliotek. Förutom pfodIRTemp biblioteket behöver du hämta och installera i pfodParser bibliotek.
Bilden visar hur enkelt kommando tolken koden är. Varje kommando på Android pfodApp skickar till Arduino pfodDevice är en enda bokstav. Parser.parse(in) returnerar 0 tills ett komplett pfod meddelande tas emot, t.ex {s} när sista } är fått parser returnerar den första byten i kommandot, i detta fall "koden sedan agerar på det här kommandot. Se pfod specifikation för detaljer och exempel på tillgängliga meddelanden.
De flesta kommandon som används i detta instructable inte har några argument. Emellertid ett kommando, som anger antalet värden som beräknas går tillbaka ett argument, index för objektet användaren valt.
När användaren klickar på "Ange antalet behandlingen beräknas", Android pfodApp skickar kommandot är associerade med det här menyalternativet (pfodDevice i ett tidigare meddelande berättade pfodApp vilka kommandon gick med vad menyn text). I detta fall skickar pfodApp {n} pfodApp inte vet vad kommandot betyder eller vad som kommer hända härnäst det bara väntar på Arduino pfodDevice att svara. Koden i din Uno se den "n" kommando och skickar tillbaka meddelandet att berätta pfodApp att visa en enda lista med en viss uppsättning val (se skärmdumpen) budskapet var
{? m'2 ~ Ange antal prover för att vara averaged| Genomsnitt 2 Readings| Genomsnitt 4 Readings| Genomsnitt 8 Readings| Genomsnitt 16 Readings| Genomsnittliga 32 avläsningar}
Den? berätta pfodApp detta är en enda urvalsfönstret och m är kommandot som behöver skickas tillbaka med användare urval. 2 är den aktuella markeringen, den tredje artikeln räknar från 0 och resten av kommandot är textbeskrivningar för de val som skiljs åt av |
När användaren väljer ett val och klickar på knappen Skicka pfodApp skickar tillbaka kommandot och index för valet.
Returen kan till exempel vara {m|4} om användaren väljer den 5: e gången (index börjar vid 0).
Kodrader
} else om (cmd == (byte) är ") {
byte * idxPtr = parser.getFirstArg(); tolka 1 arg som ett tal
lång longResult;
parser.parseLong (idxPtr & longResult); endast en arg
extrahera index avkastning med den är "kommandot. Detta index används för att ange antalet behandlingen i genomsnitt.
Som ni kan se det är lätt att ändra menyer och val presenteras för användarna. De är alla kontrolleras av Arduino koden. Inga ändringar i pfodApp Android koden är nödvändiga.
För andra projekt som kontrolleras av den samma pfodApp se www.pfod.com.au