Ligne 19 : |
Ligne 19 : |
| doit afficher une liste de fichiers où vous devez trouver '''Adafruit_I2C.py''' | | doit afficher une liste de fichiers où vous devez trouver '''Adafruit_I2C.py''' |
| | | |
− | === Préparation pour MasterWriter.py === | + | === Préparation pour MasterWriterDataTypes.py === |
− | Le programme MasterWriter'''DataTypes'''.py va importer le Adafruit_I2C.py, il est donc capital que ce fichier soit accessible depuis MasterWriter'''DataTypes'''.py. | + | {{bloc-etroit|text=Le programme MasterWriter'''DataTypes'''.py va importer le Adafruit_I2C.py, il est donc capital que ce fichier soit accessible depuis MasterWriter'''DataTypes'''.py. |
| | | |
| Le plus simple est de créer un lien symbolique vers Adafruit_I2C.py depuis le répertoire où sera stocké notre programme MasterWriter'''DataTypes'''.py . | | Le plus simple est de créer un lien symbolique vers Adafruit_I2C.py depuis le répertoire où sera stocké notre programme MasterWriter'''DataTypes'''.py . |
| | | |
− | Le commandes suivantes permettent créer le répertoire de stockage pour MasterWriter'''DataTypes'''.py , voici la marche à suivre: | + | Le commandes suivantes permettent créer le répertoire de stockage pour MasterWriter'''DataTypes'''.py , voici la marche à suivre: }} |
− | | |
| <nowiki>cd ~ | | <nowiki>cd ~ |
| mkdir ArdPi-I2C | | mkdir ArdPi-I2C |
Ligne 64 : |
Ligne 63 : |
| * Demander le NO de version, donc lectyre d'un octet (type "'''byte'''") | | * Demander le NO de version, donc lectyre d'un octet (type "'''byte'''") |
| * Demander la lecture d'un nombre décimal (type "'''double'''") | | * Demander la lecture d'un nombre décimal (type "'''double'''") |
| + | |
| + | '''Decodage d'un type DOUBLE:'''<br /> |
| + | Le décodage d'un type DOUBLE se fait à l'aide d'un struct.unpack. Pour un double, il faut fournir un buffer de 4 octets. Ce buffer doit être une chaîne de caractère. |
| + | |
| + | Il faut donc transformer les 4 octets/byte en provenance d'Arduino et reçu à l'aide de I2C.readList() en une chaine de caractère à l'aide de la fonction CHR(). |
| | | |
| === Le programme === | | === Le programme === |
Ligne 94 : |
Ligne 98 : |
| | | |
| # --- Demander le NO de version --- | | # --- Demander le NO de version --- |
| + | # Transfert d'un type BYTE |
| + | |
| # Ecriture de la valeur 0x01 dans le registre 0 | | # Ecriture de la valeur 0x01 dans le registre 0 |
| i2c.write8( 0, 0x01 ); | | i2c.write8( 0, 0x01 ); |
Ligne 103 : |
Ligne 109 : |
| # Error accessing 0x04: Check your I2C address | | # Error accessing 0x04: Check your I2C address |
| time.sleep( 0.100 ) | | time.sleep( 0.100 ) |
| + | |
| + | # --- Demander une valeur décimale --- |
| + | # Transfert d'un type DOUBLE |
| | | |
| # demander l'opération de reception d'un float, placer 0x02 dans le | | # demander l'opération de reception d'un float, placer 0x02 dans le |