pxt-calliope/docs/reference/input/on-pin-pressed.md
Juri Wolf a93febb5b7
Map and clean deprecated functions (#175)
* add image and deprecated arrow functions

* update locales

* map basic.showArrow

* map arrow blocks

* map & remove arrow images

* remove arrow blocks

* update locales

* remove & patch:
rgbw -> rgb
button/pin pressed -> button/pin event
loudness -> soundLevel

* update ts mappings for arrows

* add wip ts patch rules

* update .blocks files

* use Click instead of Down as default in Documentation and tests

* patch test.blocks

* fix lowercase name tag

* update test.blocks

* update blocks test files

* update blocks test files

* format block files

* pass blocks file tests

* fix ts mapping

* fix color.defl value

closes https://github.com/microsoft/pxt-calliope/issues/136

* fix ts mappings

- add optional spacing at the end of rgbw()
- map up to v4.0.19

* add suggested changes

* replace innerText by textContent

Co-authored-by: JW <gitkraken@juriwolf.de>
Co-authored-by: Juri <info@juriwolf.de>
2022-04-26 10:28:42 -07:00

1.7 KiB

On Pin Pressed

Start an event handler (part of the program that will run when something happens, like when a button is pressed). This handler works when you touch pin 0, 1, or 2 together with GND, and release it within 1 second. When you are using this function in a web browser, click the pins on the screen instead of the ones on the @boardname@.

If you hold the GND pin with one hand and touch pin 0, 1, or 2 with the other, a very small (safe) amount of electricity will flow through your body and back into the @boardname@. This is called completing a circuit. It's like you're a big wire!

input.onPinTouchEvent(TouchPin.P0, ButtonEvent.Click, () => {
})

~hint

This function works best when the @boardname@ is using batteries for power, instead of the USB cable.

~

Parameters

  • name means the pin that is being pressed, either P0, P1, or P2

Pin presses in action

See how the @boardname@ detects a press at a pin or on something connected to a pin in this video:

https://www.youtube.com/watch?v=GEpZrvbsO7o

Example: pin pressed counter

This program counts how many times you press the P0 pin. Every time you press the pin, the program shows the number of times on the screen.

let count = 0
basic.showNumber(count)
input.onPinTouchEvent(TouchPin.P0, ButtonEvent.Click, () => {
    count = count + 1
    basic.showNumber(count)
})

See also

@boardname@ pins, pin is pressed, analog read pin, analog write pin, digital read pin, digital write pin