Serielle Schnittstelle RS232 - Anfängerproblem??

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
µC-noob
User
Beiträge: 12
Registriert: Mittwoch 2. Januar 2008, 10:10

Serielle Schnittstelle RS232 - Anfängerproblem??

Beitragvon µC-noob » Freitag 4. Januar 2008, 15:18

Hi,
ich weiß, mit sowas sollte man als totaler python neuling nicht gleich anfangen, aber leider bleibt mir nix anderes übrig,.. :( Vorgabe von oben.


Problem:
Ich möchte über die Serielle Schnittstelle RS232 etwas an meinen µC schicken.
Ich soll dazu ein Skript in Python aufstellen.

Hab mich hier im Forum ein wenig hier umgeschaut und die threads angeschaut/überflogen, die über dieses Thema geschrieben wurden.

Habe die Mdule von http://pyserial.sourceforge.net/ installiert

Dananch wollte ich das Beispiel aus dem Thread http://www.python-forum.de/topic-889.html ausprobieren:

Also der Code:

Code: Alles auswählen

#!/usr/bin/python

import serial, time

ser = serial.Serial(6, 9600, bytesize=serial.EIGHTBITS, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, timeout=1, xonxoff=0, rtscts=0)
print ser.portstr
w = ser.write("PIN1_ON\r")
#time.sleep(0.2)
r = ser.read(10)
print r
ser.close()


Also wie im Thread außer dass ich Comport 6 verwende.
Mit dem Hyperterminal habs ich schon ausprobiert, dort ist es auch Port6 (und dort klappts).

Folgende Fehlermeldung:

Traceback (most recent call last):
File "C:/cmd/serial_test.py", line 3, in <module>
import serial, time
File "C:/cmd\serial\__init__.py", line 13, in <module>
from serialwin32 import *
File "C:/cmd\serial\serialwin32.py", line 9, in <module>
import win32file # The base COM port and file IO functions.
ImportError: No module named win32file


Ich weiß aber nicht woher das kommt, die installation habe ich ausgefürt wie auf http://pyserial.sourceforge.net/ beschrieben.

Hat jemand eine Idee??

Danke...

Gruß
Sry???
blutiger Python-Anfänger!
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 4. Januar 2008, 15:35

Du musst pywin32, vormals bekannt als win32all installieren. Steht auch auf der Webseite so.

Achja, das nächste mal bitte in das richtige Forum posten, ok?
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Andy
User
Beiträge: 196
Registriert: Sonntag 1. Januar 2006, 20:12
Wohnort: aus dem hohen Norden....

Beitragvon Andy » Freitag 4. Januar 2008, 15:38

Hallo pc-noob!

Nur mal ne leise Vermutung, da noch keiner gepostet hat. :?

Hat Dein Traceback etwas damit zu tun, dass Du Dir, wie auch auf der Homepage von pySerial ersichtlich, die win32all extensions on Windows noch nicht heruntergeladen und installiert hast?. :K

Kann mich irren. Hab davon wirklich keine Ahnung. :roll:
µC-noob
User
Beiträge: 12
Registriert: Mittwoch 2. Januar 2008, 10:10

Beitragvon µC-noob » Freitag 4. Januar 2008, 16:09

Du musst pywin32, vormals bekannt als win32all installieren.


Das habe ich bereits installiert, muss ich da auf den Pfad achten wo ich das hineinkopiere, könnte es daran liegen??

Achja, das nächste mal bitte in das richtige Forum posten, ok?


Sorry, das war mir gar nicht aufgefallen, das ich in allgemeines Drinstecke...
Kann man den Thread noch verschieben??

Danke und Gruß
Sry???

blutiger Python-Anfänger!
Andy
User
Beiträge: 196
Registriert: Sonntag 1. Januar 2006, 20:12
Wohnort: aus dem hohen Norden....

Beitragvon Andy » Freitag 4. Januar 2008, 16:17

µC-noob hat geschrieben:Das habe ich bereits installiert, muss ich da auf den Pfad achten wo ich das hineinkopiere, könnte es daran liegen??


Wenn Du die Installationsdatei z. B. pywin32-210.win32-py2.5.exe verwendet hast, wird automatisch in C:\Python25\Lib\site-packages installiert. Das ist das einzig richtige Verzeichnis.

EDIT:Zumindest bei mir in WINDOFF$
Zuletzt geändert von Andy am Freitag 4. Januar 2008, 16:27, insgesamt 1-mal geändert.
µC-noob
User
Beiträge: 12
Registriert: Mittwoch 2. Januar 2008, 10:10

Beitragvon µC-noob » Freitag 4. Januar 2008, 16:25

Die habe ich verwendet.

Woran könnte es sonst liegen???


Gruß
Sry???

blutiger Python-Anfänger!
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 4. Januar 2008, 17:09

Versuch mal in Python-Interpreter win32file zu importieren. Funktioniert das?
My god, it's full of CARs! | Leonidasvoice vs Modvoice
µC-noob
User
Beiträge: 12
Registriert: Mittwoch 2. Januar 2008, 10:10

Beitragvon µC-noob » Montag 7. Januar 2008, 09:32

Ich weiß jetzt nicht ob ich das richtig verstanden habe:

So?

Code: Alles auswählen

import win32file


Ist es egal von wo aus ich das File aufrufe??

Auf jeden fall wird es nicht gefunden:

Traceback (most recent call last):
File "C:\Python25\test.py", line 1, in <module>
import win32file
ImportError: No module named win32file

Gruß
Sry???

blutiger Python-Anfänger!
Zap
User
Beiträge: 533
Registriert: Freitag 13. Oktober 2006, 10:56

Beitragvon Zap » Montag 7. Januar 2008, 09:44

Dann ist deine pywin32 installation nicht erfolgreich gewesen.
Am besten alle nötigen Schritte nochmal neu durschspielen.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Beitragvon gerold » Montag 7. Januar 2008, 09:44

µC-noob hat geschrieben:Traceback (most recent call last):
File "C:\Python25\test.py", line 1, in <module>
import win32file
ImportError: No module named win32file

Hallo µC-noob!

1.) Deine Programme haben nichts im Python-Ordner zu suchen. Dort lässt man alles wie es ist.

