Modifications

Sauter à la navigation Sauter à la recherche
4 464 octets ajoutés ,  14 avril 2013 à 19:51
Page créée avec « {{ArduPi-I2C-NAV}} == Raspberry == {{bloc-etroit|text=Nous voici donc du côté de notre Raspberry-Pi. Le programme Raspberry est un '''Master Writer''', cela signifie que ... »
{{ArduPi-I2C-NAV}}

== Raspberry ==
{{bloc-etroit|text=Nous voici donc du côté de notre Raspberry-Pi.

Le programme Raspberry est un '''Master Writer''', cela signifie que c'est lui qui prend les commandes du bus I2C et qui envoi les ordres/instructions vers les différents esclaves (dont notre Arduino tout fraîchement programmé en Slave Listener).}}

== Pre-requis ==
{{bloc-etroit|text=Notre programme python s'appuie sur la librairie I2C écrite par [http://www.adafruit.com Adafruit Industries] pour ses différents produits.

Il est donc nécessaire d'installer le code source d'AdaFruit sur votre Raspberry Pi en utilisant les instructions disponibles dans notre autre tutoriel sur le GPIO.}}

[[Rasp-Hack-GPIO AdaFruit PiCode|Vous trouverez les instructions nécessaires ici]] (issu du tutoriel sur le GPIO du Raspberry Pi).

Si les codes "Adafruit PiCode" sont correctement installés, l'instruction suivante:

<nowiki>ls ~/Adafruit-Raspberry-Pi-Python-Code/Adafruit_I2C/</nowiki>

doit afficher une liste de fichiers où vous devez trouver '''Adafruit_I2C.py'''

=== Préparation pour MasterWriter.py ===
Le programme Master'''Register'''Writer.py va importer le Adafruit_I2C.py, il est donc capital que ce fichier soit accessible depuis Master'''Register'''Writer.py.

Le plus simple est de créer un lien symbolique vers Adafruit_I2C.py depuis le répertoire où sera stocké notre programme Master'''Register'''Writer.py .

Le commandes suivantes permettent créer le répertoire de stockage pour Master'''Register'''Writer.py , voici la marche à suivre:

<nowiki>cd ~
mkdir ArdPi-I2C
cd ArdPi-I2C
mkdir Pi
cd Pi
mkdir MasterRegisterWriter
cd MasterRegisterWriter</nowiki>

Voila, maintenant nous allons créer un lien symbolique vers la source Adafruit_I2C que vous avez déjà installé sur votre pi

<nowiki>cd ~/ArdPi-I2C/Pi/MasterWriter
ln -s ../../../Adafruit-Raspberry-Pi-Python-Code/Adafruit_I2C/Adafruit_I2C.py </nowiki>

Ne reste plus qu'à créer notre programme MasterWriter.py à l'aide de la commande:

<nowiki>cd ~/ArdPi-I2C/Pi/MasterRegisterWriter
nano MasterRegisterWriter.py</nowiki>

Vous pouvez alors taper le code du programme (voir ci-dessous).

Vous pouvez également utiliser la [[PI-Easy-Copy-Paste|méthode Pi-Copier/Pi-Coller]] pour copier/coller facilement le code dans '''MasterRegisterWriter.py'''

=== MasterRegisterWriter.py prêt? ===
Voila, si tout est correctement préparé, la commande commande ls suivante:
<nowiki>ls ~/ArdPi-I2C/Pi/MasterRegisterWriter</nowiki>

Affiche la liste des fichiers où les éléments suivants doivent être visible:
<nowiki>Adafruit_I2C.py MasterRegisterWriter.py</nowiki>

== Programme MasterRegisterWriter.py ==


=== Fonctionnement en quelques mots ===
Le programme MasterRegisterWriter.py établit une connexion avec l'esclave 0x04 (donc notre Arduino programmé avec SlaveListerner) et envoi une série de message.

Le programme MasterRegisterWriter.py effectue les opérations d'envoi dans l'ordre suivant:
* xxx
* xxx
* xxx

=== Le programme ===

<nowiki>#!/usr/bin/env python
# -*- coding: latin-1 -*-

# === ArduPi-I2C ================================================
# Communication entre Arduino et Raspberry Pi via le BUS I2C
# ===============================================================
# Tutoriel: http://mchobby.be/wiki/index.php?title=ArduPi-I2C
#
# Programme Master qui envoi des instructions vers un Arduino par
# l'intermédiaire de "registres" de façon logiciel sur Arduino.
# S'utilise avec le programme Arduino SlaveRegister.ino
#
# Ecrit par D. Meurisse pour MCHobby.be
# www.mchobby.be - Vente de kit et composant Arduino et Raspberry Pi
# Licence CC-BY-SA
#
# Basé sur Adafruit_I2C.py librairie Python écrite par AdaFruit Industries
# www.adafruit.com

xxx</nowiki>

== Executer le programme ==

{{ambox-stop|text=Les résultats de ce programme sont principalement visible dans la session terminale de votre Raspberry Pi. Le programme Arduino est cependant susceptible d'envoyer quelques informations sur le "Moniteur Série" d'Arduino IDE.<br />N'oubliez donc pas de charger SlaverRegister sur votre Arduino et de démarrer le moniteur série.}}

Le programme s'exécute simplement comme suit:

<nowiki>cd ~/ArdPi-I2C/Pi/MasterRegisterWriter
sudo python MasterRegisterWriter.py</nowiki>

{{ambox|text=Il est important d'utiliser <strong>sudo</strong> pour que Python puisse accéder librement au GPIO!}}

{{ArduPi-I2C-TRAILER}}
29 973

modifications

Menu de navigation