Logo Mon Club Elec

Programmer le pcDuino : Pyduino : périphériques : Tester un code secret saisi à l’aide d’un numpad (clavier numérique )

Le pcDuino est une plateforme de développement open source qui permet aux développeurs de créer des applications et des systèmes embarqués. Avec Pyduino, un langage de programmation Python spécialement conçu pour le pcDuino, les développeurs peuvent facilement contrôler les périphériques connectés à la plateforme. Dans cet article, nous allons voir comment utiliser Pyduino pour tester un code secret saisi à l’aide d’un numpad (clavier numérique). Nous verrons comment connecter le numpad au pcDuino, comment écrire le code Python pour lire les entrées du numpad et comment tester le code secret saisi.

Programmer le pcDuino : Pyduino : périphériques : Tester un code secret saisi à l’aide d’un numpad (clavier numérique )

Programmer le pcDuino : Pyduino : périphériques : Tester un code secret saisi à l’aide d’un numpad (clavier numérique )

Ce que l’on va faire ici

  • Dans ce code, un message invitera à saisir un code : si la chaîne correspond au code pré-enregistré, un message l’indiquera, et dans le cas contraire, un nouvel essai sera possible.
  • Remarquer que l’on utilise ici l’instruction raw_input() qui permet la saisie d’une chaîne à la différence de la fonction input() qui permet la saisie d’une valeur.

Noter que l’utilisation d’un keypad numérique USB (ou numpad) permet de remplacer simplement et avantageusement (ne coûte que quelques euros) un clavier numérique matriciel 4×4 (avec signes d’opération et touche de validation!), même si aucun écran n’est connecté, tant que le programme Pyduino a le focus, ce qui est obligatoirement le cas une fois le programme lancé, tant qu’on n’utilise pas de souris ! De plus, le code de gestion du clavier est très simple, puisqu’il est géré par le système !

Programmer le pcDuino : Pyduino : périphériques : Tester un code secret saisi à l’aide d’un numpad (clavier numérique )

Pré-requis

Schéma fonctionnel

  • Le numpad numérique est utilisé seul ici :
Programmer le pcDuino : Pyduino : périphériques : Tester un code secret saisi à l’aide d’un numpad (clavier numérique )

Matériel nécessaire

Système

  • Le pcDuino
  • Un clavier numérique (numpad) :
Programmer le pcDuino : Pyduino : périphériques : Tester un code secret saisi à l’aide d’un numpad (clavier numérique )

E/S

  • Pas utilisées.

Instructions de montage

  • Simplement connecter le Numpad sur un port USB.

Le montage à réaliser

Programmer le pcDuino : Pyduino : périphériques : Tester un code secret saisi à l’aide d’un numpad (clavier numérique )

Le fichier *.yno

Copier/coller ce code dans l’IDE Pyduino

Ce code est également disponible ici :

Le fichier *.py

Copier/coller ce code dans l’éditeur Geany :

#!/usr/bin/python
# -*- coding: utf-8 -*-

# exemple pyDuino – par X. HINAULT – www.mon-club-elec.fr
# Juillet 2013 – Tous droits réservés – GPLv3
# voir : https://github.com/sensor56/pyDuino

# tester un code secret saisi dans un numpad

#from pyduino import * # importe les fonctions Arduino pour Python
from pyduinoMultimedia import * # importe les fonctions Arduino pour Python

# entete declarative
code=« *123+ »
#— setup —
def setup():
        return  # si vide

# — fin setup —

# — loop —
def loop():

        # try.. except.. permet d’éviter le blocage si erreur de saisie
        try:
                reponse=raw_input(« Veuillez saisir le code : « )
        except: # erreur
                print (« Veuillez recommencer ! »)
                return  # sort de la fonction loop

        print (« Vous avez saisi : «  + reponse )

        if reponse==code :
                print (« Code bon ! »)
                pass
        else :
                print (« Code faux ! »)
                return # sort de loop

        # si le code est bon on se trouve ici…
        print (« Felicitations ! « )

        # stoppe loop
        global noLoop
        noLoop=True

# — fin loop —

#— obligatoire pour lancement du code —
if __name__==« __main__ »: # pour rendre le code executable
        setup() # appelle la fonction main
        while not noLoop: loop() # appelle fonction loop sans fin

 

Ce code est également disponible ici : https://raw.github.com/sensor56/pyduino-exemples/master/Periph/Raw_inputNumpadCode.py

Utilisation

  • Réaliser le montage et connecter le clavier sur le port USB
  • Appuyer sur le bouton exécuter dans Geany
  • Une fenêtre de Terminal doit apparaître :
    • saisir le code secret
    • les messages voulus s’affichent en conséquence.
Programmer le pcDuino : Pyduino : périphériques : Tester un code secret saisi à l’aide d’un numpad (clavier numérique )
  • Une fois, le programme lancé, plus besoin d’accès VNC, ni d’écran : il est possible de saisir des valeurs utilisables par le programme à partir du seul numpad.
  • Simple et efficace.

Discussion technique

  • L’utilisation de try… except… permet d’éviter tout blocage en cas d’erreur de saisie.
Noter cet article

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Archive Mon Club Elec

Articles populaires

Newsletter

Inscrivez-vous maintenant et bénéficiez d'un soutien continu pour réaliser vos travaux électriques en toute sécurité.