2010-11-22 14 views
0

J'utilise python pour envoyer des données à mon arduino et pour une raison quelconque sous windows cela me donne une erreur. Voici mon code.L'envoi de données série avec python donne une erreur sur windows mais pas sur linux

import serial 

ser = serial.Serial("COM3") 

ser.write('1') 

Voici l'erreur.

File "C:\Python25\lib\site-packages\serial\serialwin32.py", 

ligne 255, en écriture SerialException de relance ("WriteFile a échoué (% s)" % ctypes.WinError()) serial.serialutil.SerialException: WriteFile a échoué ([Erreur 9] La poignée est invalide.)

Une idée de pourquoi ça me donne ça?

+0

Utilisez le bouton 101010 pour le formatage du code approprié. –

Répondre

1

Etes-vous sûr que COM3 est un port série valide sur votre machine Windows? Pouvez-vous l'ouvrir avec HyperTerminal et lui envoyer des trucs?

Si elle est, une autre chose est d'essayer de le remplacer par le nom complet, par exemple:

port = "\\\\.\\COM3" 
ser = serial.Serial(port, 38400) 
+1

Encore une chose à faire est de remplacer '" COM3 "' par le littéral int '2'. – detly