http://pyserial.wiki.sourceforge.net/pySerial
modul.py:
Code: Alles auswählen
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# kommentar
"""
docstring
"""
import sys
import serial
class Device(object):
"""
docstring
"""
def __init__(self, port):
self.serial = serial.Serial() # pySerial
self.serial.port = port
self.serial.baudrate = 19200
self.serial.timeout = 2 # seconds
self.serial.bytesize = serial.EIGHTBITS
self.serial.parity = serial.PARITY_NONE
self.serial.stopbits = serial.STOPBITS_ONE
...
Code: Alles auswählen
dev = Device("/dev/ttyS0")
dev.read()
-> (datum1, datum2, ..)
Z.B. frage ich mich, ob es nötig ist, jedesmal den Port neu zu öffnen - in der Hinsicht, dass diese Module später mal irgendwie als Threads zusammenwerkeln sollen und dann quasi ständig aktiv sind.
Da muss ich mich noch einlesen.
Die unmittelbarere Frage ist, ob der Weg, innerhalb meiner Klasse eine Instanz von pySerial zu erzeugen, der richtige ist - unter welchen Umständen würde man pySerial "erweitern"?
Ist es ratsam, die Daten als Rückgabewert zu übergeben, oder sollten lieber Attribute verwendet werden? Oder sogar ein eigenes Objekt zur Datenübergabe?
Lassen sich Shebang, Kommentare und Docstring so gemischt in einem Modul benutzen?