ile cihaza yeniden bağlanılıyor Python'daki pySerial modülünde şu anda bir sorun yaşıyorum. Sorunum, bir cihaza bağlanmak ve bağlantıyı kesmekle ilgilidir. Cihazımla başarılı bir şekilde bağlantı kurabilir ve istediğim kadarıyla iletişim kurabilir ve istediğim zaman ondan bağlantı kurabilirim. Ancak, bağlantı kesildikten sonra cihaza yeniden bağlanamıyorum. İşte pySerial
programım seri port ile arayüz için kullandığı sarıcı sınıftır:import serial, tkMessageBox
class Controller:
""" Wrapper class for managing the serial connection with the MS-2000. """
def __init__(self, settings):
self.ser = None
self.settings = settings
def connect(self):
""" Connect or disconnect to MS-2000. Return connection status."""
try:
if self.ser == None:
self.ser = serial.Serial(self.settings['PORT'],
self.settings['BAUDRATE'])
print "Successfully connected to port %r." % self.ser.port
return True
else:
if self.ser.isOpen():
self.ser.close()
print "Disconnected."
return False
else:
self.ser.open()
print "Connected."
return True
except serial.SerialException, e:
return False
def isConnected(self):
'''Is the computer connected with the MS-2000?'''
try:
return self.ser.isOpen()
except:
return False
def write(self, command):
""" Sends command to MS-2000, appending a carraige return. """
try:
self.ser.write(command + '\r')
except Exception, e:
tkMessageBox.showerror('Serial connection error',
'Error sending message "%s" to MS-2000:\n%s' %
(command, e))
def read(self, chars):
""" Reads specified number of characters from the serial port. """
return self.ser.read(chars)
bu sorunu var ve bunu düzeltmek için yapmaya çalışacağım neler yapabileceğini neden kimse nedenini biliyor mu?
Yeniden bağlanmaya çalıştığınızda aldığınız istisna/iz nedir? Windows veya Linux'ta mısınız? – jedwards
"Bağlantı kesildi" ile ne demek istiyorsun? Seri kabloyu çıkarmak mı yoksa python sürecinden mi çıkmak istiyorsunuz? – TJD
@andrew donelick Sorunun cevabıyla ilgili değil, ama neden 'Serial 'nesnesini __init __()' de başlatmıyorsunuz? –