snafu
19.08.2012, 11:04
Guten Morgen!
Seriell empfangen mit Handshake geht in Bascom ja prima. (Config Serialin).
Mein Problem ist die Senderichtung: Ich benötige für ein langsames Display die Möglichkeit, die CTS-Leitung des Displays abzufragen, und den seriellen Datenstrom, wenn CTS=1, zu pausieren.
Ich habe mir jetzt Config Serialout eingerichtet, in der Hoffnung, in der von der gepufferten Senderoutine benutzen Unterroutine _CheckSendChar die CTS - Leitung abfragen zu können. Leider wird diese Routine scheinbar nicht angesprungen - meine rüde Wartezeit von einer Sekunde wird nicht berücksichtigt :( ...
Weiss jemand vielleicht eine Lösung, oder einen anderen Weg, seriell mit Handshake senden zu können?
Herzliche Grüße
Snafu
$crystal = 20000000
$regfile = "m168def.dat"
$baud = 38400
Config Serialout = Buffered , Size = 254
Enable Interrupts
Dim Loops As Word
Print Chr(170) ; "CG="
'go to terminal mode
Print Chr(27) ; "[2J";
'clear display
Waitms 100
Do
Print Chr(27) ; "[2J";
Print "The quick brown Fox jumps over the Lazy dogs back" ; Chr(13);
Waitms 30
Print "1234567890";chr(13);
Print "ÖÄÜßöäü" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print Loops;
Incr Loops
Waitms 1000
Loop
_checksendchar:
Wait 1
reti
Seriell empfangen mit Handshake geht in Bascom ja prima. (Config Serialin).
Mein Problem ist die Senderichtung: Ich benötige für ein langsames Display die Möglichkeit, die CTS-Leitung des Displays abzufragen, und den seriellen Datenstrom, wenn CTS=1, zu pausieren.
Ich habe mir jetzt Config Serialout eingerichtet, in der Hoffnung, in der von der gepufferten Senderoutine benutzen Unterroutine _CheckSendChar die CTS - Leitung abfragen zu können. Leider wird diese Routine scheinbar nicht angesprungen - meine rüde Wartezeit von einer Sekunde wird nicht berücksichtigt :( ...
Weiss jemand vielleicht eine Lösung, oder einen anderen Weg, seriell mit Handshake senden zu können?
Herzliche Grüße
Snafu
$crystal = 20000000
$regfile = "m168def.dat"
$baud = 38400
Config Serialout = Buffered , Size = 254
Enable Interrupts
Dim Loops As Word
Print Chr(170) ; "CG="
'go to terminal mode
Print Chr(27) ; "[2J";
'clear display
Waitms 100
Do
Print Chr(27) ; "[2J";
Print "The quick brown Fox jumps over the Lazy dogs back" ; Chr(13);
Waitms 30
Print "1234567890";chr(13);
Print "ÖÄÜßöäü" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print "012345678901234567890123456789023456789" ; Chr(13);
Print "---------------------------------------" ; Chr(13);
Print Loops;
Incr Loops
Waitms 1000
Loop
_checksendchar:
Wait 1
reti