Arduino

From Digital Modellbahn
Eigenbau | Arduino | AVR-ISP | FUN LED Cube


Arduino logo.jpg

ArduinoUNO.jpg

Viele der zuletzt entwickelten Schaltungen basieren auf dem Open-Source Projekt Arduino.

Arduino IDE

Mit Hilfe der Arduino IDE können die INO Sketch Dateien in die Arduino Atmega Prozessoren geladen werden. Außerdem enthält die Arduino IDE einen Serial Monitor.

Download:

Bibliotheken

Nützlich beim Programmieren mit den Arduino Boards sind libraries, welche es erleichtern Hardware anzusprechen. Im Downloadbereich dieser Webseite findet ihr libaries, welche ich selber für meine Projekte verwende. Vorteil dieser Bibliotheken ist es, sie funktionieren alle fehlerfrei ab der Arduino IDE Version 1.0


Hardware

Arduino Mikrokontroller Vergleich
Information Tiny Arduino UNO Arduino Fio v3 Sanguino Arduino MEGA WiFi ESP
Prozessor ATtiny 45/85 ATMega328p ATMega32U4 ATMega644p ATmega1284p ATMega2560 ESP8266 ESP32
Package 8-pin PDIP 28-pin PDIP
32-lead TQFP
28-pad QFN/MLF
32-pad QFN/MLF
44-lead TQFP Package
44-lead QFN Package
40-pin PDIP
44-lead TQFP
44-pad QFN/MLF
40-pin PDIP
44-lead TQFP
44-pad QFN/MLF
100-lead TQFP
100-ball CBGA
PCB
2×4 DIL (ESP-01)
2×8 gezahnt (ESP-12)
zwei Reihen je 15 Pins
Spannung 5V 5V 5V 5V 5V 5V 3,3V 3,3V
Speed 1-16MHz 16MHz 16MHz 16MHz 16MHz 16MHz 80/160MHz 240MHz
Flash 4k/8k 32k 32k 64k 128k 256k 512k/1M 4-32M
RAM 512b 2k 2,5k 4k 16k 8k 80k 512k
EEPROM 512b 1k 1k 2k 4k 4k Flash only Flash only
UART - 1 1 + USB 2 2 4 2 3
Timer 2x 8-bit 2x 8-bit
1x 16-bit
1x 8-bit
2x 16-bit
1x 10-bit
2x 8-bit
1x 16-bit
2x 8-bit
2x 16-bit
2x 8-bit
4x 16-bit
6x os_timer (Software)
1x hw_timer (Hardware)
capacitive touch, ADCs, DACs, UART, SPI, I2C
I/O Pins 6 20 26 32 32 54 16 (6/14) 16 PWM
Interrupts(ext.) 1 2 3 3 3 8 all I/O all I/O
Analog Inputs 3 6 (10-bit) 12 (10-bit) 8 (10-bit) 8 (10-bit) 16 (10-bit) 1 (10-bit) 18 (12-bit)

Sanguino Files für Arduino IDE

-> Download

ESP8266

ATtiny für Arduino IDE

  1. Auswahl des Board: Werkzeuge->Platine->ATtiny
  2. Einstellen des Prozessortyp: Werkzeuge->Prozessor->ATinyXX
  3. Auswahl der Taktfrequenz: Werkzeuge->Clock->8 MHz (internal)
  4. Auswahl des Programmiergerät: Werkzeuge->Programmer->Arduino as ISP
  5. Schreiben der FUSE: Werkzeuge->Bootloader brennen
  • Hochladen des Sketch mittels ISP über den Arduino UNO

Hochspannungsprogrammierung (High-Voltage-Programming)

HV-Tiny Programmer
Datei:HVTinyProgrammer sch.jpg
Schaltplan des HV-Tiny Programmers (Eagle)

Um alle 6 I/O Pins eines ATTiny45/85 zu nutzen muss der Chip mittels Hochspannungsprogrammierung beschrieben werden. Dies ist notwendig da für eine ISP Programmierung der RESET des Dekoders notwendig ist um die Programmierung zu starten.

Mittels eines kleinen Board kann auch der Arduino UNO dafür genutzt werden den ATTiny mit +12V Hochspannung zu programmieren. Dazu ist zusätzlich auch ein externes Netzteil notwendig.

Der Programmer kann mittels Serial oder per Taster bedient werden. Standardmäßig kann er zwischen den FUSE für 16MHz PLL (F1;D5;FF) und 16MHz PLL; disable RST (F1;55;FF) je mit Brown-out Level bei 2,7V wechseln.

Download

Hinweis: Im Sketch ist die Benennung von High-FUSE und Low-FUSE vertauscht!