kramann.info
© Guido Kramann

Login: Passwort:










2 Programmierung eines Arduino-Micro-Boards

2 Programming an Arduino micro-board (EN google-translate)

2 Programowanie mikropłytki Arduino (PL google-translate)

Zum leichteren Einstieg in die Programmierung eines Arduino-Boards, werden in den folgenden Unterkapitel eine Reihe an ersten kleinen Schaltungen mit zugehörigen Programmen gegeben und eine kleine Aufgabe ergänzt, die selbsttätig zu lösen ist.

To help you get started programming an Arduino board, In the following subchapters, a series of first small Circuits with associated programs given and a small Task supplemented, which is to be solved automatically.

Aby pomóc Ci rozpocząć programowanie płyty Arduino, W poniższych podrozdziałach, seria pierwszych małych Obwody z przypisanymi programami i małe Zadanie uzupełnione, które ma zostać automatycznie rozwiązane.

Pinlayout des Arduino-Micro.

Bild 2-1: Pinlayout des Arduino-Micro.

  • Die Nummern neben den Pins bezeichnen digitale Ein- und Ausgänge in der Nummerierung, wie sie im Programm benutzt werden muß.
  • Z.B. 1 / TX heißt: als alternative Funktion kann auch der TX-Pin als digitaler Ein- oder Ausgang benutzt werden und wird im Programm unter der Nummer 1 angesprochen.
Weitere Informationen
Further information
Dalsze informacje
arduino-micro-schematic.pdf - Anschlußschema.
Pinzuordnung zwischen Chip und Board.

Bild 2-2: Pinzuordnung zwischen Chip und Board.

Spezifikation des Arduino-Micro-Boards

Specification of the Arduino micro-board

Specyfikacja mikroukładu Arduino

  • 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
Atmel-7766-8-bit-AVR-ATmega16U4-32U4_Datasheet.pdf - Vollständiges Datenblatt des ATmega32u4 von Atmel.

Praktische Hinweise (schon einmal vorab für die späteren Übungen)

Practical hints (already in advance for the later exercises)

Praktyczne wskazówki (już z góry do późniejszych ćwiczeń)

Beim Arduino kann man nicht voraussetzen, dass die jeweils konfigurierten Register in ihrem Startzustand sind. Typisch wäre, dass jedes Bit mit Null initialisiert wurde. Statt dessen führt eine Arduino-eigene Initialisierung Veränderungen an den Registern insbesondere der Timer durch.

With the Arduino you can not assume that the configured registers are in their start state. It would be typical that eve Bit was initialized to zero. Instead, Arduino's own initialization causes changes to the registers, especially t Timer through.

Z Arduino nie można założyć, że skonfigurowane rejestry są w stanie początkowym. Byłoby typowe, że każ Bit został zainicjowany do zera. Zamiast tego inicjalizacja Arduino powoduje zmiany w rejestrach, zwłaszcza Zegar przez.

Insbesondere wird der Timer0 von der Arduino-Firmware verwendet und ist deshalb vorkonfiguriert.

In particular, the Timer0 is used by the Arduino firmware and is therefore preconfigured.

W szczególności Timer0 jest używany przez oprogramowanie Arduino i dlatego jest wstępnie skonfigurowany.

D.h. man muß nicht nur die Bits setzen, die gesetzt werden müssen, sondern auch die anderen löschen.

That not only do you need to set the bits that need to be set, but also clear the other

że nie tylko trzeba ustawiać bity, które należy ustawić, ale także usuwać pozostał

Einfache Abhilfe: Statt TCCR1A |= ... einfach TCCR1A = ... schreiben, so werden Bits, die gelöscht werden müssen auf Null gesetzt.

Simple remedy: Instead of TCCR1A | = ... simply write TCCR1A = ..., bits that must be cleared are set to zero.

Proste rozwiązanie: zamiast TCCR1A | = ... wystarczy napisać TCCR1A = ..., bity, które muszą zostać wyczyszczone, są ustawione na zero.