
Zitat von
PicNick
unter der Annahme, dass das Speichern nicht zu langsam ist. Müsst man ausrechnen, bis zu welcher baudrate es reicht.
9600 Baud = 9600 Bit/Sek, bei 16 MHz sind dann 1667 Takte pro Bit, da kann er viel speichern. Auch bei 76800 Baud, welche bei 16 MHz nur 0.2% Fehler hätten, wären's noch 208 Takte, sollte auch noch locker reichen. Voraussetzung ist, dass keine Interrupts unterbrechen.
Code:
' inkey (#1) ---------------------------------
L_0x00F0:
SBIS 0x0016,4 ' check PortB.4
RJMP L_0x00F8
CLR r24 ' return 0
RET
Der Unterschied von Waitkey ist minimal
Code:
' waitkey (#1) ---------------------------------
L_0x00F0:
SBIS 0x0016,4 ' wait PortB.4 = 0
RJMP L_0x00F6 ' start
RJMP L_0x00F0 ' cont'd wait
Das ist der einzige Unterschied
Aber der Entscheidende.
Lesezeichen