Ligne 1 : |
Ligne 1 : |
| {{Spark-Core-Hacking-NAV}} | | {{Spark-Core-Hacking-NAV}} |
− |
| |
− | {{traduction}}
| |
| | | |
| == Introduction == | | == Introduction == |
| | | |
− | {{bloc-etroit|text=Le but de ce tutoriel est pouvoir détecter la pression d'un bouton poussoir branché sur votre Core et de le rapporter sur Spark Cloud. | + | {{bloc-etroit|text=Le but de ce tutoriel est pouvoir détecter la pression d'un bouton poussoir branché sur votre Core et de le rapporter sur Particle Cloud. |
| | | |
| Cette technique est également valide pour tous les composants utilisant un contact électrique franc comme c'est également le cas pour les relais reed ou les contacts magnétiques. | | Cette technique est également valide pour tous les composants utilisant un contact électrique franc comme c'est également le cas pour les relais reed ou les contacts magnétiques. |
Ligne 28 : |
Ligne 26 : |
| | | |
| === Entrée digitale === | | === Entrée digitale === |
− | Avec votre Spark Core, il est possible de configurer une pin en entrée ou en sortie. | + | Avec votre Particle Core, il est possible de configurer une pin en entrée ou en sortie. |
| | | |
| Lorsqu'elle est configurée en entrée, il est possible de lire l'état haut/bas dans le programme. | | Lorsqu'elle est configurée en entrée, il est possible de lire l'état haut/bas dans le programme. |
Ligne 101 : |
Ligne 99 : |
| // 1) De détecter la pression d'un bouton, relais reed ou autre senseur | | // 1) De détecter la pression d'un bouton, relais reed ou autre senseur |
| // a contact franc (avec déparasitage logiciel). | | // a contact franc (avec déparasitage logiciel). |
− | // 2) Reporte cette information dans une variable "counter" sur Spark Cloud | + | // 2) Reporte cette information dans une variable "counter" sur Particle Cloud |
| // (le nombre de pressions) permettant à un autre logiciel comme | | // (le nombre de pressions) permettant à un autre logiciel comme |
| // un SmartPhone de détecter l'événement. | | // un SmartPhone de détecter l'événement. |
− | // 3) Offrir une fonction "reset" sur Spark Cloud permettant | + | // 3) Offrir une fonction "reset" sur Particle Cloud permettant |
| // a un autre logiciel de remettre le compteur "counter" à zéro? | | // a un autre logiciel de remettre le compteur "counter" à zéro? |
| // | | // |
Ligne 123 : |
Ligne 121 : |
| void setup() | | void setup() |
| { | | { |
− | // Enregistrer la variable compteur sur Spark Cloud | + | // Enregistrer la variable compteur sur Particle Cloud |
| Spark.variable("counter", &counter, INT ); | | Spark.variable("counter", &counter, INT ); |
| | | |
− | // Enregistrer la fonction "reset compteur" sur Spark Cloud | + | // Enregistrer la fonction "reset compteur" sur Particle Cloud |
| Spark.function("reset", resetCounter ); | | Spark.function("reset", resetCounter ); |
| | | |
Ligne 175 : |
Ligne 173 : |
| | | |
| == Faire un appel d'API avec CURL == | | == Faire un appel d'API avec CURL == |
− | Nous allons maintenant tester notre programme... nous allons donc faire des appels d'API sur Spark Cloud. | + | Nous allons maintenant tester notre programme... nous allons donc faire des appels d'API sur Particle Cloud. |
| | | |
| Pour rappel, nous avons deux API dans notre programme: | | Pour rappel, nous avons deux API dans notre programme: |
Ligne 202 : |
Ligne 200 : |
| | | |
| === Réinitialiser le compteur === | | === Réinitialiser le compteur === |
− | Idéalement votre programme utilisant l'API Spark devrait prendre la valeur du compteur... puis surveiller le changement de cette valeur. | + | Idéalement votre programme utilisant l'API Particle devrait prendre la valeur du compteur... puis surveiller le changement de cette valeur. |
| | | |
| Si le compteur augmente... c'est que l'on a pressé le bouton :-) | | Si le compteur augmente... c'est que l'on a pressé le bouton :-) |
Ligne 208 : |
Ligne 206 : |
| Restons pragmatique... cette façon de faire n'est pas forcement confortable. | | Restons pragmatique... cette façon de faire n'est pas forcement confortable. |
| | | |
− | En conséquence, nous avons ajouté une fonction '''reset''' sur Spark Cloud pour réinitialiser le compteur (ps: j'ai volontairement laissé le paramètre "params", même s'il est vide). | + | En conséquence, nous avons ajouté une fonction '''reset''' sur Particle Cloud pour réinitialiser le compteur (ps: j'ai volontairement laissé le paramètre "params", même s'il est vide). |
| | | |
| <nowiki>curl https://api.spark.io/v1/devices/0123456789abcdef/reset -d access_token=123412341234 -d params=</nowiki> | | <nowiki>curl https://api.spark.io/v1/devices/0123456789abcdef/reset -d access_token=123412341234 -d params=</nowiki> |
Ligne 222 : |
Ligne 220 : |
| }</nowiki> | | }</nowiki> |
| | | |
− | La valeur 1 est retournée par l'exécution de la fonction sur le Spark... | + | La valeur 1 est retournée par l'exécution de la fonction sur le Particle... mais le compteur sera bien à zéro! |
| | | |
| {{Spark-Core-Hacking-TRAILER}} | | {{Spark-Core-Hacking-TRAILER}} |