www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Auswahl-Lauflicht-Programm mit St62


Autor: dommes (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich bin seit einer Woche dabei mit dem ST62 Starterkit zu
experimentieren.Dazu hab ich verscheidene (LED) Lauflicht-Programme
geschrieben, die früher oder manchmal auch etwas später ;)
funktionierten. Jetzt bin ich soweit, dass ich einen Port (C) als
digitalen Eingang verwende, um durch umlegen eines angeschlossenen
Schalters zwischen 2 programmabläufen hin- und herswitchen zu
können.Das funktioniert auch noch.Was aber nicht funktioniert, und ich
weiss einfach nicht wieso, ist die Steuerung der Zeitschleife über ein
externes signal, dass über den integrierten ad-wandler eingelesen
werden soll.Ich hab also einen poti an den als analogen eingang
definierten port (A) angeschlossen.Leider kann ich dran drehen soviel
ich will, die Geschwindigkeit des Lauflichts bzw. die Dauer der
Warteschleife bleibt konstant.

Wenn sich jemand von euch mit diesem MC auskennt, wäre ich sehr
dankbar,wenn er sich das Programm mal ansehen könnte,ich komm nämlich
einfach nicht auf den Fehler... Achja ich verwende den ST62E25 HWD,
deshalb auch die ständigen Watchdog-Refreshes im Prog...

Wenn ihr noch was wissen müsst, fragt mich..
schon mal danke

lg dommes

PS: das eine Lauflichtprog. funktioniert wie Knight Rider (zugegeben
ist der erste teil etwas umständlich), dass andere läuft von innen nach
aussen und wieder zurück...

Autor: Florian Schmid (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

in Deiner START fehlt ein SET 4,adcr
Nach einem RESET befindet sich der A/D-Wandler des ST62xx im
Power-Down-Mode. Das Bit 4 (PDS) PowerDownSelection im ADCR-Register
schaltet die Spannungsversorgung des A/D-Wandlers ein.
Bei ausgeschaltetem Wandler ist das EOC-Bit gesetzt und die EOC-Abfrage
(adc JRR eoc,adcr,adc) signalisiert End_off_convert.
Der nun aus dem LD a,adr gelesene Wert ist dann immer 00H? oder FFH?.
Sicherheitshalber solltest Du auch noch einen Wachhund-RESET einbauen.
    SET sta,adcr
adc LDI wdr,0FEH
    JRR eoc,adcr,adc
    ...


Gruß
 Florian

Autor: dommes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke dir Florian!!
Das war genau der Fehler,hab vergessen den A/D-Wandler übers pds - Bit
einzuschalten.
Jetzt läufts perfekt.
thx & cu
dommes

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.