Siirry sisältöön

Arduino

Wikipediasta
Tämä on arkistoitu versio sivusta sellaisena, kuin se oli 19. joulukuuta 2018 kello 13.37 käyttäjän 188.238.77.177 (keskustelu) muokkauksen jälkeen. Sivu saattaa erota merkittävästi tuoreimmasta versiosta.
Valmis Arduino-piirilevy komponentteineen

Arduino on avoimeen laitteistoon perustuva mikro-ohjain-/elektroniikka-alusta ja ohjelmointiympäristö. Laitteisto perustuu 8-bittiseen Atmel AVR -mikro-ohjaimeen, jonka pinneihin voi kytkeä erilaisia antureita, moottoreita, LED-valoja ja muita komponentteja. Laitteistoa ohjelmoidaan C ja C++:aan perustuvalla Arduino-ohjelmointikielellä.

Arduinon alkuperä

Arduino-projekti käynnistettiin Olivettilla 2005 opiskelijoita varten. Alun perin Arduino-laitteita valmisti italialainen Smart Projects, mutta Arduinon tekninen määrittely on julkinen ja vapaasti käytettävissä, ja sittemmin laitteita ovat valmistaneet muutkin.

Tekniikka

Arduino-laitteita on eri malleja, jotka eroavat toisistaan mm. EEPROMin, keskusmuistin ja Flash-muistin sekä digitaalisten ja analogisten pinnien määrissä. Alkuperäisissä laitteissa ohjelmointi tehtiin sarjaportin kautta, nykyisin käytettävissä on usein USB tai Bluetooth. Ohjelmointiin käytetään Arduino IDE-ohjelmaa, joka on saatavilla yleisimmille käyttöjärjestelmille (mm. Microsoft Windows, Apple Mac OS X ja Ubuntu Linux[1]). Arduinolle on saatavissa myös lisälaitteita (engl. shield), jotka liitetään suoritinkortin päälle. Lisälaitteiden avulla Arduinossa voi käyttää mm. Ethernetiä, GPS:ää, WLANia, sensorikortteja ja kosketusnäyttöjä.

Arduino-laite Suoritin Flash-muistia (KiB) EEPROMia (KiB) SRAMia (KiB) Digitaalisia
siirtopinnejä
...joista PWM:llä Analogisia pinnejä USB Mitat (mm)
Diecimila ATmega168 16 0.5 1 14 6 6 FTDI 68.6 mm × 53.3 mm
Due[2] ATMEL SAM3U 256 0[3] 50 54 4[3] 16
Duemilanove ATmega168/328P 16/32 0.5/1 1/2 14 6 6 FTDI 68.6 mm × 53.3 mm
Uno ATmega328P 32 1 2 14 6 6 ATmega8U2 68.6 mm × 53.3 mm
Leonardo Atmega32u4 32 1 2 14 6 12 Atmega32u4 integrated 68.6 mm × 53.3 mm
Mega ATmega1280 128 4 8 54 14 16 FTDI 101.6 mm × 53.3 mm
Mega2560 ATmega2560 256 4 8 54 14 16 ATmega8U2 101.6 mm × 53.3 mm
Fio ATmega328P 32 1 2 14 6 8 - 40.6 mm × 27.9 mm
Nano ATmega168 or ATmega328 16/32 0.5/1 1/2 14 6 8 FTDI 43 mm × 18 mm
LilyPad ATmega168V or ATmega328V 16 0.5 1 14 6 6 - 50 mm ⌀

Ohjelmisto

Arduinossa on vain kaksi pääfunktiota:

  • setup() – funktio, joka alustaa laitteen asetukset.
  • loop() – funktio, jota toistetaan virran sammuttamiseen asti.

Yleisin ensimmäinen mikrokontrollerille siirrettävä ohjelma on Blink (suom. "Vilkku"), joka vilkuttaa yhtä LEDiä[4]:

#define LED_PIN 13

void setup () {
    pinMode (LED_PIN, OUTPUT);     // pinni 13 asetetaan tulostustilaan.
}

void loop () {
    digitalWrite (LED_PIN, HIGH);  // kytkee LEDin päälle; HIGH on Arduinon vakio, joka antaa LEDille 5 volttia
    delay (1000);                  // odottaa sekunnin (1000 millisekuntia)
    digitalWrite (LED_PIN, LOW);   // sammuttaa LEDin
    delay (1000);                  // odottaa sekunnin
}

Lähteet

  1. Karvinen Tero ja Kimmo: Sulautetut, s. 34-49. Helsinki: Readme.fi, 2010. ISBN 978-952-220-313-7 Teoksen verkkosivut Viitattu 28.11.2011.
  2. Chirgwin, Richard: Arduino to add ARM board this year. The Register, 20.9.2011. ”Arduino [...] showed off the new version in time for the New York Maker’s Faire, with a 96 MHz clock speed, 256 KB of flash memory, 50 KB of SRAM, five SPI buses, two I2C interfaces, five UARTs and 16 12-bit analog interfaces.” Artikkelin verkkoversio. Viitattu September 20, 2011.
  3. a b [1]
  4. "Blink Tutorial" Arduino.cc.

Aiheesta muualla