mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik digitales poti ansteuern


Autor: Helmut G. (gowea)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Helmut G. (gowea)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich sollte natürlich in der lage sein so etwas simples zu machen.

gemacht sollte es werden mit c und einem ATmega16

da ich mit der c-programmiersprache noch nicht so bewandert bin, hab
ich noch nicht viel plan von der ganzen sache!!

mfg

Autor: Manos (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Helmut G. (gowea)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich hab mir gedacht, das ich das poti einfach über einen pin zB von port
c an den atmega16 anschließe...

ich muss ja einfach nur den steuereingang vom poti von 1 auf 0 ziehen
und schon erhöht sich der widerstandswert um einen schritt.

kann ich das so machen??

Autor: Günther Schmidt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welches Poti meinst du denn???

Wenn das Datenblatt es sagt, kannst du es so machen.

Günther

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Helmut G. (gowea)
Datum:

Bewertung
0 lesenswert
nicht 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).

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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)?

Autor: Helmut G. (gowea)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Helmut G. (gowea)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hi leute, schaut euch bitte mal mein werk an...
kann das funktionieren??

lg helli

Autor: Helmut G. (gowea)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also, der untere teil gehört nich mehr dazu!!!

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das, was du als Funktion beschreibst, ist keine. Sie wird doch garnicht
aufgerufen. Außerdem: Da fehlt eine main () Funktion

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.