BASIC stamp manual v2.2

5: BASIC Stamp Command Reference – BUTTON
BASIC Stamp Syntax and Reference Manual 2.2 www.parallax.com Page 137
BUTTON
BS1 BS2 BS2e BS2sx BS2p BS2pe BS2px
BUTTON Pin, DownState, Delay, Rate, Workspace, TargetState, Address
Function
Monitor and process a pushbutton input, perform auto-repeat, and branch
to address if button is in target state. Button circuits may be active-low or
active-high.
Pin is a variable/constant/expression (0–15) that specifies the I/O
pin to use. This pin will be set to input mode.
DownState is a variable/constant/expression (0 or 1) that specifies
which logical state occurs when the button is pressed.
Delay is a variable/constant/expression (0 – 255) that specifies how
long the button must be pressed before auto-repeat starts. The delay
is measured in cycles of the BUTTON routine. Delay has two special
settings: 0 and 255. If Delay is 0, BUTTON performs no debounce or
auto-repeat. If Delay is 255, BUTTON performs debounce, but no
auto-repeat.
Rate is a variable/constant/expression (0 – 255) that specifies the
number of cycles between auto-repeats. The rate is expressed in
cycles of the BUTTON routine.
Workspace is a byte variable used by BUTTON for workspace. It
must be cleared to 0 before being used by BUTTON for the first time
and should not be adjusted outside of the BUTTON command.
NOTE: All RAM is cleared to 0 by default upon power-up or reset
of the BASIC Stamp module.
TargetState is a variable/constant/expression (0 or 1) that specifies
which state the button should be in for a branch to occur. (0=not
pressed, 1=pressed)
Address is a label that specifies where to branch if the button is in the
target state.
Explanation
When you press a button or flip a switch, the contacts make or break a
connection. A brief (1 to 20-ms) burst of noise occurs as the contacts scrape
and bounce against each other. By scanning an input within a loop to
NOTE: Expressions are not allowed as
arguments on the BS1. The range of
the Pin argument on the BS1 is 0 – 7.
1
1
A
ll
2