mikrocontroller.net

Forum: Compiler & IDEs LED mit Taster steuern


Autor: Max Kenzie (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab das STK500 und den ATmega16.
Eigentlich hab ich net viel vor, aber das bringt mich schon zur
Verzweiflung:
Jeder Taster (PORTD) soll die zugehörige LED (PORTB) steuern und zwar
mit folgendermaßen:
Am Anfang sind alle LED's ausgeschalten. Nach drücken des jeweiligen
Tasters soll die zugehörige LED ihren Zustand ändern, anders gesagt:
War sie aus soll sie ein sein und umgekehrt (wie ein JK FlipFlop im
Toggle Betrieb).


Hat mir jemand als Hilfe die passenden Zeilen parat?

Danke schonmal
Max

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man könnte ja mal in der Codesammlung stöbern ...


Peter

Autor: Fiffi (Gast)
Datum:
Angehängte Dateien:
  • jk.zip (4,46 KB, 95 Downloads)

Bewertung
0 lesenswert
nicht lesenswert
Hallo Max,

im Anhang liegt ein kleines Beispiel.

Ich habe es nur im AVR-Studio getestet.


Gruß

Fiffi

Autor: Marc Terenz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schau mal im STK500 Handbuch nach (Seite 52)
dort ist ein Codebeispiel für Taster & Leds

:=)

Autor: Marc Terenz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Fiffi: WOOOOOOOOOW

so gehts einfacher (alter gcc stil):

#include <io.h>

int main (void)
{
  unsigned char in = 0;
  outp(0xff, DDRB);
  outp(0x00, DDRD);
  while (in != 0x7f) {
    in = inp(PIND);
    outp (in,PORTB);
  }
  return 0;
}


ABER ER MÖCHTE ES IN ASM WISSEN :=)

Marc

Autor: Marc Terenz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja das Entprellen sollte man auch nicht vergessen.

Marc

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ABER ER MÖCHTE ES IN ASM WISSEN :=)

Hat Dir das Deine Kristallkugel verraten? :))

Autor: Max Kenzie (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke, jetzt bin ich weitergekommen.. Wollte es sogar in C wissen :)
Brauchte nur mal den Denkanstoß

Gruß
Max

Autor: Fiffi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Marc,

>@Fiffi: WOOOOOOOOOW
>so gehts einfacher (alter gcc stil):

Mein Code erzeugt Flanken, die einen "main-loop" gültig sind.
Das ist gut geeignet um Taster auszuwerten.

Für das Taster/LED Beispiel etwas übertrieben ...



Gruß

Fiffi

Autor: Peter Fleury (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Wenn man diese Aufgabe sauber lösen will, kommt man um eine
Entprell-Routine mit Timerinterrupt nicht herum.

Als Anhang ein Beispiel wie man es machen kann.

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.