ARDUINO-IDE - die Programmierung history menue Letztmalig dran rumgefummelt: 05.12.19 16:00:24

... das aktuelle Zitat: „Das Schweigen ist eine der größten Künste der Konversation.“ - Marcus Tullius Cicero

Lange Zeit war das Basteln mit Mikroelektronik ein teures und vor allem sehr kompliziertes Hobby, weshalb es von vielen Tüftlern links liegen gelassen wurde. Durch die Einführung der ARDUINO-Plattform im Jahr 2005 ändert sich das jedoch gewaltig, und es hat sich bereits eine große, stark wachsende, Community rund um ARDUINO entwickelt. Die ARDUINO-Plattform besteht einerseits aus einer großen Auswahl an ARDUINO Boards, und andererseits aus einer Programmierentwicklungsumgebung (IDE), wodurch die Einstiegshürde extrem gesenkt wurde und das Tüfteln mit Robotern und Mikroelektronik jedem, auch ohne Studium oder umfangreiche Vorkenntnisse, ermöglicht wird.

0. Grundlagenwissen
1. Die ARDUINO-IDE
2. Basis-Programmierung
3. Programmstrukturen
4. Bibliotheken
5. Funktionen
6. Hardware, Sensoren, Logik sowie Treiber
7. Bauelemente - Externe Schaltungen
8. Basis-Logik
9. Verwandte Themen

die Elektronikseiten

 

ARDUINO

ARDUINO-IDE

begrenzt verwendbar - selbst aufpassen, ab welcher Stelle es Blödsinn wird ;-)

Informatik-Profi-Wissen


0. Grundlagenwissen history menue scroll up Letztmalig dran rumgefummelt: 05.12.19 16:00:24

Damit überhaupt erst einmal Klarheit über Ziele sowie Realisierungsmöglichkeiten besteht, gibt's hier den "Basiskusrs" in Sachen Automatisierungstechnik, denn um nichts anderes geht es im eigentlichen Sinne. Das Auto ist gewissermaßen "Vorreiter" in dieser Branche - hier sind die Wünsche und Ziele der Aotomatisierung (... nämlich das Autoneme Fahren) bereits seit langem klar erkennbar. Dazu brauche ich aber Grundwissen in Sachen Steuerung sowie Regelung.
Automatisierung ... Roboter ... Messen, Steuern, Regeln ... Grundlagen ...

Automatisierungstechnik

Roboter - der GOLEM des Rabbi Loew

Messen, Steuern, Regeln

Robotertechnik - die Grundlagen


1. Die ARDUINO-IDE history menue scroll up Letztmalig dran rumgefummelt: 05.12.19 16:00:24

Jedes Programm (Sketch) ist nach einheitlichen Schema aufgebaut: die beiden Basis-Blöcke heißen SETUP und LOOP. Im SETUP werden die Elemente initialisiert, im LOOP läuft das eigentliche Programm. Beide verwenden Methoden (Befehle) mit jeweils zu übergebenden Parametern. In komplexen Routinen werden werden dem SETUP noch Biliotheken vorangestellt, eventuelle Funktionsblöcke werden dem Loop nachgestellt.
ATMEGA328 ... die ARDUINO 3 Ports ARDUINO-Website ARDUINO-IDE - Referenz englisch ARDUINO-Creator https://gist.github.com/michaels123

Pinbelegung des Controllers ATMEGA328

Pinbelegung des ARDUINO UNO-Boards

ARDUINO-Web

ARDUINO-IDE

ARDUINO im Web

 

Website von Michael Bonacina

... furchtbar gute und wichtige Systemreferenz - Begleitmaterial zum Unterricht ... meine wichtigen Systemreferenz-Anmerkungen  

ARDUINO-Referenz zum Unterricht

 

ARDUINO-Analog-Programmierung


2. Basis-Programmierung

Das Blinken einer LED ist so etwas wie das „Hello World“ am Bildschirm, das Pendant hierfür am ARDUINO ist das Blinken einer LED. Praktischerweise haben alle ARDUINOs bereits eine LED fertig auf dem Board verbaut, meist an Pin 13, weshalb wir uns zunächst einmal auf den Sketch fokussieren können.
Beim ARDUINO Uno Version 3 Die obere Leiste sind die 14 digitalen I/O (Input/Output) Pins des ARDUINO mit den Nummern 0 bis 13, und unten rechts sind die sechs analogen Eingänge A0 bis A5. Links unten ist mit dem Ground (Minuspol) und +5V und +3.3V die Spannungsversorgung für Sensoren zu finden.
// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
  delay(1000); // wait for a second
  digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW (LOW is the ground level)
  delay(1000); // wait for a second
}
einfache Starter-Programme mit Erklärungen
Zwei externe LED's blinken wechselseitig      

Zwei externe LED blinken wechselseitig im Sekundentakt

Programm zum Download

     
 
 
Zeitverzögerung  
delay(stop_time); Zeitangaben in Tausendstel Sekunden
/* Kommentarblock über mehrere Zeilen
*/

//Kommentarzeile

Variablen und Konstanten  
   
Setup-Methoden

 

