mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Assembler: Tastatur an Avr


Autor: Matze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe schon bei Google gesucht, wie ich eine Tastatur an einem avr 
(z.b. atmega8, atmega32) auslesen kann. Ich hab zwar bei Google mehrere 
Artikel gefunden, doch es gab keinen der über Assembler.

Undzwar habe ich folgendes vor:
In Assembler möchte den Code des Zeichens das auf der Tastatur gedrückt 
wurde, in ein Register bzw. Variable speichern, um nachher im weiteren 
Programmablauf darauf zugreifen zu können.

Ich fände es gut wenn jemand von euch einen Beispielcode hätte, der 
würde mir schon sehr viel weiterhelfen.


Vielen Dank schonmal im Vorraus.

Mfg
Matze

Autor: Reinhard Kern (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> In Assembler möchte den Code des Zeichens das auf der Tastatur gedrückt
> wurde, in ein Register bzw. Variable speichern, um nachher im weiteren
> Programmablauf darauf zugreifen zu können.

Hallo Matze,

üblicherweise richtet man dafür gleich einen (kleinen) FIFO-Buffer ein, 
damit nichts verlorengeht.

Ansonsten ist das nicht ganz so trivial: man muss sich gedrückte Tasten 
merken, weil sie sonst immer wieder eingelesen würden (eine 
Repeat-Funktion nach gewisser Zeit kann man trotzdem oft brauchen), und 
man muss die Tasten, die ja mechanische Kontakte sind entprellen, was 
mit dem Merken zusammen betrachtet werden kann, und ev. muss man 
gleichzeitig gedrückte Tasten erkennen oder unterdrücken, je nachdem was 
die Hardware erlaubt. Dafür ist in der Regel eine Timerroutine nötig, 
die eine Tastaturmatrix im Abstand von ms scannt. Wahrscheinlich findest 
du ein Tutorial o.ä. wenn du nach "Tasten entprellen" googelst.

Der Anschluss einer seriellen oder USB-Tastatur ist natürlich was ganz 
anderes, aber bei µC weniger üblich.

Gruss Reinhard

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> wie ich eine Tastatur an einem avr auslesen kann.
Was für eine Tastatur?

Autor: Vlad Tepesch (vlad_tepesch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Matze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
erstmal vielen Dank für eure Antworten.

Ich würde am liebsten eine ps/2 Tastaur an den avr anschließen. Wie 
könnte ich das denn in assembler machen?

Matze

Autor: Vlad Tepesch (vlad_tepesch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://tinyurl.com/2whlzld

Edit:
ok, Schande über mich, hab das assembler vergessen.
Warum willst du das eigentlich?
Glaubst du du kannst mit deinen Fähigkeiten besseren 
(kürzeren/schnelleren/fehlerfreieren) asm-Code erzeugen als der gcc?

wenns wirklich unbedingt asm sein soll:
nimm c-Code, jag' ihn durch den gcc und bau deinen asm-Code auf dem 
erzeugten Code auf.

Edit Edit:
insgesamt hört sich das ganze an wie "zu faul für eine Hausaufgabe"

Matze schrieb:
> Ich fände es gut wenn jemand von euch einen Beispielcode hätte, der
> würde mir schon sehr viel weiterhelfen.

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.