def getAnalogData(adCh, CLKPin, DINPin, DOUTPin, CSPin): GPIO.output(CSPin, HIGH) GPIO.output(CSPin, LOW) GPIO.output(CLKPin, LOW) cmd = adCh cmd |= 0b00011000 # Kommando zum Abruf der Analogwerte des Datenkanals adCh # Bitfolge senden for i in range(5): if (cmd & 0x10): GPIO.output(DINPin, HIGH) else: GPIO.output(DINPin, LOW) # Clocksignal negative Flanke erzeugen GPIO.output(CLKPin, HIGH) GPIO.output(CLKPin, LOW) cmd <<= 1 # Bitfolge eine Position nach links verschieben # Datenabruf adchvalue = 0 # Wert auf 0 zurücksetzen for i in range(13): #12 Bit Auflösung vom Wandler + 0 Bit GPIO.output(CLKPin, HIGH) GPIO.output(CLKPin, LOW) adchvalue <<= 1 # 1 Postition nach links schieben if(GPIO.input(DOUTPin)): adchvalue |= 0x01 adchvalue = adchvalue * 0.0008 #----> Konfiguration Eingangskanal und GPIOs CLK = 18 # Clock DIN = 24 # Digital in DOUT = 23 # Digital out CS = 25 # Chip-Select #----> Pin-Programmierung GPIO.setup(CLK, GPIO.OUT) # CLK-Signal = Output vom Raspberry GPIO.setup(DIN, GPIO.OUT) # Digital Input ADC = Output vom Raspberry GPIO.setup(DOUT, GPIO.IN) # Digital Output ADC = Input vom Raspberry GPIO.setup(CS, GPIO.OUT) # Chip-Select = Output vom Raspberry #----> Funktion: Beendet Programm def callback1(): sys.exit(0)