Le pcDuino est un système informatique open source qui offre aux utilisateurs une variété de possibilités de programmation. Il est très facile à utiliser et peut être utilisé pour créer des applications et des programmes complexes. Dans cet article, nous allons examiner comment le pcDuino peut être utilisé pour programmer un fichier texte en ajoutant une ligne lorsqu’un bouton poussoir (BP) est appuyé. Nous verrons également comment le fichier texte peut être modifié et comment le programme peut être mis à jour.
Programmer le pcDuino : Fichiers : L’appui sur un BP ajoute une ligne dans un fichier texte.
Ce que l’on va faire ici
- Dans ce code, l’appui sur un bouton poussoir va permettre d’enregistrer une ligne dans un fichier texte, à l’emplacement de son choix sur le système. Ce code ouvre les bases de datalogging sur évènements capteurs.
- Vous remarquerez la simplicité du code obtenu.
Pré-requis
- un mini-PC (pcDuino conseillé) avec système Lubuntu opérationnel. Voir si besoin la page d’accueil du pcDuino
- Langage Python (2.7) et l’IDE Pyduino ou l’éditeur Geany installés. Voir si besoin : Logiciel pour développer avec Pyduino
- ma librairie pyDuino installée : voir si besoin : Télécharger et installer Pyduino sur le pcDuino
Schéma fonctionnel
- L’entrée numérique déclenche l’écriture dans le fichier texte.
Matériel nécessaire
Système
- Le pcDuino seul
E/S
- une plaque d’essai pour montage sans soudures,

- des straps,

- un bouton poussoir pour CI,

Instructions de montage
- Connecter un bouton poussoir entre la broche 2 (configurée en entrée avec rappel au plus) et le 0V
Le montage à réaliser
Le fichier *.py
Copier/coller ce code dans l’éditeur Geany :
# -*- coding: utf-8 -*-
# exemple pyDuino – par X. HINAULT – www.mon-club-elec.fr
# Juin 2013 – Tous droits réservés – GPLv3
# voir : https://github.com/sensor56/pyDuino
# Ajout d’une ligne dans un fichier lors appui sur un BP
from pyduino import * # importe les fonctions Arduino pour Python
# entete declarative
BP=2 # declare la broche a utiliser
APPUI=LOW # valeur broche lors appui
filepath=« » # variable globale chemin fichier
#— setup —
def setup():
global filepath # variable globale
# configuration du BP
pinMode(BP,PULLUP) # met la broche en entree avec rappel au plus actif
Serial.println(« La broche « +str(BP)+ » est en entree avec rappel au plus actif ! »)
# configuration fichier a utiliser
path=homePath()+ dataPath(TEXT) # chemin du répertoire à utiliser
filename=« test.txt » # nom du fichier
filepath=path+filename # chemin du fichier
print (« Fichier utilise : « + filepath )
# — fin setup —
# — loop —
def loop():
if digitalRead(BP)==APPUI : # si appui BP
# pas a pas :
« » »
dataFile=open(filepath,’a’) # ouvre le fichier en ecriture pour ajout
dataFile.write(« Appui BP : » + nowdatetime() + »\n« )
dataFile.close()
« » »
# ajout dans fichier en 1 ligne
appendDataLine(filepath, « Appui BP : « + nowdatetime())
# message console
Serial.println (« Ajout ligne : « + « Appui BP : « + nowdatetime() + » dans fichier « + filepath)
delay (250) # anti-rebond
# — 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/SD/FileAppendAppuiBp.py
Utilisation
- Vérifier au préalable que le répertoire utilisé existe sur le système et le créer graphiquement au besoin.
- Appuyer sur le bouton exécuter dans Geany
- Une fenêtre de Terminal vide doit apparaître : lors d’un appui sur le bouton poussoir, un message indique qu’une ligne est ajoutée dans le fichier texte :

- On peut fermer ou non le programme est ouvrir le fichier texte séparément à partir de Geany ou autres éditeur de texte, voire même du navigateur et constaté que le fichier contient bien les lignes ajoutées.

- Simple et efficace.
Discussion technique
- Ici, la CPU est trop sollicitée par la boucle loop() donc, on pourra utiliser plutôt un Timer pour lire le BP à intervalle occasionnel plutôt qu’en boucle permanente.
Articles similaires:
- Programmer le pcDuino : Python simple : Entrée numérique : Détecter l’appui sur un bouton poussoir
- Programmer le pcDuino : Système : L’appui sur un BP exécute une commande système (ligne de commande).
- Programmer le pcDuino : Python simple : Entrée numérique : L’appui sur un bouton poussoir allume une LED
- Programmer le pcDuino : Pyduino : Fichier : Ajouter une ligne à intervalle régulier dans un fichier texte.
- Programmer le pcDuino : Fichiers : Enregistrer une mesure analogique dans un fichier texte à intervalle régulier.
Articles Liés
- Programmer le pcDuino : Fichiers : Enregistrer une mesure analogique dans un fichier texte à intervalle régulier.
Le pcDuino est un système informatique à carte unique qui offre une puissance de traitement…
- Programmer le pcDuino : Fichiers : Enregistrer une mesure analogique dans un fichier texte à intervalle régulier. - compatible Dygraphs
Le pcDuino est un système informatique open source qui offre aux utilisateurs une variété de…
- Programmer le pcDuino : Système : L'appui sur un BP exécute une commande système (ligne de commande).
Le pcDuino est un système informatique open source qui offre aux utilisateurs une plateforme puissante…