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


von dommes (Gast)


Angehängte Dateien:

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...

von Florian Schmid (Gast)


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

von dommes (Gast)


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

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.