En knapp är en digital input. Det betyder att den kan ha två lägen, du läser dessa som antingen HIGH
(5V) eller LOW
(0V).
Material
- 1 Arduino Uno
- 1 Education-sköld
- 1 knapp
- 1 10k ohms resistor
- 3 labbkablar
Instruktioner
- Fäst skölden på Arduinons ovansida.
- Koppla knappen över kopplingsdäckets mittengap.
- Koppla knappens ena ben till digitala pin 9.
- Koppla samma ben till en 10k ohms resistor, och resistorn till GND.
- Koppla ett av benen på knappens andra sida till 5V.
- Koppla Arduinon till datorn och ladda upp exemplet ’Button’.
Kod
Du bör nu öppna seriemonitorn och följa de utskrivna instruktionerna. Varje gång du utför en instruktion bör seriemonitorn skriva ut ’1’.
Kommandon
Button( digitalPin )
/Button( digitalPin, pressedState)
: skapar ett Button-objekt.- Parametrar
- (
int
)digitalPin
: Den digitala pin till vilken knappen är kopplad. -
(
boolean
)pressedState
: kan varaHIGH
ellerLOW
.HIGH
betyder att när knappen trycks ned läses den somHIGH
, när den släpps läses den somLOW
.LOW
betyder tvärtom. När knappen tryckts ned läses den somLOW
, när den släpps läses den somHIGH
. Standardvärdet ärHIGH
.
- (
- Parametrar
begin()
: Initialiserar komponenten. Måste anropas isetup()
pressed( timeout )
: kontrollerar om knappen trycks ned.- Parametrar
- (
int
)timeout
: millisekunder inom vilka knappen måste tryckas ned. Standardvärdet är 0.
- (
- Retur
-
(
boolean
): returnerar 1 om knappen tryckts i tid, annars 0. Om timeout inte används pausar programmet här tills knappen trycks.
-
- Parametrar
released( timeout )
: kontrollerar om knappen släpps.- Parametrar
- (
int
)timeout
: millisekunder inom vilka knappen behöver släppas. Standardvärdet är 0.
- (
- Retur
-
(
boolean
): returnerar 1 om knappen släppts i tid, annars 0. Om timeout inte används pausar programmet här, tills knappen släpps.
-
- Parametrar
doublePressed( timeout, tolerance )
: kontrollerar om knappen dubbeltrycks.- Parametrar
- (
int
)timeout
: millisekunder inom vilka knappen behöver dubbeltryckas. - (
int
)tolerance
: millisekunder innan knappen ska tryckas ned en andra gång. Standardvärdet är 500.
- (
- Retur
- (
boolean
) returnerar 1 om knappen dubbeltrycks i tid, annars 0. Om timeout inte används pausar programmet här, tills knappen dubbeltrycks.
- (
- Parametrar
Problemlösning
- Var noga med att kopplingarna mellan knapp, kablar och Arduinon är korrekta.
- Var noga med att programmet läser från samma digitala pin som du kopplat knappen till.