Étape 2: Le Code de l’Arduino
Le code de l’Arduino pour pfodUnoIRTempMenus.ino est inclus comme un des exemples dans la bibliothèque de pfodIRTemp.zip . Ainsi que la bibliothèque de pfodIRTemp, vous devrez télécharger et installer la bibliothèque pfodParser.
L’image montre comment le code d’analyseur de commande est simple. Chaque commande que l’Android pfodApp envoie à le pfodDevice de l’Arduino est une seule lettre. Le parser.parse(in) retourne 0, jusqu'à la réception d’un message complet pfod, par exemple {s} lors de la fermeture } est reçu les retours de parser le premier octet de la commande, dans ce cas "le code agit alors sur cette commande. Voir la pfod spécification pour des détails et des exemples de messages disponibles.
La plupart des commandes utilisées dans ce instructable n’ont pas d’arguments. Toutefois, une seule commande, celle qui définit le nombre de lectures à la valeur moyenne retourne un seul argument, l’index de l’élément de l’utilisateur sélectionné.
Lorsque l’utilisateur clique sur « Définir le nombre de lecture de la valeur moyenne », l’Android pfodApp envoie la commande associée à cet élément de menu (le pfodDevice dans un précédent message dit le pfodApp ce que les commandes sont allés avec quel texte de menu). Dans ce cas le pfodApp envoie {n} le pfodApp ne sait pas ce que signifie cette commande ou ce qui va se passer, qu'il attend juste le pfodDevice Arduino répondre. Le code dans votre Uno Voir le "n" commande et envoie le message pour dire le pfodApp pour afficher une liste de sélection unique avec un ensemble particulier de retour de choix (Voir l’écran tourné) a été le message envoyé
{? m 2 ~ définir le nombre d’échantillons à être averaged| Moyenne 2 Readings| Moyenne 4 Readings| Moyenne 8 Readings| Moyenne 16 Readings| Moyenne des 32 lectures}
La ? dire le pfodApp il s’agit d’un écran de sélection unique et le m est la commande qui doit être envoyé en retour avec la sélection des utilisateurs. Le 2 correspond à la sélection actuelle, le troisième point de comptage de 0 et le reste de la commande est les descriptions de texte pour les choix séparés par |
Lorsque l’utilisateur sélectionne un choix et clique sur le bouton envoyer le pfodApp renvoie la commande et l’indice du choix.
Par exemple, le retour peut être {m|4} si l’utilisateur a sélectionné la 5ème fois (l’index commence à 0).
Les lignes de code
} ElseIf (cmd == (octet) suis ') {}
Byte * idxPtr = parser.getFirstArg() ; Parse 1 arg sous forme de nombre
long longResult ;
parser.parseLong (idxPtr, & longResult) ; seulement un arg
extrait l’index de retour avec le suis ' commande. Cet index est ensuite utilisé pour définir le nombre de lecture en moyenne.
Comme vous pouvez le voir il est facile de modifier les menus et les choix présentés aux utilisateurs. Ils sont tous contrôlés par le code de l’Arduino. Aucune modification de la pfodApp code Android est nécessaire.
Pour d’autres projets contrôlés par la même pfodApp, voir www.pfod.com.au