2.) Installiere dir pywin32:
2.1) Setup herunterladen: http://downloads.sourceforge.net/pywin3 ... g_mirror=0
2.2) Setup mit einem Doppelklick ausführen

3.) Noch einmal ausprobieren, ob du ``import win32file`` im Interpreter ausführen kannst.

Wenn alles nichts hilft, dann hast du dir deine Python-Installation zerschossen. Dann den Fehler zu finden, wird umständlich. Das kann an falschen Pfaden liegen, an falsch installierten Modulen, usw. Aber warten wir mal ab.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
µC-noob
User
Beiträge: 12
Registriert: Mittwoch 2. Januar 2008, 10:10

Beitragvon µC-noob » Montag 7. Januar 2008, 10:11

Super, danke...
Jetzt funktionierts,...

Das ist jetzt ein wenig peinlich :oops:
Aber, ehrlich, ich hatte es installiert :K .

Danke für die Hilfe

Gruß
Sry???

blutiger Python-Anfänger!
sechsrad
User
Beiträge: 173
Registriert: Montag 31. März 2008, 17:09

Beitragvon sechsrad » Donnerstag 3. April 2008, 09:58

serielle schnittstelle com2 funktioniert nicht.
die untere fehlermeldung kommt mit dem code von noob.
programme wurden installiert.

...import win32file...
dieses ergibt im interpreter keine fehlermeldung.

woran liegt das?

File "D:\Python25\pebi-py\seriell\serial.py", line 5, in <module>
ser = serial.Serial(2,19200, bytesize=serial.EIGHTBITS, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, timeout=1, xonxoff=0, rtscts=0)
AttributeError: 'module' object has no attribute 'Serial'
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Beitragvon gerold » Donnerstag 3. April 2008, 10:09

sechsrad hat geschrieben:
AttributeError: 'module' object has no attribute 'Serial'

nenne deine datei um
http://halvar.at | Kleiner Bascom AVR Kurs

Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
sechsrad
User
Beiträge: 173
Registriert: Montag 31. März 2008, 17:09

Beitragvon sechsrad » Donnerstag 3. April 2008, 10:31

jup, jetzt geht es.
das habe ich jetzt nicht aus der fehlermeldung gelesen!

noch ein hinweis, die comschnittstelle ist immer um 1 höher als man einstellt im program. im programm ist sie "0" , ist aber dann com1.

dieses war aber nicht der fehler.

danke.

mfg
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Donnerstag 3. April 2008, 14:05

sechsrad hat geschrieben:noch ein hinweis, die comschnittstelle ist immer um 1 höher als man einstellt im program. im programm ist sie "0" , ist aber dann com1.

Das liegt daran, dass in Computern Zahlenfolgen oft mit Null beginnen. Etwa Indexposition Null in Listen oder ``/dev/ttyS0`` auf Unices.
My god, it's full of CARs! | Leonidasvoice vs Modvoice

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]