Entschuldigung für mein Unfug, ... & Quatsch, ...
Wünsche Euch viel Erfolg und Spaß mit dem Raspi & Co. :)
LG
Georg
Ps.
TOP!!!! Forum!
Habe hier viel Gelernt! -> :thumbs1: :thumbs1: :thumbs1:
Entschuldigung für mein Unfug, ... & Quatsch, ...
Wünsche Euch viel Erfolg und Spaß mit dem Raspi & Co. :)
LG
Georg
Ps.
TOP!!!! Forum!
Habe hier viel Gelernt! -> :thumbs1: :thumbs1: :thumbs1:
Solche Antworten irritieren die Anfänger, ...
Es gibt ZWEI! OC (Open-Drain´s) -> NPN -> PNP
Fertig!
Der einer liefert den "puren Minus", der anderer liefert den "puren Plus".
...
Für weiteres - bin "RAUS".
Quotenur ich wöchte ein Script über eine Gui starten und Beenden. Die Gui heißt Windows10.py Das Script welches die GPIOs beeinhaltet heißt blinkeng.py
Py to Py
Ok.
Dann mache es.
Alles wurde Dir schon erläutert.
---
Aus Python -> Python Script starten???
Bitte - bei alem Respekt!
Deshalb machen wir ein "Amen"
(habe mir die Mühe wegen _deeets und denen seiner sleep - Quatsch gemacht ... )
versuche mit:
[code=php]#!/usr/bin/python3
import time
import RPi.GPIO as GPIO
from Tkinter import *
#Pin Nummer wie auf dem Raspberry Board verwenden
GPIO.setmode(GPIO.BOARD)
# Pin 11 (GPIO 17) als Output
GPIO.setup(11, GPIO.OUT)
GPIO.setup(7, GPIO.OUT)
GPIO.setwarnings(False)
def Fenster():
f = Tk()
f.title("Fenster von Thommy!!!")
f.geometry("300x300")
def bk1():
print ("an-1")
#GPIO.output(7, 1)
#LED aus
#GPIO.output(11, GPIO.LOW)
# eine Sekunde warten
time.sleep(1)
#LED an
#GPIO.output(11, GPIO.HIGH)
print ("aus-0")
# eine Sekunde warten
time.sleep(1)
b1 = Button(f,text = "Programm start",command = bk1)
b1.place(x=0,y=10)
def bk2():
print ("aus")
# GPIO.output(7, 0)
b2 = Button(f,text = "Programm ende",command = bk2)
b2.place(x=0,y=110)
f.mainl[/php]
Gruß
Georg
Ps.
Sorry deeets, ro... & co ... aber Persönliches soll bei Seite bleiben.
Ich möchte NUR mit meinen Tips weiterhelfen.
Hallo,
ich vermute, dass Ihr etwas DIREKT die Probleme des TS interpretiert.
...
Schnully
Versuche bitte hiermit: (habe aber nicht getestet! - eventuelle Einrückungen bitte korrigieren! Danke)
[code=php]#!/usr/bin/python3
from tkinter import *
#import subprocess
import time
import RPi.GPIO as GPIO
#Pin Nummer wie auf dem Raspberry Board verwenden
GPIO.setmode(GPIO.BOARD)
# Pin 11 (GPIO 17) als Output
GPIO.setup(11, GPIO.OUT)
def Fenster():
f = Tk()
f.title("Fenster von Thommy!!!")
f.geometry("300x300")
b1 = Button(f,text = "Programm start",command = bk1)
b1.place(x=0,y=10)
b2 = Button(f,text = "Programm ende",command = bk2)
b2.place(x=0,y=110)
#def bk1(int stop): -> int stop ist ein Parameter -> (start / stop) Flag.
def bk1():
print ("an")
# subprocess.call(["sudo","python","/home/pi/forum/blinken1.py"])
# Hier ist eigentlich Vorhaben / Auswirkung ... ??? deines ->blinkeng.py Script implementiert
#LED aus
GPIO.output(11, GPIO.LOW)
# eine Sekunde warten
time.sleep(1)
#LED an
GPIO.output(11, GPIO.HIGH)
# eine Sekunde warten
time.sleep(1)
def bk2():
print ("aus")
# Hier kann aber eine Stop-Flag gesetzt werden, damit die <code> def bk1() </code> Funktion deaktiviert (gestopt) wird.
stop = 1 #True
f.mainloop()
Fenster()[/php]
Gruß
Georg
Die Validierung (Validierungsdauer) soll zeitlich beschränkt sein.
(Heute / Jetzt) - denke ich mir weis keiner was in dem Code so implementiert ist. (???)
Schnully
Poste bitte Deine beiden (AKTUEL) Code (blinkeng.py ,Windows.py)
Erst danach kann man dir (denke ich mir) weiterhelfen.
Gruß
Georg
@ __deets__
ok - sorry &
Danke
@ tigertim08
es gibt sogar viele Projekte in der Art.
Suche bitte nach:
Raspberry Reaktionsspiel
sorry - falche Angaben
[font="Arial"]Hier versuchen dir viele zu Helfen![/font]
[font="Arial"]Die sehr Erfahrenen haben versucht dir AUCH zu Helfen!
...[/font]
[font="Arial"]Ein Forum serviert EUCH! meistens alles auf einem Silbertablett.[/font]
[font="Arial"]Bei NUR ETWAS eigeninitiative hättest du vielleicht sogar den Goldentablett [/font]
[font="Arial"](Full- Lösung) bekommen.[/font]
Eine Aktion (Klick) ist ... mit einer REAktion (Lauscher) verbunden.
ich schließe mich dem meigraf
Lerne die Grundlagen
Gruß
[font="Arial"]Georg[/font]
Hmmm,
ich vermute die Entwickler wollten uns Helfen und eine Art ?Kompensation in "die Sache" eingebaut haben.
Habe gerade den Script von Jan ausprobiert.
Wenn die "default´s" angehalten werden ->also:
- Messbereich stimmt
- ...
- keine Störungsquellen vorhanden
- ...
funktioniert das Script 1A.
Wird das Sensor bewegt , schnell bewegt, ... kein Fixierpunkt gefunden .... so bekommt man keine bis Falsche Anzeigen.
...
Gruß
Georg
Hallo Grummel,
es gibt mehreren Dutzend Beispielen dafür - etwas Ausdauer (andere Tut´s ausprobieren) BITTE!
Dein Fehler ist:
Initialisieren der Zeit in der selber Referenz. -> Kurz:
Die Zeidiferenzen werden verglichen, aber die Initialisierung erfolgte in Deinem Code NUR für StartTime Variable
Die Stop wurde sich in anderem Zeitpunkt geholt!
also bitte:
[code=php]...
#--------------31--------------------
# store initial start time
StartTime = time.time()
StopZeit = time.time() # < ------- hier beide Time-Flags initialisieren
# store start time
while GPIO.input(GPIOEcho) == 0:
...[/php]
hmmm:
Gruß
Georg
Hallo,
damit eine LED in einem gewissen Takt blinkt, muss die Soundquelle "zerlegt" werden.
Bei (nicht digitaler Form) also einem Sound- Track, bekommt man den Takt (... relativ breites Thema ... ) meistens aus dem Schlagzeug - Bassgitarre ... . Aus dem Soundspektrum muss die Musikalische 1 (eins) extrahiert werden. Dafür sind (By ....... Pas) Filter erfunden worden.
Simple RC / CR Filter, haben schon ziemlich gute Arbeit geleistet.
Suche nach Soundspektrum filtern - oder ähnliches.
(in den 70-ger waren die berühmte RGB Licht orgeln sehr beliebt)
Paar Widerstände und Kondensatoren haben grade bei den Tiefen -> also Takt sehr gute Resultate erzeugt.
Gruß
Georg
Hallo Mitmacher,
der MCP3008 kann man auf zwei Arten Auslesen.
Du benutzt die SPI Variante:
...
#include <wiringPi.h>
#include <gertboard.h>
// read SPI data from MCP3008 chip, 8 possible adc's (0 thru 7) <--!!!!
int readadc(adcnum)
{ ...
daher muss Dein "Stein" für die SPI Variante an den Raspi (?denke ich mir) angeschlossen werden:
Gruß
Georg
Hallo,
DANKE für Eure Antworten.
Arduino (Begriff wie auch Modul) ist / war mir schon bekannt, alles was Arduino betrifft wurde jedoch von mir "ignoriert", weil die Programmierung in C bzw. C++ erfolgt.
Dachte ich. ...
Mit C- .... C# selber, geht´s bei mir, nun Hardware, Embedded, Assembler ... ist nicht mein Fall.
...
Nun die Arduino IDE (?API) scheint mir sehr bekannt vor! ---> "Direkte" ?Methoden - Funktionen.
Die:
ESP8266
sieht auch viel versprechend aus.
DANKE
Gruß
Georg
Hallo,
ich habe eine Bitte;
- weil ich letzte Zeit in meinen "Bastlereien" grundsätzlich nur die ADC Auswertung benötige, möchte den RPI dafür nicht "missbrauchen". Außerdem einfaches Stromversorgungstrennung wird ebenso von Vorteil.
Ich suche also eine -> microcontroller Lösung für mein Basteln.
Ich war damals von JControl "schwer" begeistert.
In C-Control möchte ich jetzt nicht unbedingt einsteigen, (sollte ich etwas jüngerer sein - SEHR gerne.)
Ich bin Oberflächenprogrammierer - also Visualisierung, .... Multimedia, .... Simulationen.
verstehe ich zwar, ABER werde NIE, selber programmieren können. ....
Also ATtiny, ... Atmel ... ist nichts für mich.
Habe einen MicroPython - microcontroller gefunden. Ja Genau so was werde ich gerne benutzen. Es ist jedoch erstmall ein Projekt.
...
Frage:
Welche Alternativen habe ich?
Was Empfählt Ihr mir?
Für eine Antwort / Empfehlung werde ich mich sehr freuen.
Gruß
Georg
QuoteIst dieses Relais OK, oder habt ihr konkrete Vorschläge, welches Relais besser geeignet sein könnte?
Relais sind OUT!. Die verbrauchen relativ viel Strom. Aber Deine Auswahl ist ok.
QuoteDa das oben genannte Relais 2 Wechsler hat, kann ich doch beide Kanäle mit einem einzigen Relais schalten? ...
Kannst Du so machen.
QuoteSollte ich die Masse beider Audioquellen einfach zusammenlöten oder ebenfalls mit einem Relais umschalten?
Ja -Zusammenlöten.
Nun, ich werde es ehe "elektronisch" lösen.:
Weil hier (Lösung) sehr vieles geben kann (...Analogschalter mit Logikpegel-Shifter (DG419) ... ) suche nach Audio Weiche, Audio Mixer ...
Gruß
Georg
[font="Arial"]Hallo,[/font]
[font="Arial"]hier gibt es mehreren, die sich mit Python besser als ich auskennen ... sollte es noch aktuell sein;[/font]
[font="Arial"]Was Du suchst ist eine Art von ScreenManager. Mir bekannte Lösung ist eine GUI- Refresh.[/font]
[font="Arial"]Also das Fenster (ODER! Komponente die für das Anzeigen verantwortlich sind) soll / muss neu gezeichnet werden (Update).[/font]
[font="Arial"]Die / eine while Schleife ist hier -> fehl am platz. Eine Frame- Aktualisierung, kann durch Rekursives vorgehen realisiert werden. Es wird also eine Rekursive Methode / Funktion benötigt. Rekursiv, bedeutet, dass die Funktion / Methode sich selber aufruft.[/font]
[font="Arial"]Die after(....) Methode / Funktion ist dafür (Frame- Aktualisierung) -> wie geschaffen.[/font]
[font="Arial"] [/font]
[font="Arial"]LINK[/font]
[font="Arial"] [/font]
[font="Arial"]Eine (von mehreren) Lösung:[/font]
[font="Arial"] [/font]
def deinUhrzeit-Kramm-Methode():
now= time.localtime()
day= now.tm_mday
month= now.tm_mon
year= now.tm_year
hh=now.tm_hour
mm=now.tm_min
ss=now.tm_sec
Uhrzeit = "{0:02}:{1:02}".format(hh,mm)
datum = "{0:02}.{1:02}.{2:04}".format(day,month,year)
...
...
def [color=#cc3333]onUpdateScreen[/color](self):
# update displayed time
self.deinUhrzeit-Kramm-Methode()
# schedule timer to call myself after 1 second
self.after(1000, self.[color=#cc3333]onUpdateScreen[/color])
...
Display More
[font="Arial"] [/font]
[font="Arial"]Gruß[/font]
[font="Arial"]Georg[/font]
Automatisch zusammengefügt:[hr]
[font="Arial"]Hallo,[/font]
[font="Arial"]hier gibt es mehreren, die sich mit Python besser als ich auskennen ... sollte es noch aktuell sein;[/font]
[font="Arial"]Was Du suchst ist eine Art von ScreenManager. Mir bekannte Lösung ist eine GUI- Refresh.[/font]
[font="Arial"]Also das Fenster (ODER! Komponente die für das Anzeigen verantwortlich sind) soll / muss neu gezeichnet werden (Update).[/font]
[font="Arial"]Die / eine while Schleife ist hier -> fehl am platz. Eine Frame- Aktualisierung, kann durch Rekursives vorgehen realisiert werden. Es wird also eine Rekursive Methode / Funktion benötigt. Rekursiv, bedeutet, dass die Funktion / Methode sich selber aufruft.[/font]
[font="Arial"]Die after(....) Methode / Funktion ist dafür (Frame- Aktualisierung) -> wie geschaffen.[/font]
[font="Arial"] [/font]
[font="Arial"]LINK[/font]
[font="Arial"] [/font]
[font="Arial"]Eine (von mehreren) Lösung:[/font]
[font="Arial"] [/font]
def deinUhrzeit-Kramm-Methode():
now= time.localtime()
day= now.tm_mday
month= now.tm_mon
year= now.tm_year
hh=now.tm_hour
mm=now.tm_min
ss=now.tm_sec
Uhrzeit = "{0:02}:{1:02}".format(hh,mm)
datum = "{0:02}.{1:02}.{2:04}".format(day,month,year)
...
...
def onUpdateScreen(self):
# update displayed time
self.deinUhrzeit-Kramm-Methode()
# schedule timer to call myself after 1 second
self.after(1000, self.onUpdateScreen)
...
Display More
[font="Arial"] [/font]
[font="Arial"]Gruß[/font]
[font="Arial"]Georg[/font]