Forum: Mikrocontroller und Digitale Elektronik SchleifenZähler


von Claude B. (boclaude)


Angehängte Dateien:

Lesenswert?

Hallo an alle.
ich bin gerade bein lernen zu programieren mit STK 500. ich habe ein 
klein Prog gebasteltmit den ich noch die Schleifen durchlauf 
(noch)manuel ändern kann sowie wieviel leuchtdiode eingesetzt werden 
können. Dans funktioniert alles gans gut bis ich versucht habe ein 
Abfrage der tasten per interupt einzubauen. Das programm funktioniert 
nicht mehr und ich bekomme das ohne hilfe nicht mehr.

Hier ist der Aktuelestand mein Arbeit

Konnte mir jemand helfen  Danke
Claude

von Teo D. (teoderix)


Lesenswert?

Hi,

kenn mich mit AVR asm nicht aus!

1. Muss die Tastenabfrage über Interrupt laufen?
Macht die Sache nur unnötig schwieriger.

2. Haste drann gedacht den Interrupt ausreichend lange zu sperren, damit 
der nicht das Prellen zählt. Eine repeat Funktion sollte natürlich auch 
in Menschlicher Reaktionszeit liegen. Wenn kein repeat, darf er 
natürlich erst wieder freigegeben werden wenn die Taste eine Zeitlang 
nicht mehr gedrückt ist....



PS:
Das nächste mal bitte etwas ausführlicher, als nur:
> Das programm funktioniert
> nicht mehr und ich bekomme das ohne hilfe nicht mehr.

von Karl H. (kbuchegg)


Lesenswert?

Der momentan wichtigere Punkt scheint mir zu sein, erst mal die leidigen 
Warteschleifen los zu werden.

Derartige Warteschleifen sind zwar für den Anfang in Ordnung. Je besser 
man aber in der Programmierung wird, desto eher muss man danach trachten 
sie los zu werden! Zeitsteuerungen in ernst zu nehmenden Programmen 
laufen praktisch immer über einen Timer ab.

Und genau das würde ich auch als deinen nächsten Meilenstein ansehen: 
Den Umbau des Programms auf eine Zeitsteuerung mittels Timer. Diese 
Änderung ist dann wieder Ausgangspunkt für weitere 
Programmerweiterungen, wie zb Tastenabfragen.

AVR-Tutorial

von Claude B. (boclaude)


Lesenswert?

Hallo TTeo Derix und Karl Heinz

also zu erste ich bin noch nicht so weite das Lern prozess dauer doch 
noch ein bisschen. Für ein Tastatureabfrag, Muss ich noch warten da ich 
mein Scheifen noch nicht richtig gegrich habe. ich möchte nach und nach 
weiter aufbauen und der timer ist schon vorgesehen. nun ich such ein 
spezialist die mir zeigen kann wo ich ein fehler gemacht habe, mon 
Programm hat funktioniert aber leider nicht mehr.was mir naturlich nicht 
mehr passieren werde, ich möchte mein Programmen jetzt auf papier 
bringen werde.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

1
;      Rettung der Register
Dort sollte übrigens auch das PSW gerettet werden, denn der DEC Befehl 
ändert das PSW...  :-o

von Claude B. (boclaude)


Lesenswert?

Ubs ich werde gleich ändern

Vielen Danke

von Claude B. (boclaude)


Lesenswert?

Hallo Lothar,

Wo bekomme ich dieser "PWS" ??

von Dietrich L. (dietrichl)


Lesenswert?

Claude Bochard schrieb:
> Wo bekomme ich dieser "PWS" ??

Lothar meinte PSW = Program status word; beim ATmega8 ist es das Status 
Register SREG.

Gruß Dietrich

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.