-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Tastatur/Interrupt

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    20.12.2005
    Beiträge
    31

    Tastatur/Interrupt

    Anzeige

    Hallo,

    ich möchte mit Bascom und einem AVR eine Tastatur ansprechen. Ist es irgendwie möglich die GETATKBD-Routine erst zu starten, wenn ein Zeichen kommt?


    mfg
    Flo

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Ja,wenn du weißt das eins kommt dann kannste das gezielt starten.

    aber ohne Hellseherische fähigkeiten wird das kaum was werden.

    Mal nen Tip:

    Nimm nen kleinen Controller (zb. 8-Pol Tiny) der einzig und allein die Tastatur bedient und der sich per I2C oder 232 beim "Hauptrechner" meldet.
    Damit kommste streßärmer ans Ziel
    Gruß
    Ratber

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    20.12.2005
    Beiträge
    31
    Und mit Clock auf Interrupt kommt man auch nicht weiter?


    mfg
    Flo

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Ja,das geht natürlich.


    Wenn man einwenig in die Historie geht dann ist der alte Tastaturanschluss nix anderes als eine normale Serielle die man im laufe der Zeit nur etwas verkrüppelt hat (Feste Baudrate,Parität usw.).
    Die kann unter alten DOS-Verionen auch noch korekt unter Com0 angesprochen werden.
    Hier gilt also fast das gleiche wie bei ner gewöhnlichen Seriellen.
    Gruß
    Ratber

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    20.12.2005
    Beiträge
    31
    Sorry hab ich aber jetzt noch nicht ganz verstanden. Sobald ein Zeichen kommt, geht doch Clock auf LOW oder? Und das auch mehrmals pro Zeichen.
    Und ein Interrupt wird doch bei HIGH ausgelößt oder?
    Hab Gestern noch ein bisschen rumprobiert - kann das sein, dass ein / oder ein * am Nummernblock einen anderen ASCII-Code produziert als auf der "normalen" Tastatur?

    mfg
    Flo

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Und ein Interrupt wird doch bei HIGH ausgelößt oder?
    Das kannst du im MCU-Register mit den Bits 3 und 2 festlegen wie gewünscht.

    Int immer solange Low,bei steigender / Fallemder Flanke oder bei jeder Flanke.

    Schau ins Datenblatt unter "External Interrupts"
    Gruß
    Ratber

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    20.12.2005
    Beiträge
    31
    Hab ich das im Datenblatt jetzt falsch verstanden oder geht das mit Int0 nicht?
    Also ich muss dann einstellen, dass er einen Interupt auslöst, wenn er Low geht. Stimmt das?
    Aber ich hab keine Ahnung wie ...


    mfg
    Flo

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Keine Ahnung ob das bei deinem AVR geht denn du hast ja auch noch nicht verraten welchen du überhaupt nutzt. (Kristallkugel is gerade zur Wartung.Empfang war schlecht).
    Nicht jeder AVR hat nen externen Int.
    Gruß
    Ratber

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    20.12.2005
    Beiträge
    31
    Ein Mega8 wär´s sorry!

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Ja der M8 hat Zwei externe Interupts
    Int0 auf D2 und Int auf D3

    Entsprechend ist auch das passende Register
    MCUCR vorhanden.


    Bits 0 und 1 für Int0 und Bits 2 und 3 für Int 1 geben an auf welche Flange bzw, Pegel der Int reagiert.

    Wie gesagt steht alles im Daternblatt unter "External Interrupts"
    Gruß
    Ratber

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •