Programmation Python, communication Raspberry et Arduino

Fermé
Siouplaitrpondezmoi - Modifié le 9 mars 2019 à 12:04
 Siouplaitrpondezmoi - 10 mars 2019 à 12:49
Bonjour,

Je fait actuellement un concours de robotique qui se passe dans un mois. Pour cela, je m'occupe d'une communication entre une Arduino et une Raspberry, le programme Arduino fonctionne mais pas celui de la Raspberry, voici le programme:

import serial
import time

ser = serial.Serial('/dev/ttyUSB0', 9600)

while message != 123:
      if donnee_port_serie == 12:
               time.sleep(1)
               message = 123
                else:
                       time.sleep(1)
                       donnee_port_serie == ser.readline

time.sleep(2)
ser.write(64)
time.sleep(2)


Vous vous demandez peut-être quel est le problème, eh bien lorsque je fais Run Module sur le Python 3.5.3, il ne reconnait pas else alors que cette condition et surligné en orange, comme if alors que cette condition elle la reconnait.
Merci d'avance pour vos réponses :).
__
(modération : changé balise code en code python, ce dernier respectant les blancs en début de ligne, importants en python)

1 réponse

jee pee Messages postés 40386 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 29 octobre 2024 9 397
9 mars 2019 à 12:08
Bonjour,

J'ai modifié ton message pour avoir les caractéristiques du code python.

Et justement, l'indentation étant une des caractéristique majeure du langage, de ce que j'ai lu sur le sujet, le else ne devrait-il pas être au même niveau que le if ?
2
Siouplaitrpondezmoi
10 mars 2019 à 11:14
C'était ça, merci beaucoup ! Je suis encore novice, très novice en Python. D'ailleurs, j'ai une autre question, je me suis documenté sur Python, et j'ai vu que les variables ne sont pas déclarés, à l'inverse du C++, or le logiciel Python que j'utilise me met que ma variable "donnee_port_serie" n'est pas déclarée. Avez-vous une réponse pour m'aider sur ce point ?
0
jee pee Messages postés 40386 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 29 octobre 2024 9 397 > Siouplaitrpondezmoi
Modifié le 10 mars 2019 à 12:31
Je suis beaucoup plus novice que toi, n'ayant jamais ecrit de programme python. J'ai juste suivi, pour voir, un tuto d'une demi heure.

Mais comme j'ai une plus grande expérience de la programmation en général, et en particulier de la rigueur dans la syntaxe je dirais : pourquoi utiliser == ? c'est la syntaxe pour un test d'égalité, pas une affectation, comme tu l'as fait en ligne 9.
0
Siouplaitrpondezmoi
10 mars 2019 à 12:49
Au début j'avais juste utilisé = comme je l'ai appris sur des tutos, mais pourtant Python n'a pas reconnu la syntaxe, je ne sais pourquoi, je vais essayer de décortiquer le programme pour voir où est l'erreur, merci pour tes réponses en tout cas
0