Dabei gibt man als erstes Argument (=Werte die man einer Methode, in diesem Fall pinMode, übergibt) die Pinnummer, welche auch immer direkt am ARDUINO steht, an und als zweites Argument OUTPUT oder INPUT, je nachdem welche Funktion der Pin haben soll. In unserem Fall muss die Zeile im setup Teil also: pinMode(13, OUTPUT); lauten.
Betriebsarten im Pin-Mode

pinMode(pinummer,arbeitsrichtung);

Betriebsarten im Port-Mode

Output für Ausgabe, Input für Eingabe (dazu muss natürlich auch die elektrische Beschaltung angepasst worden sein)

digitalWrite(13, HIGH);

Void-Methoden  
Ein- und Auslesen digitaler Signale im Pin-Mode

digitalWrite(Pinnummer, Status);

digitalRead(Pinnummer, ???);

Ein- und Auslesen analoger Signale Pin-Mode

 

 

 

delay(Anzahl Millisekunden);  
PWM-Steuerung  
Loop-Methoden  
delay(Anzahl Millisekunden);  
PWM-Steuerung  
delay(Anzahl Millisekunden);  


3. Programmstrukturen

Hier wird's klassisch - hinter den Strukturen auch der modernen Programmiersysteme des "Edge-Computings" verstecken sich die eigentlich bereits philosophischen Kategorien: Sequenz, Alternative sowie Zyklus.
Zyklen  
   
Alternativen  
   


4. Bibliotheken

 

 


5. Funktionen

 

 


6.  Hardware, Sensoren, Logik sowie Treiber
Ohne zusätzliche Hardware wird's auch beim ARDUINO schnell langweilig. Irgendwie muss er mit seiner Außenwelt kommunizieren. Minimal braucht's weitere Ausgaben, aber um wirklich Steuerungsaufgaben zu erledigen, muss man auch Eingabewerte verarbeiten können

Pullup-Widerstände

Download im CorelDraw 11.0-Format


7.  Bauelemente - Externe Schaltungen
 

 


8.  Basis-Logik
... in sich ist der ARDUINO eine geschlossene Einheit - aber schnell brauchen wir mehr als ein Bit, welches zweifellos sichtbar an- bzw. ausschaltet. Auch externe Logik zur Ein- bzw. Ausgabe und/oder externe Signalverarbeitung  (... Messen sowie Auswerten eingehender physikalischer Größen).
Logikschaltungen
Additions-Logiken Subtraktions-Logiken Multiplexer-Logiken Decoder-Logiken Code-Wandler

Half-Adder

Download im CorelDraw 11.0-Format

Full-Adder

Download im CorelDraw 11.0-Format

Half-Subtractor

Download im CorelDraw 11.0-Format

Half-Multiplexer

Download im CorelDraw 11.0-Format

   
Folgeschaltungen
einfache Rückkopplung Takt-Kondensator & Taktquarz einfaches RS-Standard-Flip-Flop    

Rückkopplung

Download im CorelDraw 11.0-Format

Freuenzsteuerung

Download im CorelDraw 11.0-Format

RS-Flip-Flop

Download im CorelDraw 11.0-Format

   
Pin-Belegungen wichtiger Logik-Gates Gesamtübersicht logischer und Folgeschaltungen Logikpläne mit realen Gates Aebwiten mit der Experimentier-Planine

Übersicht digitale IC - Stand Februar 2019

Download als CorelDraw11.0-Datei

Installation von Logikschaltungen

Basis-Gates zur Schaltungsentwicklung

Download im CorelDraw 11.0-Format

... die Experimentier-Standard-Platine

Download als CorelDraw11.0-Datei


9. Verwandte Themen history menue scroll up

Was ist alles mit dem Betriebssystem eines Microcomputers verwandt? Antwort: faktisch der gesamte Bereich der Digitalelektronik und sowieso die gesamte Technik der Software-Technologie der Vergangenheit, Gegenwart sowie zumindest der nächsten Zukunft.

PIC5-Schaltungssammlung

Controller-Programmierung

Prinzipiell wird hier natürlich genau so vorgegangen, als handele es sich um ein reines Software-Projekt (was es ja auch eigentlich ist!). Praktisch müssen aber eben doch noch ein paar Eckdaten berücksichtigt werden, sonst wird es unter Umständen teuer oder unmöglich zu realisieren.

Portkonzept Mikrocontroller

Just Anather Lanuage

Flowcode

Installation von Logikschaltungen

Schaltungen mit IC's

Expressiv 32

EasyPIC5-Developer Tool

CALLLIOPE-Mini

Raspberry-Pi

Banana-Pi

Tinker-CAD

Transistoren

Integrierte Schaltkreise

Kombinatorik

... und so funktioniert ein Computer

Mikroprozessorgeschichte

Prozessoraufbau

Z80

Mikrocontrollertechnik

Automatisierungstechnik

A/D-Wandlung

Logikschaltungen - der Entwurf

Bool'sches Aussagenkalkül

Das Kombinatorik-Projekt

Murray-Code

Logische Grundschaltungen

Aufgaben zur Logikentwicklung

Rechenmaschinenmodelle



zur Hauptseite
© Samuel-von-Pufendorf-Gymnasium Flöha © Frank Rost am 18. Juli 2019 um 16.57 Uhr

... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-)

„Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“

Diddi Hallervorden, dt. Komiker und Kabarettist

Diese Seite wurde ohne Zusatz irgendwelcher Konversationsstoffe erstellt ;-)