Ich erstellte Modul, das erste verbindet mit Arduino mit seriellem Modul wie diese name=clockK('/dev/ttyACM0','9600')
und senden Sie Daten an Arduino mit Befehl name.send('4')
.Python erinnern serielle Verbindung von einem anderen def
Aber wenn ich Daten an Arduino sende, verwendet es nicht früher erstellten "Name". Hier ist mein Code von clockK.py:
import datetime
import time
import serial
import os,sys,string
class clockK:
def __init__(self, device, baund):
try:
self.device = device
self.baund = baund
self.naame=serial.Serial(device,baund).write('0')
except:
raise SerialNotResponding("Serial " + self.device + " is not responding!")
def send(self, what):
try:
self.naame.write(what)
return "Sent!: " + what
except:
raise ErrorSend("Can't send!")
def who(self):
return "You are communicating with: " + self.device + " at " + self.baund
class SerialNotResponding(Exception):
pass
class ErrorSend(Exception):
pass
Also meine Frage ist, wie zu "erinnern" serial von init definieren in def schicken?
Ein Beispielprogramm mit diesem Modul:
from clockK import *
a=clockK('device','speed')
a.send('1')