Arduino
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ä[muokkaa | muokkaa wikitekstiä]
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[muokkaa | muokkaa wikitekstiä]
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 (Arkistoitu – Internet Archive) | 68.6 mm × 53.3 mm |
Mega | ATmega1280 (Arkistoitu – Internet Archive) | 128 | 4 | 8 | 54 | 14 | 16 | FTDI | 101.6 mm × 53.3 mm |
Mega2560 | ATmega2560 (Arkistoitu – Internet Archive) | 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[muokkaa | muokkaa wikitekstiä]
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 ulostuloksi.
}
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[muokkaa | muokkaa wikitekstiä]
- ↑ Karvinen Tero ja Kimmo: Sulautetut, s. 34-49. Helsinki: Readme.fi, 2010. ISBN 978-952-220-313-7. Teoksen verkkosivut (viitattu 28.11.2011).
- ↑ Chirgwin, Richard. "Arduino to add ARM board this year", The Register, 2011-09-20. Luettu September 20, 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.”
- ↑ a b [1] (Arkistoitu – Internet Archive)
- ↑ "Blink Tutorial" Arduino.cc.
Aiheesta muualla[muokkaa | muokkaa wikitekstiä]
Kuvia tai muita tiedostoja aiheesta Arduino Wikimedia Commonsissa