BASIC stamp manual v2.2
POLLIN – BASIC Stamp Command Reference
Page 314 • BASIC Stamp Syntax and Reference Manual 2.2 • www.parallax.com
user program; giving the appearance that it is polling "in the background".
This feature should not be confused with the concept of interrupts, as the
BASIC Stamp does not support true interrupts.
The following is an example of the POLLIN command:
POLLIN 0, 0
POLLMODE 2
The POLLIN command in the above code will cause the BASIC Stamp to
set I/O pin 0 to an input mode and get ready to poll it for a low (0) state.
The BASIC Stamp will not actually start polling until it is set to the
appropriate mode, however. The second line, POLLMODE, initiates the
polling process (see the POLLMODE description for more information).
From then on, as the BASIC Stamp executes the rest of the program, it will
check for a low level (logic 0) on I/O pin 0, in-between instructions.
In the code above, no obvious action will be noticed since we didn't tell the
BASIC Stamp what to do when it detects a change on the I/O pin. One
possible action the BASIC Stamp can be instructed to take is to change the
state of an output, called a polled-output. Take a look at the next example:
POLLIN 0, 0
POLLOUT 1, 1
POLLMODE 2
Main:
DEBUG "Looping...", CR
GOTO Main
In this example, in addition to an endless loop, we've added another
polling command called POLLOUT (see the POLLOUT description for
more information). Our POLLOUT command tells the BASIC Stamp to set
I/O pin 1 to an output mode and set it high (1) when it detects the desired
poll state. The poll state is the low (0) level on I/O pin 0 that POLLIN told
it to look for. If the polled-input pin is high, it will set polled-output pin 0
to low (0), instead.
Once the program reaches the endless loop, at Main, it will continuously
print "Looping…" on the PC screen. In between reading the DEBUG
command and the GOTO command (and vice versa) it will check polled-
input pin 0 and set polled-output pin 1 accordingly. In this case, when
I/O pin 0 is set low, the BASIC Stamp will set I/O pin 1 high. When I/O
A SIMPLE POLLIN EXAMPLE.
S
ETTING ONE OF THE POSSIBLE ACTIONS:
POLLED
-OUTPUTS