Gpio pins funktionieren nicht so wie geplant?
also bin neu in der micrcontroller thematik und wollte deswegen ein recht leichtes Programm schreiben.
als ich das proramm fertig hatte und es davor in einem emulator getestet hatte habe ich das programm auf mein rasberry pi pico geladen
dann hatte ich mitbekommen das keiner der gpio pins ein Input annehmen wenn ich ein Knopf drücke obwohl es bei dem Emulator funktioniert hatte
ich hatte dann alles unnötige rausgenommen und nur das drin gelassen um den input abzufragen hier der code:
from machine import Pin
button_pin = Pin(1, Pin.IN, Pin.PULL_DOWN)
while True:
print(button_pin.value())
dabei blieb der Knopf auch auf 0 als Wiedergabe wert dann hatte ich denn Pin.PULL_DOWN teil rausgenommen und es blieb bei 0 also egal was ich machte es blieb bei null als cih die knöpfe als ein Output Konfiguriert habe hatte ich eine Ppannung von ca 3volt
Wie war der Taster angeschlossn?
Über gpio 1 und ground was falsch war habe es jetzt auf gpio 1und der 3,3v Spannungsversorgung gelegt ich werd aber mich belesen müssen ob das so gut ist für den mc
In wie fern sollte das schlecht sein?
Übrigens auch so wie du es gemacht hast passts, allerdings musst du dann eben den Pullup Widerstand aktivieren statt dem Pulldown.
Also du hast entweder die Möglichkeit Pulldown und den Schalter gegen 3.3V oder Pullup und den Schalter gegen Masse.
danke danke
Was bedeutet in dem Fall ziemlich schwanken?
Dass da ein Rauschen auf dem Signal ist, ist vollkommen normal. Das Rauschen kannst du zB dadurch vermindern, dass du parallel zum Adc Eingang einen Kondensator etw 100nF dazu gibst.
Den Rest musst du digital Filtern. Der einfachste Filter hier wäre ein Mittelwertfilter.
danke ich habe da noch eine andere frage.
und zwar habe ich ein Potentiometer an mein Pico angeschlossen und habe bei einem Test lauf gesehen das die werte ziemlich stark schwanken ich habe es mit verschiedenen Potentiometer probiert aber immer mit dem gleichen Ergebniss hättest du eine zuverlässige Lösung?.
ich möchte den pico später für ein Projeckt verwenden wo präzise werte gut sind