AVR Embedded Tutorials/de
From Free Pascal wiki
Jump to navigationJump to search
│ Deutsch (de) │ English (en) │
AVR Embedded Tutorials
Tutorial zur Programmierung von AVR-Mikrocontrollern mit FPC und Lazarus. Dies betrifft diverse ATtiny, ATmega. Die Beispiele laufen die meisten auch auf Arduino mit ATmega. Vor allem der Uno/Nano. Auch der Arduino-Mega lässt sich programmieren. Grundsätzlich sind alle AVR etwa gleich zu programmieren. Meistens unterscheiden sich nur die Register ein wenig.
Cross-Compiler/IDE einrichten
Bauen des Cross-Compilers und Einrichten der Lazarus-IDE:
- Einstieg Lazarus und Arduino ( Uno/Nano ) - Wie richte ich Lazarus ein, um einen Arduino zu programmieren (AVR - Crosscompiler).
- Lazarus für ATtiny, ATmega und Arduino - Lazarus Crosscompilierung für weitere Arduino/AVRs.
- Verschiedene Programmer - Hardware-Verbindungen, um den AVR zu flashen.
Tools
- Tool zum erstellen und ändern von AVR/Arduino Projekten: Embedded GUI Package - sechshelme (extern)
- Schaltungssimulator, welcher auch AVRs un Arduinos unterstützt: SimulIDE - extern
- Linux: Folgende Packete müssen installieren:
sudo apt-get install libqt5multimedia libqt5multimedia5 libqt5xml5 libqt5script5 libqt5serialport5
- Linux: Folgende Packete müssen installieren:
Beispiele AVR Programmierung
- Software:
- AVR-Programmierung - Wichtige Grundlagen und Besonderheiten zur Programmierung von AVR
- Bibliotheken - Units in der AVR-Programmierung.
- Delay - Warteroutinen (Delay/Sleep).
- Multiplex - Multiplex anhand einer 4-fach Siebensegmentanzeige.
- Integer zu Digits - Einen Integer auf Digits (7-Segmentanzeige) ausgeben.
- Zufallsgenerator - Ein Zufallsgenerator ist auf einem AVR recht komplex.
- Hardware:
- GPIO - Aus / Ein-gabe - Wie mache ich einen GPIO-Zugriff am AVR ?
- GPIO - Interrupt - Verwendung von GPIO-Interrupts und Pin Change.
- Timer / Zähler - Verwendung der Hardware-Timer.
- Analog Write / PWM - Analoge Ausgabe mittels Pulsweitenmodulation (PWM)
- Analog Read - Analog Pin auslesen.
- EEPROM - Daten im EEPROM speichern und lesen.
- Schnittstellen:
- UART - Serielle Ein und Ausgabe über UART (COM-Port).
- SPI - Nutzung der Hardware-SPI-Schnittstelle bei einem ATmega328 / Arduino.
- SPI-Slave - SPI als Slave verwenden.
- I²C/TWI - Kommunikation mit I²C/TWI, Hardware gesteuert.
- Software I²C/TWI - Kommunikation mit I²C/TWI, Software gesteuert.
- Externe Bausteine:
- Schieberegister - Wie steuere ich Schieberegister an.
- I²C EEPROM - I²C EEPROM (24LC256) ansteuern.
- I²C Externe Uhr - Externen Uhrenbaustein DS3231.
- SPI Schieberegister - Schieberegister 74HC595 über SPI ansteuern.
- SPI MCP4922 - 12Bit DAC MCP4922 über SPI ansteuern.
- ADS1115 - Wie steuere ich den 16Bit-Wandler ADC1115 über I²C an.
Siehe auch
- AVR - Crosscompiler mit make bauen. (englisch)
- AVR Programming - Wichtige Grundlagen und Besonderheiten zur Programmierung von Target Embedded AVR (englisch)
- Arduino - Kommunikation mit einem Arduino.
- ARM Embedded Tutorials - Tutorials für ARM Embedded / STM32.