Arduino Button

Fra Kommunikation-IT Holstebro HTX
Skift til: navigering, søgning

Denne opgave er den grundlæggende start på Arduinoen.

Software

I Arduino-programmet åbnes Fil - Eksempler - 02.Digital - Button[1].

Virkemåde

I funktionen setup() sættes to ben op, et til input og et til output

Det digitale ben 2 sættes til Input, og der skal forbindes en trykknap til benet.

Det digitale ben 13 sættes til output, og der skal forbindes en LED med formodstand til benet.

I funktionen loop() afvikles den samme kode i en uendelig løkke, hvor benet med trykknappen aflæses, og alt efter om den er høj eller lav sættes udgangen med lysdioden til høj eller lav.

Hardware

Der skal tilsluttes to kredsløb til Arduinoen for at man kan teste om programmet fungerer efter hensigten.

På det digitale ben 2 skal der forbindes ud et et fumlebræt, hvortil der også forbindes +5V og GND fra Arduinoen. Ben 2 skal forbindes til en trykknap der er sat op i et kredsløb med Pull-down.

På det digitale ben 13 skal der forbindes en LED med formodstand som går videre til stel.

Tegnet som diagram ser det ud som følger:

LED og trykknap til Arduinoen som diagram
Diagram over trykknap og LED koblet til Arduinoen

Koblet op på et fumlebræt sammen med Arduinoen kunne det ser ud som følger:

LED og trykknap forbundet til Arduinoen som fumlebræt
Fumlebrættet med trykknap og LED koblet til Arduinoen

Udvidelse

Prøv at kombinere funktionen med at lysdioden blinker og at man kan trykke på kontakten. Det kan gøres på flere måder:

Blink-frekvensen

Lad blinktiden være afhængig af om der er trykket på knappen:

Blinktid på et halvt sekund når der ikke er trykket på knappen.

Blinktid på 0,1 sekund når der ikke er trykket på knappen.

Vende blinkfunktionen

Lad blinket være afhængig af om der er trykket på knappen

Blink "omvendt" når der trykkes på knappen.

Dette kan testes ved at når der trykkes på knappen, så kommer der enten en lang pause eller et langt blink.

Blink og LED afhængig af knap

Monter to lysdioder på Arduinoen.

Den ene lysdiode skal blinke uafhængigt af knappen.

Den anden lysdiode skal følge knappen.

En speciel version af dette program kan tænde og slukke lysdioden der er afhængig af knappen helt uafhængigt af blinktiden. Et hint til dette er at dele blinktiden op i mindre dele, og lade blinket være afhængig af hvor mange gange der er ventet i et kort tidsrum.

Referencer

  1. http://arduino.cc/en/Tutorial/Button Button