Forum: Mikrocontroller und Digitale Elektronik Taster inkrementiert und dekrementiert wert


von NICO (Gast)


Lesenswert?

Hallo zusammen!
Ich möchte über einen entprellten Taster daten am Port ausgeben.
ich habe mir ein board  mit 3 taster gebaut
der 1 taster inkrementiert ein 8 bit Wert und schiebt es raus
der 2 taster dekrementiert den 8 bit Wertund schiebt es aus
der 3 taster realisiert die Mute Funktion Wert= 0x00
er hängt an einen Atmega 88.Das ganze steuert einen digitalen 
Lautstärkesteller (PGA2320)
mein programm laüft schon so weit : ich kriege eine angeschlossene LED 
an
Habt dir ein denkansatz oder eine anfangsroutine parrat?
wäre super wenn da jemand mir helfen könnte.

von Karl H. (kbuchegg)


Lesenswert?

> Habt dir ein denkansatz oder eine anfangsroutine parrat?

Mir ist nicht ganz klar, worauf die Fragestellung hinaus will.
Aber ich habe eine Vermutung. Die Frage dürfte lauten:
Wenn der Mega88 eingeschaltet wird, auf welchen Wert soll
er dann stellen?

Ich würde den zuletzt benutzten Wert im EEPROM zwischenspeichern,
dann kann er beim nächsten Einschalten von dort wieder ausgelesen
werden und damit hat man wieder die gleiche Stellung wie vor
dem Strom-aus. Und als allererster Startwert kommt eine 0 ins EEPROM,
damit dir beim allerersten Einschalten nicht der Verstärker
um die Ohren fliegt.

von Karl H. (kbuchegg)


Lesenswert?

Quatsch.
Ich habe die Frage missverstanden.
Die Frage lautet ganz einfach:
Wie realisiere ich dieses
  * der 1 taster inkrementiert ein 8 bit Wert und schiebt es raus
  * der 2 taster dekrementiert den 8 bit Wertund schiebt es aus
  * der 3 taster realisiert die Mute Funktion Wert= 0x00

Und da kommt von mir die Gegenfrage:
Wenn du sagst du kannst eine LED einschalten, kannst du das
dann auch mit einem Taster machen? Wenn ja, wo liegt das Problem?
Eine Variable hernehmen, die repräsentiert den auszugebenden
Wert. Ist ein Taster gedrückt wird der Wert erhöht, ist
ein anderer gedrückt wird der Wert verringert.

Zur Tastenauswertung möchtest du ev. diesen Link
mal studieren:
http://www.mikrocontroller.net/articles/Entprellung#Komfortroutine_.28C_f.C3.BCr_AVR.29

Anmerkungen zum Posten allgemein
* so wie zuwenig Details schaden, so kann auch ein zuviel an Details
  schaden.
* immer klarstellen, dass die Programmiersprache eindeutig hervorgeht
* Darauf achten, dass die eigentliche Frage eindeutig ist und
  aus der Formulierung hervorgeht, was du möchtest und wobei
  genau du Hilfe brauchst
* Wenn notwendig: Source Code ersetzt eine elends lange und
  mehrdeutige Beschreibung dessen, was du denkst das dein Code
  macht.

von NICO (Gast)


Lesenswert?

"Eine Variable hernehmen, die repräsentiert den auszugebenden
Wert. Ist ein Taster gedrückt wird der Wert erhöht, ist
ein anderer gedrückt wird der Wert verringert."

genau das ist meine Frage ? Ich progammiere in Assembler.
hab mir das link angeguckt hat hat mich nicht so weitergeholfen!

von Karl H. (kbuchegg)


Lesenswert?

NICO wrote:
> "Eine Variable hernehmen, die repräsentiert den auszugebenden
> Wert. Ist ein Taster gedrückt wird der Wert erhöht, ist
> ein anderer gedrückt wird der Wert verringert."
>
> genau das ist meine Frage ? Ich progammiere in Assembler.
> hab mir das link angeguckt hat hat mich nicht so weitergeholfen!

Ist klar, der Link hilft dir dann nicht weiter.
Aber das AVR-Assembler Tutorial hilft weiter.
http://www.mikrocontroller.net/articles/AVR-Tutorial

Fang vorne an.

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.