Blink Eksempel

Fra HTX Arduino
Spring til navigation Spring til søgning
Video med forklaring til kapitlet

Denne lille øvelse sikrer at der er hul igennem til Arduinoen, og at man kan programmere den fra udviklingsmiljøet.

Har man ikke koblet udviklingsmiljøet op endnu, så følg vejledningen under Software og Udviklingsmiljø

Programkoden

Programkoden ligger færdiglavet, og kan hentes ind under Fil - Eksempler - 01. Basics - Blink [1] som vist i figur 1.

Måden man finder koden til Blink eksemplet
Figur 1 Måden man finder koden til Blink eksemplet.

Funktionen af koden er, at den sætter et portben op som udgang, og i et uendeligt loop sætter den udgangen høj og lav med et sekunds mellemrum. Det tænder og slukker den lysdiode der sidder på udgangen, og samtidigt også for den lysdiode der plejer at hedde L på Arduino UNO R3 boardet.

Programkoden for Blink ses herunder:

/* 
  Blink

  Turns an LED on for one second, then off for one second, repeatedly.

  Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
  it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
  the correct LED pin independent of which board is used.
  If you want to know what pin the on-board LED is connected to on your Arduino
  model, check the Technical Specs of your board at:
  https://www.arduino.cc/en/Main/Products

  modified 8 May 2014
  by Scott Fitzgerald
  modified 2 Sep 2016
  by Arturo Guadalupi
  modified 8 Sep 2016
  by Colby Newman

  This example code is in the public domain.

  http://www.arduino.cc/en/Tutorial/Blink
*/

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

Oversættelse og Upload

Når man har læst koden ind i udviklingsmiljøet, så skal det oversættes og uploades til Arduinoen som vist i figur 2.


Oversættelse og Upload af koden til Arduinoen
Figur 2 Oversættelse og Upload af koden til Arduinoen.

Når man har trykket på Upload-ikonet ➔ som vist i figur 2, så oversættes den først til maskinkode som Arduinoen forstår og derefter uploades den til Arduinoen via USB-forbindelsen. Der kan læses mere om dette i Software og Udviklingsmiljø.

Opgave

Til denne lille øvelse kan der tilknyttes en opgave i stil med Arduino Blink], hvor man kan vælge at sætte en lysdiode på eller man kan blot arbejde med den lysdiode der sidder på Arduinoen.

Formålet med opgaven er at man ser hvordan man kan ændre tiden i delay() og at man kan tilføje en ekstra udgang (det kræver at man kobler en ekstra lysdiode på).

Man kan også forholde sig til formålet med det to dele af koden: setup(), der køres én gang når Arduinoen resettes og loop() der kaldes igen og igen.

Referencer

Kom i gang med Arduino
Grundlæggende forståelse for Arduino Arduino Hardware - Arduino Prototype Print - Blink Eksempel - Overblik - Serial Monitor - Simple Komponenter - Software og Udviklingsmiljø
Programmering af Arduino Anvendelse af Eksempler - Klasser og Objekter - Programafvikling i Arduino - Test af Programmer
Dokumentationsformer Dokumentation med Kode og Flowchart - Dokumentation med State-machines - Flowchart - Pseudokode - Program-kommentarer - Systemdokumentation - Syntaksfarvning - Blokdiagram - Pulsplaner - UML
Opkoblinger til Arduino Moduler og Biblioteker - Driver - Opkobling af Hardware - Simple Komponenter - Tips til anvendelse af ben på Arduino UNO
Kompliceret Programmering Arduino kombineret med Processing - Kommunikation fra Arduino til Processing - Kommunikation fra Processing til Arduino - CopyThread Multitasking - Dokumentation med State-machines - Tid og Samtidighed i Software - Arduino Memory
Kompliceret Hardware I2C - Andre Processorboards - Internet of Things (IoT)
Oprindelige Dokumenter PDF-Version - Forfattere
Software Udviklingsteknikker Agile metoder - Brugertest - SCRUM

Fasemodellen - Kravspecifikation - Databasedesign - Struktur eller Arkitektur - Softwaretest

Projekter Afstand programforslag - Lysmåling - Projektforslag - Prototyper
Undervisningsforløb 4t Valgfag til Folkeskolen - Læsevejledning 4t Valgfag - Materialer til 4t Valgfag - Undervisningsnoter 4t Valgfag - Undervisningsplan 4t Valgfag - Slides til Undervisning

Kort Valgfag til Folkeskolen - Læsevejledning Kort Valgfag - Materialer til Kort Valgfag - Undervisningsnoter Kort Valgfag - Undervisningsplan Kort Valgfag