Arduino UNO R3
Release status: Documentation
Description | Arduino UNO R3
|
License | |
Author | |
Contributors | |
Categories | |
CAD Models | |
External Link |
Introductie
De Arduino Uno is een open-source microcontroller board gebaseerd op de Microchip ATmega328P microcontroller en ontwikkeld door Arduino.cc en oorspronkelijk uitgebracht in 2010. Het bord is uitgerust met sets digitale en analoge input/output (I/O) pinnen die kunnen worden gekoppeld aan verschillende expansion boards (shields) en andere schakelingen. Het bord heeft 14 digitale I/O-pinnen (zes in staat tot PWM output), 6 analoge I/O-pinnen, en is programmeerbaar met de Arduino IDE (Integrated Development Environment), via een type B USB-kabel. Hij kan worden gevoed door de USB-kabel of door een externe 9-volt batterij, hoewel hij spanningen tussen 7 en 20 volt accepteert. Het is vergelijkbaar met de Arduino Nano en Leonardo. Het hardware-referentieontwerp wordt verspreid onder een Creative Commons Naamsvermelding Share-Alike 2.5 licentie en is beschikbaar op de Arduino website. Lay-out- en productiebestanden voor sommige versies van de hardware zijn ook beschikbaar.
Het woord "uno" betekent "één" in Italiaans en werd gekozen om de eerste release van Arduino Software te markeren. Het Uno-bord is de eerste in een reeks van USB-gebaseerde Arduino-borden; het en versie 1.0 van de Arduino IDE waren de referentieversies van Arduino, die nu zijn geëvolueerd naar nieuwere versies. De ATmega328 op het bord is voorgeprogrammeerd met een bootloader die het mogelijk maakt nieuwe code te uploaden zonder het gebruik van een externe hardware programmeur.
Hoewel de Uno communiceert via het originele STK500-protocol, verschilt het van alle voorgaande boards doordat het niet de FTDI USB-to-serial driver chip gebruikt. In plaats daarvan gebruikt het de Atmega16U2 (Atmega8U2 tot versie R2) geprogrammeerd als een USB-to-serial converter.
Geschiedenis
Het Arduino-project begon op het Interaction Design Institute Ivrea (IDII) in Ivrea, Italië. In die tijd gebruikten de studenten een BASIC Stamp microcontroller, die voor veel studenten een aanzienlijke kostenpost was. In 2003 creëerde Hernando Barragán het ontwikkelingsplatform Wiring' als afstudeerproject aan het IDII, onder toezicht van Massimo Banzi en Casey Reas, die bekend zijn van hun werk aan de taal Processing. Het doel van het project was het creëren van eenvoudige, goedkope hulpmiddelen voor het maken van digitale projecten door niet-ingenieurs. Het bedradingsplatform bestond uit een printed circuit board (PCB) met een ATmega168 microcontroller, een IDE gebaseerd op Processing, en bibliotheekfuncties om de microcontroller eenvoudig te programmeren. In 2003 voegde Massimo Banzi, met David Mellis, een andere IDII-student, en David Cuartielles, ondersteuning voor de goedkopere ATmega8-microcontroller toe aan Wiring. Maar in plaats van het werk aan Wiring voort te zetten, forked het project en hernoemden het Arduino. Vroege arduino boards gebruikten de FTDI USB-to-serial driver chip en een ATmega168. De Uno verschilde van alle voorgaande boards door de ATmega328P microcontroller en een ATmega16U2 (Atmega8U2 tot versie R2) geprogrammeerd als een USB-to-serial converter.
Technische specificaties
- Microcontroller: Microchip Technology|Microchip ATmega328P
- Bedrijfsspanning: 5 Volt
- Ingangsspanning: 7 tot 20 volt
- Digitale I/O poorten: 14
- PWM uitgangen: 6 (I/O # 3, 5, 6, 9, 10 en 11)
- UART: 1
- I2C: 1
- SPI: 1
- Analoge ingangspinnen: 6
- Gelijkstroomstroom per I/O poort: 20 mA
- DC Stroom voor 3.3V uitgang: 50 mA
- Flash Memory: 32 KB waarvan 0.5 KB gebruikt door de bootloader
- SRAM: 2 KB
- EEPROM: 1 KB
- Kloksnelheid: 16MHz
- Lengte: 68,6mm
- Breedte: 53,4mm
- Gewicht: 25 g
- ICSP Header: Ja
- Voedingsbronnen: DC Power Jack, USB Port en de VIN pin (alleen +5 volt)
Headers
Algemene functies
- LED: Er is een ingebouwde LED die door digitale pin 13 wordt aangestuurd. Wanneer de pin een hoge waarde heeft, is de LED aan, wanneer de pin laag is, is hij uit.
- VIN: Het ingangsvoltage voor het Arduino/Genuino-bord wanneer het een externe voedingsbron gebruikt (in tegenstelling tot 5 volt van de USB-aansluiting of een andere geregelde voedingsbron). U kunt spanning leveren via deze pin, of, als u spanning levert via de voedingsaansluiting, toegang krijgen via deze poort.
- +5V: Deze pen levert een gereguleerde 5V uit de regelaar op het bord. Het bord kan gevoed worden via de DC power jack (7 - 20V), de USB connector (5V), of de VIN pin van het bord (+7-+20V). Voeding via de 5V of 3,3V pennen omzeilt de regelaar, en kan het bord beschadigen.
- +3V3: Een 3,3 volt voeding gegenereerd door de on-board regulator. De maximale stroomopname is 50 mA.
- GND: Massa pinnen.
- IOREF: Deze pin op het Arduino/Genuino bord levert de spanningsreferentie waarmee de microcontroller werkt. Een goed geconfigureerd shield kan de IOREF-speldspanning lezen en de juiste voedingsbron selecteren, of spanningsvertalers op de uitgangen inschakelen om met 5V of 3,3V te werken.
- Reset: Typisch gebruikt om een resetknop toe te voegen aan schilden die de knop op het bord blokkeren.
Speciale functies
Elk van de 14 digitale pinnen en 6 analoge pinnen op de Uno kan worden gebruikt als ingang of uitgang, onder softwarebesturing (met pinMode(), digitalWrite(), en digitalRead() functies). Ze werken op 5 volt. Elke poort kan 20 mA leveren of ontvangen als aanbevolen werkingsconditie en heeft een interne pull-up weerstand (standaard uitgeschakeld) van 20-50K ohm. Een maximum van 40mA mag op geen enkele I/O-poort worden overschreden om permanente schade aan de microcontroller te voorkomen. De Uno heeft 6 analoge ingangen, aangeduid met A0 tot A5; elk biedt 10 bits resolutie (d.w.z. 1024 verschillende waarden). Standaard meten ze van massa tot 5 volt, maar het is mogelijk om de bovenkant van het bereik te veranderen met behulp van de AREF-pin en de analogReference() functie.
Bovendien hebben sommige pinnen gespecialiseerde functies:
- Serieel / UART: pinnen D0 (RX) en D1 (TX). Gebruikt om TTL seriële gegevens te ontvangen (RX) en te verzenden (TX). Deze zijn verbonden met de corresponderende I/O van de ATmega8U2 USB-to-TTL seriële chip.
- Externe interrupts: pinnen 2 en 3. Deze pinnen kunnen worden geconfigureerd om een interrupt te activeren bij een lage waarde, een stijgende of dalende flank, of een verandering in waarde.
- PWM (pulsbreedtemodulatie): pennen 3, 5, 6, 9, 10 en 11. Kan 8-bits PWM-uitgang leveren. Kan 8-bits PWM-uitgang leveren met de functie analogWrite().
- SPI (seriële perifere interface): pennen 10 (SS), 11 (MOSI), 12 (MISO) en 13 (SCK). Deze pinnen ondersteunen SPI-communicatie met behulp van de SPI-bibliotheek.
- TWI I²C]]: pen SDA (A4) en pen SCL (A5). Ondersteuning van TWI-communicatie met behulp van de Wire-bibliotheek.
- AREF (analoge referentie): Referentiespanning voor de analoge ingangen.
Communication
De Arduino/Genuino Uno heeft een aantal voorzieningen om te communiceren met een computer, een ander Arduino/Genuino-bord of andere microcontrollers. De ATmega328 biedt UART TTL (5V) seriële communicatie, die beschikbaar is op de digitale pennen 0 (RX) en 1 (TX). Een ATmega16U2 op het bord kanaliseert deze seriële communicatie over USB en verschijnt als een virtuele com-poort voor software op de computer. De 16U2 firmware gebruikt de standaard USB COM drivers, en er is geen externe driver nodig. Nochtans, op Vensters, wordt een .inf dossier vereist. De Arduino Software (IDE) omvat een periodieke monitor die eenvoudige tekstuele gegevens toestaat om naar en van de raad worden verzonden. De RX en TX LEDs op de raad zullen knipperen wanneer de gegevens via de USB-aan-seriële spaander en de USB-verbinding aan de computer (maar niet voor periodieke mededeling op spelden 0 en 1) worden overgebracht. Een SoftwareSerial-bibliotheek maakt seriële communicatie op elk van de digitale pinnen van de Uno mogelijk.
Automatic (software) reset
Eerder dan een fysieke pers van de het terugstellenknoop vóór een upload te vereisen, wordt de raad van Arduino/Genuino Uno ontworpen op een manier die het om door software toelaat worden teruggesteld die op een aangesloten computer loopt. Één van de hardwarestroomcontrolelijnen (DTR) van ATmega8U2/16U2 wordt verbonden met de het resetlijn van ATmega328 via een 100 nF condensator. Wanneer deze lijn wordt bevestigd (laag genomen), daalt de resetlijn lang genoeg om de chip te resetten.
Deze opzet heeft andere implicaties. Wanneer de Uno is aangesloten op een computer met Mac OS X of Linux, wordt hij gereset telkens wanneer er vanuit software (via USB) verbinding mee wordt gemaakt. Gedurende de volgende halve seconde draait de bootloader op de Uno. Hoewel hij geprogrammeerd is om misvormde gegevens te negeren (d.w.z. alles behalve een upload van nieuwe code), zal hij de eerste paar bytes onderscheppen die naar het bord worden gestuurd nadat een verbinding is gemaakt.