Modifications

Sauter à la navigation Sauter à la recherche
2 053 octets ajoutés ,  9 janvier 2015 à 08:25
Ligne 100 : Ligne 100 :  
Le [https://github.com/mchobby/SparkCoreTuto/blob/master/PyCall/buttoncounter.py script dans le dépôt] est très abondamment (trop) documenté pour faciliter la prise en main. Je vais donc en proposer une version allégée pour se concentrer sur l'essentiel.
 
Le [https://github.com/mchobby/SparkCoreTuto/blob/master/PyCall/buttoncounter.py script dans le dépôt] est très abondamment (trop) documenté pour faciliter la prise en main. Je vais donc en proposer une version allégée pour se concentrer sur l'essentiel.
   −
  <nowiki></nowiki>
+
  <nowiki>#!/usr/bin/env python
 +
# -*- coding: utf-8 -*-
 +
#
 +
"""buttoncounter.py
 +
 
 +
Version épurée du script. Merci de vous rapporter à la version
 +
GitHub pour les infos et licence applicable.
 +
  https://github.com/mchobby/SparkCoreTuto/blob/master/PyCall/buttoncounter.py
 +
 
 +
Voir tutoriel:
 +
  http://wiki.mchobby.be/index.php?title=Spark-Core-Bouton
 +
   
 +
Ou acheter Spark Core -- et soutenir nos travaux --
 +
  http://shop.mchobby.be/category.php?id_category=54
 +
""" 
 +
 
 +
from sparkapi.sparkapi import SparkApi
 +
from sparkapi.config import Config
 +
 
 +
# Ouvre le fichier sparkapi.ini pour éviter de Hard Coder des données
 +
# sensible comme l'access_token dans les programmes d'exemple publié sur
 +
# le Net.
 +
#
 +
# Créez votre propre fichier sparkapi.ini à partir du fichier
 +
# sparkapi-sample.ini
 +
config = Config()
 +
 
 +
 
 +
def main():
 +
# Execute le programme qui récupère le nombre de pression sur
 +
#  le Spark Core
 +
api = SparkApi( access_token = config.access_token, debug = False )
 +
# ou utiliser directement votre access_token
 +
#api = SparkApi( access_token = '123412341234', debug = False )
 +
 
 +
# Créer un objet Core à partir du core_id
 +
#  le core_id provient du fichier de configuration sparkapi.ini
 +
#  dans la section [CORES]
 +
core = api.get_core( config.cores['core0'] )
 +
# ou utiliser directement votre core_id
 +
#core = api.get_core( '0123456789abcdef' )
 +
 +
# Lire une variable sur le core
 +
# retourne un tuple (connected, valeur)
 +
value = core.value_of( 'counter' )
 +
 +
if( value[0] == False ):
 +
  print( 'le Core n est pas connecté' )
 +
else:
 +
  print( 'compteur = %i' % value[1] )
 +
 +
# Si connecté et 'valeur > 5' ???
 +
if( value[0] and value[1]>5 ):
 +
  print( 'Envoyer ordre "reset" compteur' )
 +
  # Faire un reset du compteur sur le core.
 +
  # En utilisant sa fonction "reset" publier sur Spark Cloud
 +
  result = core.call( 'reset' )
 +
  print( "connecté=%s, résultat=%i" % result )
 +
  if( result[0] == False ):
 +
  print( 'le Core n est pas connecté' )
 +
  else:
 +
  print( 'La fonction à répondu %i' % result[1] )
 +
 +
return 0
 +
 
 +
if __name__ == '__main__':
 +
main()</nowiki>
    
Ce qui produit le résultat suivant:
 
Ce qui produit le résultat suivant:
29 861

modifications

Menu de navigation