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
Und mit Clock auf Interrupt kommt man auch nicht weiter?
mfg
Flo
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
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
Das kannst du im MCU-Register mit den Bits 3 und 2 festlegen wie gewünscht.Und ein Interrupt wird doch bei HIGH ausgelößt oder?
Int immer solange Low,bei steigender / Fallemder Flanke oder bei jeder Flanke.
Schau ins Datenblatt unter "External Interrupts"
Gruß
Ratber
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
Ein Mega8 wär´s sorry!
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
Lesezeichen