Das Buch ist im Wesentlichen zweigeteilt: Im ersten Teil werden Techniken vorgestellt, mit denen parallele Programmabläufe realisiert werden können. Diese reichen von der einfachen automatischen Ablaufsteuerung eines Hintergrundprozesses durch Interrupts bis zur Implementierung eines an die beschränkten Möglichkeiten von AVR-Mikrocontrollern angepassten RTOS. Die Realisierung von Hintergrundprozessen lässt sich auf bequeme Weise mit Interrupts durchführen. Auf die Probleme der Synchronisierung mit Hintergrundprozessen wird ausführlich eingegangen. Interrupts werden zwar auch in ihrer „natürlichen“ Umgebung vorgestellt, aber es werden auch „exotische“ Einsätze von Interrupts beschrieben, z. B. der Einsatz eines Timer-Interrupts als Programmschleifenzähler. Dass sinnvolles Multitasking auch für die kleineren Mikrocontroller der AVR-Serie möglich ist, wird mit Kleinsystemen demonstriert, die auch auf einem ATtiny2313 ablaufen können. Für Controller mit besserer Ausstattung ist das System SLIMOS gedacht – in dem Prozesse dynamische Objekte sind – in dem Prozesse mit Semaphoren und Ereignissen synchronisiert werden können – welches Interrupts als Ereignisse integriert und eine Zeitablaufsteuerung für inaktive Prozesse besitzt.Der zweite Teil des Buches ist der Numerik gewidmet. Höhepunkt ist die Implementierung einer AVR-freundlichen Fließkommaarithmetik, die dennoch den Standard IEEE 754 soweit umsetzt, wie das bei den kleinen AVR-Prozessoren sinnvoll erscheint. Der Vorstellung und Erläuterung dieses Standards ist ein eigenes Kapitel gewidmet. Zusätzlich gibt es noch ein vorbereitendes Kapitel, in dem die Grundbegriffe der Fließkommaarithmetik erklärt werden, das aber auch esoterische Aspekte erläutert, wie etwa das vom Standard geforderte Rechnen mit Unendlichkeiten. Ein weiteres Kapitel beschreibt die Erzeugung von Zufallszahlen. Es wird gezeigt, wie Zufallszahlen mit diskreter Verteilung, Gleichverteilung, Exponentialverteilung und Normalverteilung berechnet werden können. Sie werden als sehr schnelle Versionen in Fixkommaarithmetik bereit gestellt, woraus dann Fließkommaversionen entwickelt werden. Ein Beispiel für ihren Einsatz ist im Simulationsabschnitt des SLIMOS-Kapitels zu finden.Der Anhang bietet u. a. eine sehr AVR-freundliche Realisierung der Methode von Fletcher und die Implementierung von Funktoren, die elegante Problemlösungen gestatten.Alle Programme sind so ausführlich erläutert und kommentiert, dass der Leser keine Schwierigkeiten damit haben dürfte, sie an eigene Bedürfnisse anzupassen. Der für alle Programme verwendete Assembler wird vom Hersteller der AVR-Mikrocontroller kostenlos zur Verfügung gestellt.Band 2 ist als gedrucktes Buch erhältlich:
Systemprogrammierung II für AVR-Mikrocontroller
Programmierung in Assembler und C am Beispiel der ATtiny-Familie
Dieses Buch bietet einen eingehenden Blick auf die 8-Bit-AVR-Architektur in ATtiny- und ATmega-Mikrocontrollern, hauptsächlich aus der Sicht der Software und der Programmierung. Erforschen Sie die AVR-Architektur unter Verwendung von C und Assembler in Microchip Studio (früher Atmel Studio) mit ATtiny-Mikrocontrollern.
Lernen Sie die Details der internen Funktionsweise von AVR-Mikrocontrollern kennen, einschließlich der internen Register und des Speicherplans von ATtiny-Bausteinen.
Programmieren Sie Ihren ATtiny-Mikrocontroller mit einem Atmel-ICE-Programmiergerät/Debugger oder verwenden Sie ein preiswertes Hobby-Programmiergerät oder sogar einen Arduino Uno als Programmiergerät.
Die meisten Code-Beispiele können mit dem Microchip Studio AVR-Simulator ausgeführt werden.
Lernen Sie, Programme für ATtiny-Mikrocontroller in Assembler zu schreiben.
Erfahren Sie, wie Assemblersprache in Maschinencodebefehle umgewandelt wird.
Finden Sie heraus, wie Programme, die in der Programmiersprache C geschrieben wurden, in Assemblersprache und schließlich in Maschinencode umgewandelt werden.
Verwenden Sie den Microchip Studio Debugger in Kombination mit einem Hardware-USB-Programmierer/Debugger, um Assembler- und C-Programme zu testen oder verwenden Sie den Microchip Studio AVR-Simulator.
ATtiny-Mikrocontroller im DIP-Gehäuse werden verwendet, um eine einfache Nutzung auf Breadboards zu ermöglichen.
Erfahren Sie mehr über Timing und Taktimpuls in AVR-Mikrocontrollern mit ATtiny-Bausteinen.
Werden Sie zu einem AVR-Experten mit fortgeschrittenen Debugging- und Programmierfähigkeiten.
Programmierung in Assembler und C am Beispiel der ATtiny-Familie
Dieses Buch bietet einen eingehenden Blick auf die 8-Bit-AVR-Architektur in ATtiny- und ATmega-Mikrocontrollern, hauptsächlich aus der Sicht der Software und der Programmierung. Erforschen Sie die AVR-Architektur unter Verwendung von C und Assembler in Microchip Studio (früher Atmel Studio) mit ATtiny-Mikrocontrollern.
Lernen Sie die Details der internen Funktionsweise von AVR-Mikrocontrollern kennen, einschließlich der internen Register und des Speicherplans von ATtiny-Bausteinen.
Programmieren Sie Ihren ATtiny-Mikrocontroller mit einem Atmel-ICE-Programmiergerät/Debugger oder verwenden Sie ein preiswertes Hobby-Programmiergerät oder sogar einen Arduino Uno als Programmiergerät.
Die meisten Code-Beispiele können mit dem Microchip Studio AVR-Simulator ausgeführt werden.
Lernen Sie, Programme für ATtiny-Mikrocontroller in Assembler zu schreiben.
Erfahren Sie, wie Assemblersprache in Maschinencodebefehle umgewandelt wird.
Finden Sie heraus, wie Programme, die in der Programmiersprache C geschrieben wurden, in Assemblersprache und schließlich in Maschinencode umgewandelt werden.
Verwenden Sie den Microchip Studio Debugger in Kombination mit einem Hardware-USB-Programmierer/Debugger, um Assembler- und C-Programme zu testen oder verwenden Sie den Microchip Studio AVR-Simulator.
ATtiny-Mikrocontroller im DIP-Gehäuse werden verwendet, um eine einfache Nutzung auf Breadboards zu ermöglichen.
Erfahren Sie mehr über Timing und Taktimpuls in AVR-Mikrocontrollern mit ATtiny-Bausteinen.
Werden Sie zu einem AVR-Experten mit fortgeschrittenen Debugging- und Programmierfähigkeiten.
Atmel AVR ist eine 8-bit-Mikrocontroller-Familie des Herstellers Atmel. Diese Controller sind wegen ihres einfachen Aufbaus, ihrer leichten Programmierbarkeit, den kostenlosen Entwicklungswerkzeugen und der Verfügbarkeit in DIP-Gehäuseformen auch bei Elektronikern und Makern äußerst beliebt. Darüber hinaus sind diese Controller bereits ab zwei Euro erhältlich. Im Arduino Uno-Board wird der ATmega328 verwendet.
AVR-Programmierung für Quereinsteiger besteht aus zwei Teilen. Im ersten Teil wird in einfachen Worten erklärt, wie eine MCU (= Micro Controller Unit) im Detail arbeitet. Dem folgt eine Einführung in die Programmiersprache C. Anschließend taucht der Leser im zweiten Teil des Buches in die Welt der Register und ihre Bits ein. Dort findet man auch ein umfangreiches Glossar aller Register- und Bit-Namen. Das Buch dient somit auch als Nachschlagewerk, wenn man sich durch das Datenblatt oder andere Texte arbeiten muss.
Das Buch wendet sich an alle, die bisher mit dem Arduino programmiert haben und nun nach technischen Möglichkeiten und Wegen suchen, ihre Elektronik- und Programmierkenntnisse zu erweitern. Dazu eignet sich die AVR-Programmierung im besonderen Maße.
AVR Architecture and Programming An in-depth look at the 8-bit AVR architecture found in ATtiny and ATmega microcontrollers, mainly from a software and programming point of view. Explore the AVR architecture using C and assembly language in Microchip Studio (formerly Atmel Studio) with ATtiny microcontrollers. Learn the details of how AVR microcontrollers work internally, including the internal registers and memory map of ATtiny devices. Program ATtiny microcontrollers using an Atmel-ICE programmer/debugger, or use a cheap hobby programmer, or even an Arduino Uno as a programmer. Most code examples can be run using the Microchip Studio AVR simulator. Learn to write programs for ATtiny microcontrollers in assembly language. See how assembly language is converted to machine code instructions by the assembler program. Find out how programs written in the C programming language end up as assembly language and finally as machine code instructions. Use the Microchip Studio debugger in combination with a hardware USB programmer/debugger to test assembly and C language programs, or use the Microchip Studio AVR simulator. DIP packaged ATtiny microcontrollers are used in this volume for easy use on electronic breadboards, targeting mainly the ATtiny13(A) and ATtiny25/45/85. Learn about instruction timing and clocks in AVR microcontrollers using ATtiny devices. Be on your way to becoming an AVR expert with advanced debugging and programming skills.
Dieser komplette Programmierkurs für STM32-Mikrocontroller umfasst ein Begleitbuch, ein Komponenten-Kit, praxisorientierte Projekte sowie einen ausführlichen Online-Kurs. Er eignet sich ideal für das schrittweise Erlernen der Programmierung von Embedded Systems mit MicroPython anhand eines praxisnahen Ansatzes.
Praxisorientierte Einführung in Embedded Systems mit dem STM32
Dieser Kurs richtet sich an Einsteiger im Bereich Embedded Systems, die einen strukturierten und praxisnahen Einstieg suchen. Im Lieferumfang enthalten ist ein Komponenten-Kit, das unter anderem LEDs, Widerstände, Schalter, Sensoren, Aktoren, Displays, ein Breadboard sowie Verbindungskabel umfasst. Diese Komponenten kommen im Kurs zum Einsatz, um die Beispielanwendungen zu veranschaulichen.
Es sind keine Vorkenntnisse in MicroPython oder der Entwicklung von Embedded-Systemen erforderlich. Jeder Abschnitt enthält praktische Beispiele und Miniprojekte, die dazu dienen, die wichtigsten Konzepte zu festigen und zu weiterführenden Experimenten anzuregen. Am Ende des Kurses sind Sie in der Lage, nicht nur die Beispiele nachzuvollziehen, sondern diese auch mit eigenen Ideen und Anwendungen zu erweitern.
Was werden Sie lernen?
Programmierung von Mikrocontrollern in MicroPython auf dem STM32 unter Verwendung der Thonny IDE
Arbeiten mit digitalen Ein- und Ausgängen, Auslesen von Tastern und Encodern, Steuern von LEDs und Relais
Auslesen analoger Eingänge, Spannungen und analoger Sensoren
Erzeugung analoger Ausgangssignale und PWM
Verwendung serieller Kommunikation wie UART, I²C und SPI zur Steuerung von Displays und zum Auslesen digitaler Sensoren und SD-Karten
Zeitmanagement
Arbeiten mit Interrupts
Echtzeit-Sensordatenerfassung und Steuerung über Taster, LEDs und Displays
Steuerung von Aktoren wie Relais und Servomotoren
Für wen ist dieser Kurs geeignet?
Studierende und Selbstlerner im Bereich Embedded Systems
Makers und IoT-Enthusiasten, die ihre Hardware-Kenntnisse verbessern möchten
Lehrkräfte und Trainer, die sofort einsetzbares Unterrichtsmaterial suchen
Was ist im Lieferumfang enthalten?
Zugang zum vollständigen Kurs auf der Elektor Academy Pro-Lernplattform
STM32 NUCLEO-F411RE Mikrocontroller-Board
Buch: MicroPython for STM32
Downloadbare Projektdateien für jedes Modul
Komponenten-Set:
2× LED, rot, 5 mm
LED, grün, 5 mm
3× Widerstand, 470 Ω, 0,25 W
LDR
Potentiometer, 10 kΩ, linear
Taster
Drehencoder-Modul
Relaismodul
DHT22 Feuchtigkeits- und Temperatursensor
TM1637-kompatibles 4-stelliges 7-Segment-Display
MPU-6050 IMU mit Stiftleisten
SSD1306-kompatibles I²C OLED-Display
Micro-SD-Kartenadapter mit Stiftleiste
Buzzer
SG90 Mikro-Servo
ILI9341-kompatibles SPI 240×320 TFT-Display
20× Jumperkabel
Breadboard
Dieser komplette Programmierkurs für STM32-Mikrocontroller umfasst ein Begleitbuch, ein Komponenten-Kit, praxisorientierte Projekte sowie einen ausführlichen Online-Kurs. Er eignet sich ideal für das schrittweise Erlernen der Programmierung von Embedded Systems mit Arduino anhand eines praxisnahen Ansatzes.
Praxisorientierte Einführung in Embedded Systems mit dem STM32
Dieser Kurs richtet sich an Einsteiger im Bereich Embedded Systems, die einen strukturierten und praxisnahen Einstieg suchen. Im Lieferumfang enthalten ist ein Komponenten-Kit, das unter anderem LEDs, Widerstände, Schalter, Sensoren, Aktoren, Displays, ein Breadboard sowie Verbindungskabel umfasst. Diese Komponenten kommen im Kurs zum Einsatz, um die Beispielanwendungen zu veranschaulichen.
Es sind keine Vorkenntnisse in Arduino oder der Entwicklung von Embedded-Systemen erforderlich. Jeder Abschnitt enthält praktische Beispiele und Miniprojekte, die dazu dienen, die wichtigsten Konzepte zu festigen und zu weiterführenden Experimenten anzuregen. Am Ende des Kurses sind Sie in der Lage, nicht nur die Beispiele nachzuvollziehen, sondern diese auch mit eigenen Ideen und Anwendungen zu erweitern.
Was werden Sie lernen?
Programmierung von Mikrocontrollern in C/C++ für STM32 unter Verwendung der Arduino IDE
Arbeiten mit digitalen Ein- und Ausgängen, Auslesen von Tastern und Encodern, Steuern von LEDs und Relais
Auslesen analoger Eingänge, Spannungen und analoger Sensoren
Erzeugung analoger Ausgangssignale und PWM
Verwendung serieller Kommunikation wie UART, I²C und SPI zur Steuerung von Displays und zum Auslesen digitaler Sensoren und SD-Karten
Zeitmanagement
Arbeiten mit Interrupts
Echtzeit-Sensordatenerfassung und Steuerung über Taster, LEDs und Displays
Steuerung von Aktoren wie Relais und Servomotoren
Programme mithilfe von Haltepunkten und schrittweiser Codeausführung debuggen
Für wen ist dieser Kurs geeignet?
Studierende und Selbstlerner im Bereich Embedded Systems
Makers und IoT-Enthusiasten, die ihre Hardware-Kenntnisse verbessern möchten
Lehrkräfte und Trainer, die sofort einsetzbares Unterrichtsmaterial suchen
Was ist im Lieferumfang enthalten?
Zugang zum vollständigen Kurs auf der Elektor Academy Pro-Lernplattform
STM32 NUCLEO-F411RE Mikrocontroller-Board
Buch: Arduino for STM32
Downloadbare Projektdateien für jedes Modul
Komponenten-Set:
2× LED, rot, 5 mm
LED, grün, 5 mm
3× Widerstand, 470 Ω, 0,25 W
LDR
Potentiometer, 10 kΩ, linear
Taster
Drehencoder-Modul
Relaismodul
DHT22 Feuchtigkeits- und Temperatursensor
TM1637-kompatibles 4-stelliges 7-Segment-Display
MPU-6050 IMU mit Stiftleisten
SSD1306-kompatibles I²C OLED-Display
Micro-SD-Kartenadapter mit Stiftleiste
Buzzer
SG90 Mikro-Servo
ILI9341-kompatibles SPI 240×320 TFT-Display
20× Jumperkabel
Breadboard
Mit dem Elektor Arduino Nano Trainingsboard (MCCAB) eigene Projekte realisieren
Der Mikrocontroller ist das wohl faszinierendste Teilgebiet der Elektronik, denn aufgrund der Vielzahl von Funktionen, die er auf seinem Chip vereinigt, ist er für den Entwickler ein universelles Multi-Tool zur Realisierung seiner Projekte. Praktisch jedes Gerät des täglichen Gebrauchs wird heute von einem Mikrocontroller gesteuert. Für einen elektronischen Laien blieb es aufgrund der Komplexität bisher allerdings ein Wunschtraum, eigene Ideen mit einem Mikrocontroller zu realisieren. Das Arduino-Konzept hat den Einsatz von Mikrocontrollern weitgehend vereinfacht, sodass jetzt auch Laien eigene Elektronik-Ideen mit einem Mikrocontroller verwirklichen können.
Buch & Hardware im Bundle: 'Learning by Doing'
Dieses im Bundle mitgelieferte Buch (im großen A4-Format) zeigt, wie man auch ohne große Erfahrung in Elektronik und Programmiersprachen eigene Projekte mit einem Mikrocontroller realisieren kann. Es ist ein Mikrocontroller-Praxiskurs für Einsteiger, denn nach einem Überblick über die Interna des Mikrocontrollers und einer Einführung in die Programmiersprache C liegt der Schwerpunkt des Kurses auf den praktischen Übungen. Der Leser eignet sich die erforderlichen Kenntnisse durch 'Learning by Doing' an: in dem umfangreichen Praxisteil mit 12 Projekten und 46 Übungen wird das im vorderen Teil des Buches Gelernte mit vielen Beispielen unterlegt. Die Übungen sind dabei so aufgebaut, dass der Bearbeiter eine Aufgabenstellung erhält, die er mit seinem im Theorieteil des Buches aufgebauten Wissen löst. Für jede Übung gibt es anschließend eine ausführlich erklärte und kommentierte Musterlösung, die dem Bearbeiter bei Problemen weiterhilft und die er mit seiner eigenen Lösung vergleichen kann.
Arduino IDE
In der Arduino IDE, einer Software-Entwicklungsumgebung, die kostenlos auf den eigenen PC heruntergeladen werden kann und die das gesamte Softwarepaket enthält, das für ein eigenes Mikrocontroller-Projekt benötigt wird, schreibt der Bearbeiter mit dem Editor der IDE seine Programme („Apps“) in der Programmiersprache C. Der in die Arduino IDE integrierte Compiler übersetzt sie in die Bits und Bytes, die der Mikrocontroller versteht und die dann über ein USB-Kabel in den Speicher des Mikrocontrollers auf dem Elektor Arduino Nano Trainingsboard (MCCAB) geladen werden.
Externe Sensoren, Motoren oder Baugruppen abfragen oder steuern
Das Elektor Arduino Nano Trainingsboard (MCCAB) enthält neben einem Mikrocontrollermodul Arduino Nano alle für die Übungen benötigten Bauteile wie Leuchtdioden, Schalter, Taster, akustische Signalgeber usw. Auch externe Sensoren, Motoren oder Baugruppen können mit diesem Mikrocontroller-Übungssystem abgefragt oder gesteuert werden.
Technische Daten (Arduino Nano Trainingsboard MCCAB)
Stromversorgung
Über die USB-Verbindung des zur Erstellung der Programme sowieso angeschlossenen PCs oder ein externes Netzteil (nicht im Lieferumfang enthalten)
Betriebsspannung
+5 Vcc
Eingangsspannung
Alle Eingänge
0 V bis +5 V
VX1 und VX2
+8 V bis +12 V (nur bei Verwendung eines externen Netzteils)
Mikrocontrollermodul
Arduino Nano
Hardwareperipherie
LCD
2x16 Zeichen
Potenziometer P1 & P2
JP3: Auswahl der Betriebsspannung von P1 & P2
Verteiler
SV4: Verteiler für die BetriebsspannungenSV5, SV6: Verteiler für die Ein-/Ausgänge des Mikrocontrollers
Schalter und Taster
RESET-Taster auf dem Arduino Nano-Modul6x Tastschalter K1 … K66x Schiebeschalter S1 … S6JP2: Verbindung der Schalter mit den Eingängen des Mikrocontrollers
Summer
Piezo-Summer Buzzer1 mit Steckbrücke auf JP6
Leuchtanzeigen
LED L auf dem Arduino Nano-Modul, verbunden mit GPIO D1311x LED: Zustandsanzeige für die Ein-/AusgängeJP6: Verbindung der LEDs LD10 … LD20 mit den GPIOs D2 … D12
Serielle SchnittstellenSPI & I²C
JP4: Auswahl des Signals an Pin X der SPI-Steckerleiste SV12SV9 bis SV12: SPI-Interface (3,3 V/5 V) bzw. I²C-Interface
Schaltausgang für externe Geräte
SV1, SV7: Schaltausgang (maximal +24 V/160 mA, extern zugeführt)SV2: 2x13 Pins zum Anschluss externer Module
3x3 LED-Matrix (9 rote LEDs)
SV3: Spalten der 3x3 LED-Matrix (Ausgänge D6 … D8)JP1: Verbindung der Reihen mit den GPIOs D3 … D5
Software
Library MCCABLib
Steuerung der Hardware-Komponenten (Schalter, Taster, Leuchtdioden, 3x3 LED-Matrix, Summer) auf dem MCCAB Trainingsboard
Betriebstemperatur
bis +40 °C
Abmessungen
100 x 100 x 20 mm
Technische Daten (Arduino Nano)
Mikrocontroller
ATmega328P
Architektur
AVR
Betriebsspannung
5 V
Flashspeicher
32 KB, davon 2 KB vom Bootloader belegt
SRAM
2 KB
Taktfrequenz
16 MHz
Analoge IN-Pins
8
EEPROM
1 KB
DC-Strom pro I/O-Pin
40 mA an einem I/O-Pin, insgesamt maximal 200 mA an allen Pins gemeinsam
Eingangsspannung
7-12 V
Digitale I/O-Pins
22 (6 davon sind PWM-fähig)
PWM-Ausgänge
6
Stromverbrauch
19 mA
Abmessungen
18 x 45 mm
Gewicht
7 g
Lieferumfang
Elektor Arduino Nano MCCAB Trainingsboard
Arduino Nano
Buch: Mikrocontroller-Praxiskurs für Arduino-Einsteiger
Dieses Buch behandelt Softwaretechniken, die es gestatten, auch anspruchsvollere Programme für AVR-Mikrocontroller zu entwickeln. Speziell wird im ersten Teil, welcher den Datenstrukturen gewidmet ist, besonders auf die Harvard-Architektur der Controller und die daraus resultierenden Programmiertechniken eingegangen. Die kleinen Arbeitsspeicher der meisten AVR-Controller erfordern immer wieder angepasste Implementierungsmethoden, davon werden einige im Buch vorgestellt, beispielsweise die verdichtete Speicherung und das Sortieren kurzer Zahlenfolgen mit Sortiernetzwerken. Die Implementierung der Buddy-Methode zur Arbeitsspeicherverwaltung zeigt, dass bei der Programmierung von AVR-Controllern nicht nur simple Algorithmen verwendet werden können.Im zweiten Teil des Buches wird die Arithmetik der Controller analysiert. Diese Analyse ist aber kein Selbstzweck, denn sie führt auf Programmiertechniken, die ohne sie nur schwer zu erlangen oder zu erklären wären. Ferner wird eine Fixkommaarithmetik entwickelt, die der Rechenleistung der Controller in vielen Fällen besser angepasst ist als eine rechenleistungsintensive Fließkommaarithmetik. An zwei Beispielen wird gezeigt, wie auf dieser Basis auch höhere Funktionen implementiert werden können.Für die Programme wird durchweg der AVR-Assembler eingesetzt, der kostenlos zur Verfügung steht. Der Simulator, welcher Teil der Programmierumgebung ist, der auch der Assembler angehört, gestattet es, die Programme des Buches nachzuvollziehen oder mit ihnen zu experimentieren, ohne einen echten Controller einzusetzen.
Realize your own projects with the Elektor Arduino Nano MCCAB Training Board
The microcontroller is probably the most fascinating subfield of electronics. Due to the multitude of functions, it combines on its chip, it is a universal multi-tool for developers to realize their projects. Practically every device of daily use today is controlled by a microcontroller. However, for an electronic layman, realizing his own ideas with a microcontroller has so far remained a pipe dream due to its complexity. The Arduino concept has largely simplified the use of microcontrollers, so that now even laymen can realize their own electronics ideas with a microcontroller.
Book & Hardware in the Bundle: 'Learning by Doing'
This book, which is included in the bundle, shows how you can realize your own projects with a microcontroller even without much experience in electronics and programming languages. It is a microcontrollers hands-on course for starters, because after an overview of the internals of the microcontroller and an introduction to the programming language C, the focus of the course is on the practical exercises. The reader acquires the necessary knowledge by 'learning by doing': in the extensive practical section with 12 projects and 46 exercises, what is learned in the front part of the book is underpinned with many examples. The exercises are structured in such a way that the user is given a task to solve using the knowledge built up in the theoretical part of the book. Each exercise is followed by a sample solution that is explained and commented on in detail, which helps the user to solve problems and compare it with his own solution.
Arduino IDE
The Arduino IDE is a software development environment that can be downloaded for free to your own PC and that contains the entire software package needed for your own microcontroller projects. You write your programs ('apps') with the IDE’s editor in the C programming language. You translate them into the bits and bytes that the microcontroller understands using the Arduino IDE's built-in compiler, and then load them into the microcontroller's memory on the Elektor Arduino MCCAB Nano Training Board via a USB cable.
Query or control external sensors, motors or assemblies
In addition to an Arduino Nano microcontroller module, the Elektor Arduino Nano MCCAB Training Board contains all the components required for the exercises, such as light-emitting diodes, switches, pushbuttons, acoustic signal transmitters, etc. External sensors, motors or assemblies can also be queried or controlled with this microcontroller training system.
Specifications (Arduino Nano MCCAB Training Board)
Power Supply
Via the USB connection of the connected PC or an external power supply unit (not included)
Operating Voltage
+5 Vcc
Input Voltage
All inputs
0 V to +5 V
VX1 and VX2
+8 V to +12 V (only when using an external power supply)
Hardware periphery
LCD
2x16 characters
Potentiometer P1 & P2
JP3: selection of operating voltage of P1 & P2
Distributor
SV4: Distributor for the operating voltagesSV5, SV6: Distributor for the inputs/outputs of the microcontroller
Switches and buttons
RESET button on the Arduino Nano module 6x pushbutton switches K1 ... K6 6x slide switches S1 ... S6 JP2: Connection of the switches with the inputs of the microcontroller
Buzzer
Piezo buzzer Buzzer1 with jumper on JP6
Indicator lights
11 x LED: Status indicator for the inputs/outputs LED L on the Arduino Nano module, connected to GPIO D13 JP6: Connection of LEDs LD10 ... LD20 with GPIOs D2 ... D12
Serial interfacesSPI & I²C
JP4: Selection of the signal at pin X of the SPI connector SV12 SV9 to SV12: SPI interface (3.3 V/5 V) or I²C interface
Switching output for external devices
SV1, SV7: Switching output (maximum +24 V/160 mA, externally supplied) SV2: 2x13 pins for connection of external modules
3x3 LED matrix(9 red LEDs)
SV3: Columns of the 3x3 LED matrix (outputs D6 ... D8) JP1: Connection of the rows with the GPIOs D3 ... D5
Software
Library MCCABLib
Control of hardware components (switches, buttons, LEDs, 3x3 LED matrix, buzzer) on the MCCAB Training Board
Operating Temperature
Up to +40 °C
Dimensions
100 x 100 x 20 mm
Specifications (Arduino Nano)
Microcontroller
ATmega328P
Architecture
AVR
Operating Voltage
5 V
Flash Memory
32 KB, of which 2 KB used by bootloader
SRAM
2 KB
Clock Speed
16 MHz
Analog IN Pins
8
EEPROM
1 KB
DC Current per I/O Pins
40 mA on one I/O pin, total maximum 200 mA on all pins together
Input Voltage
7-12 V
Digital I/O Pins
22 (6 of which are PWM)
PWM Output
6
Power Consumption
19 mA
Dimensions
18 x 45 mm
Weight
7 g
Included
Elektor Arduino Nano MCCAB Training Board
Arduino Nano
Book: Microcontrollers Hands-on Course for Arduino Starters
With Examples for Arduino UNO, Raspberry Pi Pico and ESP32
Programming small electronic systems has never been more accessible. Tasks that once demanded expensive tools, specialized hardware, and deep electrical engineering expertise can now be tackled with low-cost development boards and approachable software. At the centre of this shift is the Arduino environment, which provides a unified and familiar way to program a wide range of microcontroller platforms—from classic AVR boards like the Arduino UNO to modern ARM-based boards such as the Raspberry Pi Pico, and powerful Wi-Fi-enabled devices like the ESP32.
This book introduces embedded programming through the core idea that defines all microcontrollers: reading inputs, processing information, and controlling outputs in a predictable loop. The Arduino environment abstracts much of the hardware complexity, allowing you to focus on behaviour rather than implementation details. With just a few lines of code, you can blink LEDs, read sensors, control motors, and communicate with other devices.
While the Arduino UNO, Raspberry Pi Pico, and ESP32 boards differ greatly in performance and features, they share the same fundamental building blocks: digital and analog I/O, timers, serial communication, PWM, interrupts, and power management. Learning these concepts within the Arduino framework builds skills that transfer easily across platforms and scale toward more advanced applications.
By exploring multiple boards while maintaining a consistent programming approach, this book helps you progress from simple experiments to confidently produce well-structured designs—showing that embedded development can be both practical and enjoyable.
Dieser vollständige Programmierkurs für den ESP32-Mikrocontroller umfasst ein Lehrbuch, ein Komponenten-Set, praxisnahe Projekte sowie einen umfassenden Online-Kurs mit Simulationen. Er eignet sich ideal für das schrittweise Erlernen der Embedded-System-Programmierung mit Arduino – mit einem praxisorientierten, hands-on Ansatz.
Ein praxisnaher Einstieg in Embedded Systems mit dem ESP32
Dieser Kurs richtet sich an Personen ohne Vorkenntnisse im Bereich Embedded Systems, die einen strukturierten und beispielbasierten Einstieg suchen.
Ein Kit bestehend aus LEDs und Widerständen, Schaltern, Sensoren und Aktoren, Displays, einem Breadboard und Kabeln sowie weiteren Komponenten ist enthalten. Diese werden im Kurs verwendet, um Beispielanwendungen zu veranschaulichen.
Vorkenntnisse mit Arduino oder Embedded-Entwicklung sind nicht erforderlich. Jeder Abschnitt enthält praktische Beispiele und Mini-Projekte, die wichtige Konzepte festigen und zur weiteren Vertiefung anregen. Am Ende des Kurses werden Sie nicht nur in der Lage sein, die Beispiele nachzuvollziehen, sondern auch eigene Ideen und Anwendungen umzusetzen.
Was werden Sie lernen?
Programmierung des ESP32-Mikrocontrollers mit der Arduino IDE
Arbeiten mit digitalen Ein- und Ausgängen, Auslesen von Tastern und Encodern, Steuern von LEDs und Relais
Auslesen analoger Eingänge, Spannungen und analoger Sensoren
Erzeugung analoger Ausgangssignale und PWM
Verwendung serieller Kommunikation wie UART, I²C und SPI zur Steuerung von Displays und zum Auslesen digitaler Sensoren und SD-Karten
Zeitmanagement
Arbeiten mit Interrupts
Echtzeit-Sensordatenerfassung und Steuerung über Taster, LEDs und Displays
Steuerung von Aktoren wie Relais und Servomotoren
Für wen ist dieser Kurs geeignet?
Studierende und Selbstlerner im Bereich Embedded Systems
Makers und IoT-Enthusiasten, die ihre Hardware-Kenntnisse verbessern möchten
Lehrkräfte und Trainer, die sofort einsetzbares Unterrichtsmaterial suchen
Was ist im Lieferumfang enthalten?
Zugang zum vollständigen Kurs auf der Elektor Academy Pro-Lernplattform
ESP32 Mikrocontroller-Board (+ USB-Kabel)
Buch: Programming Microcontrollers in C/C++ Using Arduino
Downloadbare Projektdateien für jedes Modul
Komponenten-Set:
2× LED, rot, 5 mm
LED, grün, 5 mm
3× Widerstand, 470 Ω, 0,25 W
LDR
Potentiometer, 10 kΩ, linear
Taster
Drehencoder-Modul
Relaismodul
DHT22 Feuchtigkeits- und Temperatursensor
TM1637-kompatibles 4-stelliges 7-Segment-Display
MPU-6050 IMU mit Stiftleisten
SSD1306-kompatibles I²C OLED-Display
Micro-SD-Kartenadapter mit Stiftleiste
Buzzer
SG90 Mikro-Servo
ILI9341-kompatibles SPI 240×320 TFT-Display
20× Jumperkabel
Breadboard
Alle Programmierkurse (und Unterschiede im Inhalt)
Kurs
Arduino
Raspberry Pi Pico with Arduino C/C++
ESP32 with Arduino C/C++
Raspberry Pi Pico with MicroPython
ESP32 with MicroPython
Online-Kurs
Access to Arduino Course
Access to Pico with Arduino C/C++ Course
Access to ESP32 with Arduino C/C++ Course
Access to Pico with MicroPython Course
Access to ESP32 with MicroPython Course
Board
Uno R3
Raspberry Pi Pico
ESP32
Raspberry Pi Pico
ESP32
Buch
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in MicroPython
Programming Microcontrollers in MicroPython
Kit
40-teiliges Komponenten-Set
40-teiliges Komponenten-Set
40-teiliges Komponenten-Set
40-teiliges Komponenten-Set
40-teiliges Komponenten-Set