Was momentan geht ist jedoch lediglich die IDLE aufzurufen welche mir dann die Klasse instanziert. Danach ist die IDLE offen und ich kann nur noch in der IDLE weitere Methoden dann aufrufen. ich möchte jedoch an dieser Stelle von der externen Applikation die Methode aufrufen, was aber irgendwie nicht so funktioniert.
Hier mein Skript:
Code: Alles auswählen
from ast import If
import sys
import serial
import datetime
import time
import logging
import fire
from serial import Serial
class Russ_GPIO(object):
def __init__(self, port="COM4", baud=57600, timeout=0.1, parity=serial.PARITY_NONE, do_not_open=False):
self.com4 = serial.Serial("COM4", baud, rtscts=False, dsrdtr=False, timeout=timeout, parity=parity)
self.com4.break_condition = False
self.com4.setDTR(0)
self.com4.setRTS(0)
def set_gpio(self, chn, state):
print("first: ", chn, state)
if chn == 0:
if state == 0:
self.com4.break_condition = False
self.com4.setDTR(False)
self.com4.setRTS(False)
x= Russ_GPIO()
Der Aufruf im Command Shell ist dann einfach:
Code: Alles auswählen
python -m idlelib -r ComPort.py
Das öffnet (und bleibt dann offen) die IDLE von welcher ich dann die Methode aufrufen kann. Aber eben die Frage ist wie könnte ich dies auch von einem externen Programm aus machen (mit oder ohne IDLE)?
Danke