digitales poti ansteuern

OP #345599
Lesenswert?

hallo leute!
nachdem ich mein adc problem unter Hilfe von euch gelöst habe danke
hab ich ein neues problem!!

aufgabenstellung: ich soll ein digitales poti so ansteuern, dass bei
jedem tastendruck (zB mit taster auf stk500) sich der widerstandswert
des potis verändert (bei logisch 1 bei poti ändert sich nichts, ist so
definiert von hersteller; bei anlegen von 0 erhöht sich der
widerstandswert um eine stufe)

hat jemand mal schon so ein programm geschrieben, oder eine gute idee
wie ich das realisieren kann?

danke schon mal im vorraus
Gast #345600
Lesenswert?

Mal ganz davon abgesehen, daß Du in der Lage sein solltest, einen
Poetpin von 1 auf 0 wechseln zu lassen, kannst Du uns ja verraten, in
welcher Programmiersprache und mit welchem Prozessor das gemacht werden
soll?
Gast #345602
Lesenswert?

Da Du bisher nicht darauf eingegangen bist wie das digitale Poti
angebunden ist (Seriell, I2C, SPI, Parallel) würde ich allgemein mal
sagen, dass Du
- eine entprellte Tastaturabfrage benötigst
- welche eine Variable/Register incrementiert
- und diese Variable/Register dann an den Poti schickt
Gast #345605
Lesenswert?

Genau so. Wenn Du jetzt noch weißt, welches DigiPoti Du nehmen willst,
könnte man sich noch spezieller dazu äußern. Ich denke nämlich nicht,
daß das Poti nur einen einzigen Steuerpin hat, oder?
OP #345606
Lesenswert?

Digitales Potentiometer:
DS 1809Z-010

Der Widerstandsbereich von 10kOhm wird in 100 gleich große Schritte
unterteilt, hierbei sind Anfangs und Endpunkt bereits inkludiert. Die
Schrittweise des Potentiometers liegt also bei 100Ohm.
Die Steuereingänge UC und DC verändern die
„Schleiferposition“.
UC erhöht die Position in Richtung Maximalwert (RH), DC verringert die
Position in Richtung Minimalwert (RL). Die beiden Eingänge sind intern
mit einem 100kOhm Widerstand zur Versorgung geschaltet. Soll nun die
Schleiferposition verändert werden muss der der dazu vorgesehene
Eingang gegen Masse geschaltet werden.
Eine HIGH-LOW Folge wird als Beginn der Eingangsaktivität gewertet.
Ein Einzelpuls wird im Bereich von 1ms bis 500ms gewertet, der
Minimalabstand aufeinander folgender einzelner Pulse beträgt 1ms.
Sollte der Eingang länger als 500ms getastet bleiben wird das Signal
als kontinuierlicher Puls wahrgenommen (push and hold).
Gast #345607
Lesenswert?

Na das sagt doch alles. Du mußt also 2 Pins an den Controller schalten
und hast auch noch eine Sonderfunktion, außerdem mußt Du die
Steuereingänge gegeneinander verriegeln. Einen Timer solltest Du
benutzen, um die Intervallspezifikationen erfüllen zu können. Dann die
oben erwähnte Tasterentprellung und dann ist´s gut. Andere Frage: was
soll denn das Poti steuern? Vielleicht könnte der Controller ja dabei
noch Regelaufgaben lösen (mit seinem A/D zum Beispiel)?
OP #345608
Lesenswert?

Die Potis steuern zB die Offsetspannung an einem Sensor-Messverstärker

Fortlaufend ist gefordert, dass die Kennlinie am Ausgang des
Verstärkers in eine Spannung umgewandelt wird (mit Lastwiderstand) und
das diese Spannung in den ADC geschickt wird. Abhängig vom
Spannungs-Wert sollen dann verschieden die LEDs lechten zB. wenn
Eingangsspannung zwischen 0-0.5 Volt --> 1des LED leuchten; wenn
Eingangsspannung zwischen 0.5-1 Volt --> 2des LED leuchten;...

Zu oben: Für was brauch ich einen Timer, ich kann doch so oft auf die
Taste drücken, bis der Wert erreicht ist?! (Mehr braucht es nicht zu
können)

mfg
Gast #345609
Lesenswert?

>>Für was brauch ich einen Timer, ich kann doch so oft auf die
Taste drücken, bis der Wert erreicht ist?! (Mehr braucht es nicht zu
können)

Dann kannste die Tasten ja gleich an´s Poti benzeln und mußt den
Controller damit nicht nerven....

Nein, es ging darum, ein sauberes Programm zu entwerfen, welches die
Spezis des Potis eben genau erfüllt, dazu (und zum Entprellen der
Tasten) böte sich ein Timer an, da man damit recht komfortabel mehrere
Aufgaben lösen kann.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren