Beschreibung
Der Arduino Leonardo ist ein Mikrocontroller Board, basierend auf dem ATmega32U4 (datasheet). Er verfügt über 20 digitale In- und Output Pins ( von denen 7 als PWM Output nutzbar und 12 als analoge Inputs), einen 16 MHzQuarzoszillator, einen Mico USB Anschluss, eine Strombuchse, einen ICSP Header und einen Reset Button. Er besitzt alles Notwendige um den Mikrocontroller zu betreiben. Um loszulegen müssen Sie den Arduino Leonardo lediglich per USB Kabel mit einem Computer verbinden oder an ein AC-to-DC Netzteil oder eine Batterie anschließen.
Der Leonard unterscheidet sich von allen vorherigen Boards dadurch, das der ATmega32U4 bereits über eine integrierte USB Kommunikation verfügt, was einen zweiten Prozessor überflüssig macht. Es ermöglicht dem Leonardo von einem verbundenen Computer, zusätzlich zum virtuellen (CDC) seriellen / COM Port, als Maus und Tastatur erkannt zu werden. Darüber hinaus hat dies noch weitere Folgen für das Verhalten des Boards. Diese werden ausführlich auf der Erste Schritte Seite des Leonardos aufgeführt.
Zusammenfassung
Microcontroller | ATmega32u4 |
Operating Voltage | 5V |
Input Voltage (recommended) | 7-12V |
Input Voltage (limits) | 6-20V |
Digital I/O Pins | 20 |
PWM Channels | 7 |
Analog Input Channels | 12 |
DC Current per I/O Pin | 40 mA |
DC Current for 3.3V Pin | 50 mA |
Flash Memory | 32 KB (ATmega32u4) of which 4 KB used by bootloader |
SRAM | 2.5 KB (ATmega32u4) |
EEPROM | 1 KB (ATmega32u4) |
Clock Speed | 16 MHz |
Schaltplan & Referenz Design
EAGLE Dateien: arduino-leonardo-reference-design.zip
Schaltplan: arduino-leonardo-schematic-rev3b.pdf
Stromversorgung
Der Arduino Leonardo kann entweder über eine Micro USB Verbindung oder über ein externes Netzteil mit Strom versorgt werden. Die Stromquelle wird automatisch ausgewählt.
Für eine externe Versorgung kann entweder ein AC-to-DC Netzteil oder eine Batterie genutzt werden. Für die Versorgung mit einem Netzteil muss dieses einen 2,1mm center-positiv Stecker besitzten, der mit der Strombuchse auf dem Board verbunden wird. Anschlüsse einer Batterie werden mit dem Gnd und dem Vin Pin des Power Connectors verbunden.
Das Board kann mit einer externen Spannung von 6 bis 20 Volt versorgt werden. Bei weniger als 7V Versorgungsspannung, kann es jedoch sein dass der 5V Pin weniger als fünf Volt bereitstellt und das Board instabil wird. Wenn mehr als 12V angelegt werden, kann der Spannungsregler überhitzen und das Board beschädigen. Der empfohlene Spannungsbereich liegt daher bei 7-12V.
Die Power Pins:
- VIN. An diesem Pin liegt die Input Spannung des Arduino an, wenn eine externe Stromquelle genutzt wird (anstatt der 5V einer USB Verbindung oder einer anderen regulierten Stromquelle). Sie können an diesen Pin Spannung anlegen oder, wenn eine externe Stromquelle mit der Strombuchse verbunden ist, Spannung abgreifen.
- 5V. Die regulierte Stromversorgung zum Betreiben des Mikrocontrollers und anderer Komponenten des Boards. Entweder von VIN über den auf dem Board integrierten Spannungsregler, USB oder von einer anderen geregelten 5V Stromversorgung
- 3V3. Eine Spannung von 3.3 Volt, die vom auf dem Board integrierten Spannungsregler bereitgestellt wird. Der maximale Output Strom liegt bei 50 mA.
- GND. Ground pins (Erdung).
- IOREF. Die Spannung mit welcher die I/O Pins des Boards arbeiten (d.h. VCC des Boards). Am Leonardo sind dies 5V.
Speicher
Der ATmega32U4 besitzt 32 KB Speicher (von denen 4 KB vom Arduino Bootloader belegt sind). Er verfügt außerdem über 2,5 KB SRAM und 1 KB EEPROM, welcher mit der EEPROM library) ausgelesen und beschrieben werden kann.
Input und Output
Jeder der 20 digitalen Pins des Arduino kann entweder als Input oder Output genutzt werden. Dafür stehen die FunktionenpinMode(), digitalWrite() und digitalRead() zur Verfügung. Sie arbeiten mit einer Spannung von 5 Volt. Jeder Pin kann einen maximalen Strom von 40mA bereitstellen oder aufnehmen und besitzt einen Pull-Up Widerstand von 20-50 kOhm, welcher 'by default' nicht verbunden ist. Zusätzlich gibt es Pins für spezielle Funktionen:
- Serial: 0 (RX) und 1 (TX). Mit diesen Pins können serielle Daten empfangen (RX) oder übertragen (TX) werden. Dies erfolgt über den ATmega32U4. Beachten Sie, das beim Leonardo die Serial Klasse auf die USB (CDC) Kommunikation verweist; Für TTL Serial Kommunikation an den Pins 0 und 1 nutzen sie bitte die Serial1 Klasse.
- TWI: 2 (SDA) und 3 (SCL). Unterstützung von TWI Kommunikation unter Verwendung der Wire Library.
- External Interrupts: 2 und 3. Diese Pins können so konfiguriert werden, dass sie bei einem niedrigen Wert, einem Anstieg oder Fall, oder einer Änderung des Wertes einen Interrupt auslösen. Für mehr Informationen beachten Sie die Funktion attachInterrupt().
- PWM: 3, 5, 6, 9, 10, 11, and 13. Diese Pins verfügen über einen 8-Bit PWM Output, welcher über die FunktionanalogWrite() gesteuert werden kann.
- SPI: on the ICSP header. Diese Pins unterstützen SPI Kommunikation unter Verwendung der SPI Library. Bitte beachten Sie, dass die SPI Pins nicht wie beim Uno mit den digitalen I/O Pins verbunden sind. Sie sind nur über den ICSP Connector erreichbar. Das bedeutet, dass Shields die SPI nutzen, jedoch über keinen 6-Pin ICSP Connector verfügen, nicht funktionieren werden.
- LED: 13. Auf dem Board befindet sich eine LED, welche mit dem Pin 13 verbunden ist. Wird der Pin HIGH geschaltet, geht die LED an und wird er LOW geschaltet, geht sie aus.
Der Leonardo verfügt über 6 Analog Inputs. Sie tragen die Namen A0 bis A5 und besitzen jeweils eine Auflösung von 10 Bit (also 1024 Abstufungen). Standardmäßig messen sie von Erdung bis 5 Volt. Die Obergrenze lässt sich jedoch mit Hilfe des AREF Pins und der Funktion analogReference() ändern.
- Analog Inputs: A0-A5, A6 - A11 (an den digitalen Pins 4, 6, 8, 9, 10, und 12). Der Leonardo verfügt über 6 Analog Inputs. Sie tragen die Namen A0 bis A11 und können auch als digitale I/O Pins genutzt werden. Die Pins A0-A5 befinden sich an der gleichen Stelle wie beim Uno. Die Inputs A6-A11 sind über die digitalen I/O Pins 4,6,8,9,10 und 12 erreichbar. Jeder analoge Input verfügt über eine Auflösung von 10 Bits (also 1024 Abstufungen). Standardmäßig messen sie von Erdung bis 5 Volt. Die Obergrenze lässt sich jedoch mit Hilfe des AREF Pins und der FunktionanalogReference() ändern.
Auf dem Board befinden sich darüber hinaus noch folgende Pins:
- AREF. Hier liegt die Referenz Spannung für die analogen Inputs an. Er wird unter Verwendung der FunktionanalogReference() genutzt.
- Reset. Wird diese Leitung LOW gesetzt, wird der Mikrocontroller zurückgesetzt. Meistens wird dies für Reset Buttons auf Shields genutzt, wegen welchen man den Reset Button des Boards nicht mehr erreichen kann.
Für weitere Informationen beachten Sie auch das Mapping zwischen den Arduino Pins und den ATmega32U4 Ports.
Kommunikation
Der Arduino Leonardo besitzt eine Vielzahl von Möglichkeiten um mit einem Computer, einem anderen Arduino, oder einem anderen Mikrocontroller zu kommunizieren. Der ATmega32U4 verfügt an den Digital Pins 0 (RX) und 1 (TX) über UART TTL (5V) serielle Kommunikation. Der 32U4 erlaubt außerdem serielle (CDC) Kommunikation über USP und erscheint am Computer als virtueller COM Port. Der Chip verhält sich als Full Speed USB 2.0 Gerät unter Verwendung des USB COM Treibers. Unter Windows, wird zusätzlich eine .inf Datei benötigt. Die Arduino Software enthält einen Serial Monitor mit welchem man einfache Text Daten an das Arduino Board senden und von diesem empfangen kann. Die RX und TX LEDs des Boards blinken wenn Daten über den USB-to-Serial Chip und die USB Verbindung übertragen werden (jedoch nicht bei serieller Kommunikation über die Pins 0 und 1).
Die SoftwareSerial Library ermöglicht die serielle Kommunikation an jedem der Digitalen Pins des Arduino Leonardo.
Der ATmega32U4 unterstützt außerdem I2C (TWI) und SPI Kommunikation. Die Arduino Software enthält eine Wire Library, welche die Nutzung des I2C Bus vereinfacht; Für nähere Informationen beachten Sie die Wire Documentation. Für SPI Kommunikation kann die SPI Library verwendet werden.
Der Leonardo wird als Tastatur und Maus erkannt und kann unter Verwendung der Keyboard und Mouse Klassen programmiert werden, diese zu steuern.
Programmierung
Der Arduino Leonardo kann mit der Arduino Software (download) programmiert werden. Wählen sie "Arduino Leonardo" im Tools > Board Menü (je nach verwendetem Mikrocontroller). Für mehr Information beachten Sie dieReferenz und die Tutorials.
Der ATmega32U4 des Arduino Leonardo wird mit einem vorinstalliertem Bootloader ausgeliefert, welcher den Upload von neuem Code ohne die Verwendung eines externen Hardware Programmers erlaubt. Er kommuniziert unter Verwendung des ursprünglichen AVR109Protokolls.
Der Bootloader kann umgangen werden und der Mikrocontroller über den ICSP (In-Circuit Serial Programming) Header programmiert werden. Lesen sie dafür diese Anleitung.
Automatischer (Software) Reset und Bootloader Initialisierung
Anstatt einen physikalischen Tastendruck des Reset Buttons vor einem Upload zu benötigen wurde der Leonardo so entworfen, dass die Software eines Computers ihn zurücksetzen kann. Der Reset wird ausgelöst, wenn der virtuelle (CDC) serielle / COM Port des Leonardos mit einer Baud Rate von 1200 geöffnet und wieder geschlossen wird. Wenn das passiert wird der Prozessor zurückgesetzt und unterbricht die USB Verbindung zum Computer (auch der virtuelle (CDC) serielle / COM Port wird geschlossen). Nach dem Prozessor Reset startet der Bootloader und ist für etwa 8 Sekunden aktiv. Der Bootloader kann auch durch einen Druck des Reset Buttons initialisiert werden. Bitte beachten Sie, dass das Board direkt zum Anwender Sketch springen wird wenn es dass erste mal mit Strom versorgt wird und nicht erst den Bootloader initialisiert.
Wegen der Art und Weise mit welcher der Leonardo mit Resets umgeht ist es das Beste die Arduino Software den Reset des Microkontrollers auslösen zu lassen, vorallem wenn Sie es noch von anderen Boards gewohnt sind den Reset Button zu drücken. Wenn die Software das Board nicht zurücksetzen kann, können sie dies immer noch manuell per Druck auf den Reset Button erzwingen.
USB Überstrom Schutz
Der Arduino Leonardo besitzt eine zurücksetzbare Mehrfachsicherung, welche den USB Port ihres Computers vor Kurzschlüssen und Überstrom schützt. Auch wenn die meisten Computer einen internen Schutz für solche Fälle besitzen bietet diese Sicherung einen zusätzlichen Schutz. Wenn mehr als 500 mA über die USB Verbindung fließen durchtrennt die Sicherung die Verbindung bis der Kurzschluss bzw. die Überlastung entfernt wurde.
Physical Characteristics
Die maximale Länge und Breite der Arduino Leonardo Platine sind 6,86cm (2.7 inch) und 5.3cm (2.1 inch). Der USB Port und die Strombuchse ragen etwas über diese Maße hinaus. Vier Löcher erlauben das Festschrauben des Boards auf Oberflächen und in Gehäuse. Bitte beachten sie, dass der Abstand zwischen den Digitalen Pins 7 und 8 0.16 Inch beträgt, also kein gerades Vielfaches des 0.1 Inch Abstands der anderen Pins.
Verschlüsselte Zahlung
Ihre Zahlungsinformationen werden sicher verarbeitet. Wir speichern keine Kreditkartendaten und haben auch keinen Zugang zu Ihren Kreditkartendaten.
Zolltarifnummer:
Herkunftsland:
Das hängt davon ab, wo Sie sich befinden. Nach Übergabe der Bestellung an UPS beträgt die Lieferzeit in Deutschland ca. 2-3 Tage, innerhalb Europas ca. 1 Woche.
Wir versenden unsere Artikel mit unserem Versandpartner UPS.
Wenn wir Ihre Frage noch nicht beantwortet haben, können Sie uns kontaktieren, und wir werden uns so schnell wie möglich bei Ihnen melden.