' SERIN.BS1 ' This program waits for the characters "A", "B", "C", and "D" to arrive ' at the serial input (inverted, 2400 baud, N81), followed by a number, ' then a carriage-return or some other non-number character. The number is ' then displayed in the Debug window. ' {$STAMP BS1} ' {$PBASIC 1.0} SYMBOL SIn = 0 SYMBOL Baud = N2400 SYMBOL result = W1 Main: SERIN SIn, Baud, ("ABCD"), #result DEBUG #result, CR GOTO Main END
NOTE: The example below is written for the BS2 and will run on any of the BS2-family modules. Modify the $STAMP directive (as required) before downloading to the BS2e, BS2sx, BS2p, BS2pe, or BS2px.
' SERIN_SEROUT1.BS2 ' Using two BS2-IC's, connect the circuit shown in the SERIN command ' description and run this program on the BASIC Stamp designated as the ' Sender. This program demonstrates the use of Flow Control (FPin). ' Without flow control, the sender would transmit the whole word "Hello!" ' in about 1.5 ms. The receiver would catch the first byte at most; by the ' time it got back from the first 1-second PAUSE, the rest of the data ' would be long gone. With flow control, communication is flawless since ' the sender waits for the receiver to catch up. ' {$STAMP BS2} ' {$PBASIC 2.5} SO PIN 1 ' serial output FC PIN 0 ' flow control pin #SELECT $STAMP #CASE BS2, BS2E, BS2PE T1200 CON 813 T2400 CON 396 T9600 CON 84 T19K2 CON 32 T38K4 CON 6 #CASE BS2SX, BS2P T1200 CON 2063 T2400 CON 1021 T9600 CON 240 T19K2 CON 110 T38K4 CON 45 #CASE BS2PX T1200 CON 3313 T2400 CON 1646 T9600 CON 396 T19K2 CON 188 T38K4 CON 84 #ENDSELECT Inverted CON $4000 Open CON $8000 Baud CON T38K4 + Inverted Main: DO SEROUT SO\FC, Baud, ["Hello!", CR] ' send the greeting PAUSE 2500 ' wait 2.5 seconds LOOP ' repeat forever END
' SERIN_SEROUT2.BS2 ' Using two BS2-IC's, connect the circuit shown in the SERIN command ' description and run this program on the BASIC Stamp designated as the ' Receiver. This program demonstrates the use of Flow Control (FPin). ' Without flow control, the sender would transmit the whole word "Hello!" ' in about 1.5 ms. The receiver would catch the first byte at most; by the ' time it got back from the first 1-second PAUSE, the rest of the data ' would be long gone. With flow control, communication is flawless since ' the sender waits for the receiver to catch up. ' {$STAMP BS2} ' {$PBASIC 2.5} SI PIN 1 ' serial input FC PIN 0 ' flow control pin #SELECT $STAMP #CASE BS2, BS2E, BS2PE T1200 CON 813 T2400 CON 396 T9600 CON 84 T19K2 CON 32 T38K4 CON 6 #CASE BS2SX, BS2P T1200 CON 2063 T2400 CON 1021 T9600 CON 240 T19K2 CON 110 T38K4 CON 45 #CASE BS2PX T1200 CON 3313 T2400 CON 1646 T9600 CON 396 T19K2 CON 188 T38K4 CON 84 #ENDSELECT Inverted CON $4000 Open CON $8000 Baud CON T38K4 + Inverted letter VAR Byte Main: DO SERIN SI\FC, Baud, [letter] ' recieve one byte DEBUG letter ' display on screen PAUSE 1000 ' wait one second LOOP ' repeat forever END
BASIC Stamp Help Version 2.5.4
Copyright © Parallax Inc.
8/8/2012