Raspberry Pi programmieren mit Java
In jedem Kapitel werden neue Techniken der Java-Programmierung eingeführt, die Sie daraufhin in einem Praxisbeispiel einsetzen: Funktionen für Datum und Zeit: Akkus laden mit zeitgesteuerten Relais und eine Spiegelreflexkamera steuern Digitale Eingänge und Sensoren: Bewegungsmelder, Ultraschallsenso...
Main Author: | |
---|---|
Format: | eBook |
Language: | German |
Published: |
[Germany?]
MITP Verlags GmbH & Co. KG
2016
|
Edition: | 1. Auflage |
Subjects: | |
Online Access: | |
Collection: | O'Reilly - Collection details see MPG.ReNa |
Table of Contents:
- A.9 Exceptions
- A.10 Garbage-Collector
- A.11 Packages
- Stichwortverzeichnis
- 16.8 Den Sensor im Komparator-Modus testen
- Kapitel 17: Die serielle Schnittstelle RS232
- 17.1 Die Schnittstelle konfigurieren
- 17.2 Mit Pi4J die serielle Schnittstelle steuern
- 17.3 Der Ultraschall-Entfernungssensor SRF02
- 17.4 Die Klasse SRF02
- 17.5 Entfernungsmessung
- 17.6 Kurze Distanzen
- 17.7 Die Sensoradresse ändern
- Kapitel 18: Textausgabe mit LCD-Displays
- 18.1 Der Befehlssatz des HD 44780
- 18.1.1 Clear Display
- 18.1.2 Cursor Home
- 18.1.3 Entry Mode Set
- 18.1.4 Display On/Off Control
- 18.1.5 Cursor / Display Shift
- 18.1.6 Function Set
- 18.1.7 RAM Address Set und Data write
- 18.1.8 CG RAM Address Set
- 18.1.9 Und noch zwei Lesebefehle
- 18.2 Die Initialisierung des Displays
- 18.3 Das Programmkonzept
- 18.4 Die Klasse DisplayHD44780
- 18.5 Die Klasse PinDirect
- 18.6 Das Display testen
- 18.6.1 Die Klasse Test8Bit
- 18.6.2 Die Klasse Test4Bit
- 18.6.3 Die Klasse TestDisplay
- 18.7 Das Display über den MCP23017 ansteuern
- 18.7.1 Die Klasse PinMCP23017
- 18.7.2 Die Klasse Test8BitMCP23017
- 18.7.3 Die Klasse Test4BitMCP23017
- Anhang A: Java
- A.1 Der erste Programmcode
- A.2 Java-Konzepte
- A.2.1 Objekte
- A.2.2 Klassen und Instanzen
- A.2.3 Vererbung
- A.2.4 Interface
- A.2.5 Package
- A.3 Java-Grundlagen
- A.3.1 Variable
- A.3.2 Arrays
- A.3.3 Operatoren
- A.3.4 Programmfluss
- A.4 Java ist objektorientiert
- A.4.1 Klasse
- A.4.2 Variablen
- A.4.3 Methoden
- A.4.4 Konstruktoren
- A.4.5 this
- A.4.6 Zugriffsrechte
- A.4.7 static und final
- A.4.8 Anonyme innere Klassen
- A.4.9 ENUM-Datentypen
- A.4.10 Interfaces
- A.4.11 Vererbung
- A.4.12 Methoden überschreiben
- A.4.13 Super
- A.4.14 Überschreiben unterbinden
- A.4.15 Abstrakte Klassen und Methoden
- A.5 Wrapper-Klassen für numerische Datentypen
- A.6 Zeichenkette (String)
- A.7 Character
- A.8 Boolean
- 5.8 Zeitsteuerung einer Kamera
- 5.9 Die Navigation in BlueJ
- Kapitel 6: Digitale Eingänge und Sensoren
- 6.1 Den Raspberry Pi über einen Taster steuern
- 6.2 Externe Prozesse über einen Taster steuern
- 6.3 Der Bewegungsmelder HC-SR501
- 6.4 Licht und Musik über den Bewegungsmelder steuern
- 6.5 Abstandsmessung mit dem Ultraschallsensor HC-SR04
- 6.6 Schmitt-Trigger für analoge Sensoren
- Kapitel 7: Swing lernen
- 7.1 Ein Fenster erzeugen
- 7.2 Swing-Komponenten
- 7.3 Auf Ereignisse reagieren und Text verarbeiten
- 7.4 Auf Ereignisse in einer Auswahlliste reagieren
- 7.5 Auf Ereignisse in Checkboxen und Radiobuttons reagieren
- 7.6 Auf Ereignisse in einer Liste reagieren
- 7.7 Noch etwas über Ereignisse
- Kapitel 8: Analoge Eingänge und Sensoren
- 8.1 Den MCP3002 an den Raspberry Pi anschließen
- 8.2 Temperaturmessung mit einem NTC-Widerstand
- 8.2.1 Kennlinie linearisieren
- 8.2.2 Der passende Verstärker
- 8.2.3 Die Schutzschaltung
- 8.3 LDR-Sensoren
- 8.4 Analoge Distanzsensoren
- Kapitel 9: Messwerte speichern
- 9.1 Auf Dateien und Verzeichnisse zugreifen
- 9.1.1 Dateisystem
- 9.1.2 In eine Datei schreiben
- 9.1.3 Aus einer Datei lesen
- 9.2 Listen, Mengen und assoziative Speicher
- 9.2.1 Mit Listen arbeiten
- 9.2.2 Mit Mengen arbeiten
- 9.2.3 Arbeiten mit assoziativem Speicher
- 9.3 Zeichenketten formatieren
- 9.4 Einen Datenlogger schreiben
- 9.5 Temperatur und Beleuchtungsstärke loggen
- Kapitel 10: Messwertgrafiken mit Swing
- 10.1 Das Prinzip der Komponentenentwicklung
- 10.2 Die Hilfsklasse ComputeDiagram
- 10.3 Die Swing-Komponente JDiagram
- 10.4 Diagramme in einer Swing-Anwendung anzeigen
- 10.5 Geloggte Messwerte anzeigen
- Kapitel 11: Threads und reguläre Ausdrücke
- 11.1 Threads implementieren
- 11.1.1 Threads anlegen und starten
- 11.1.2 Threads beenden
- 11.1.3 Daten teilen
- 11.1.4 Auf das Ende warten
- 11.2 Reguläre Ausdrücke
- 11.2.1 Zeichenklassen
- 11.2.2 Vordefinierte Zeichenklassen
- 11.2.3 Häufigkeit
- Kapitel 12: Füllstandsanzeige für eine Zisterne
- 12.1 Die Schaltung
- 12.2 Der HTTP-Server stellt sich vor
- 12.3 Den Webserver bauen
- 12.3.1 Die Klasse RaspiHttpServer
- 12.3.2 Die Klasse HttpHandlerZisterne
- 12.3.3 Die Klasse Scheduler
- 12.3.4 Die Klasse Sensor
- 12.4 Der Client
- 12.4.1 Die Klasse HttpClient
- 12.4.2 Die Swing-Anwendung
- Kapitel 13: Eine Heizungssteuerung
- 13.1 Die Schaltung
- 13.2 Das Programmkonzept
- 13.2.1 Die Klasse RaspiHttpServer
- 13.2.2 Die Klasse HttpHandlerHeizung
- 13.2.3 Die Klasse Scheduler
- 13.2.4 Die Klasse Sensor
- 13.3 Der Client
- 13.3.1 Die Klasse HttpClient
- 13.3.2 Die Klasse JTempPanel
- 13.3.3 Die Klasse Gui
- Kapitel 14: Eine Zeitschaltuhr
- 14.1 Die Schaltung
- 14.2 Das Programmkonzept
- 14.2.1 Die Klasse RaspiHttpServer
- 14.2.2 Die Klasse SchedulerPort
- 14.2.3 Die Klasse HttpHandlerZeitschaltuhr
- 14.3 Der Client
- 14.3.1 Die Klasse HttpClient
- 14.3.2 Die Klasse ZeitschaltuhrProperties
- 14.3.3 Die Klasse GuiUtil
- 14.3.4 Die Klasse Gui
- 14.4 Einen Autostart für den Server einrichten
- 14.5 Hinweise zum Betrieb des Servers
- 14.6 Eine Desktop-Verknüpfung erstellen
- Kapitel 15: E-Mail-Alarm
- 15.1 Das Package raspi.mail
- 15.1.1 Die Klasse MailService
- 15.1.2 Die Klasse EMail
- 15.2 Das Projekt
- 15.2.1 Die Klasse AlarmProperties
- 15.3 Die Klasse AlarmService
- 15.4 Die Klasse Shutdown
- 15.5 Die Klasse Alarm
- 15.6 Autostart
- Kapitel 16: Der I2C-Bus
- 16.1 Den I2C-Bus einrichten
- 16.2 Den I2C-Bus mit Pi4j steuern
- 16.3 Eine Hilfsklasse für I2C-Geräte
- 16.4 Der Temperatursensor MCP9808
- 16.5 Die Arbeitsweise des MCP9808
- 16.6 Die Klasse MCP9808
- 16.7 Den Sensor testen
- Cover
- Titel
- Impressum
- Inhaltsverzeichnis
- Einleitung
- Kapitel 1: Der Raspberry Pi
- 1.1 Das Board
- 1.1.1 Der Prozessor
- 1.1.2 Die GPU (Graphics Processing Unit)
- 1.1.3 Audio
- 1.1.4 Netzwerk und USB
- 1.1.5 CSI (Camera Serial Interface)
- 1.1.6 DSI (Display Serial Interface)
- 1.1.7 Status-LEDs
- 1.1.8 Der Schacht für die SD-Karte
- 1.1.9 GPIO (General Purpose Input and Output)
- 1.2 Ein Gehäuse für den Raspberry Pi
- 1.3 Das richtige Netzteil
- 1.4 Tastatur, Maus und HDMI-Kabel
- 1.5 Die SD-Karte
- Kapitel 2: Booten und konfigurieren
- 2.1 Das Betriebssystem auf die SD-Karte laden
- 2.2 Booten
- 2.2.1 Reboot und richtig ausschalten
- 2.2.2 Mögliche Fehler
- 2.3 Der Raspberry Pi und das Netzwerk
- 2.4 Der Desktop
- 2.5 Den Raspberry Pi headless betreiben
- 2.6 Der Raspberry Pi und das WLAN
- 2.7 Ein Backup
- Kapitel 3: Linux auf dem Raspberry Pi
- 3.1 Verzeichnisse
- 3.2 Dateien
- 3.3 Suchen
- 3.4 Berechtigungen
- 3.5 Benutzer verwalten
- 3.6 Administrator werden
- 3.7 Dateien und Verzeichnisse packen
- 3.8 Softwarepakete verwalten
- 3.9 Netzwerk
- 3.10 Prozesse
- 3.11 Gemischtes
- Kapitel 4: Projektvorbereitung
- 4.1 BlueJ installieren
- 4.2 Pi4J installieren
- 4.3 Pi4J in BlueJ einbinden
- 4.4 Das Buchprojekt installieren
- 4.5 Ein Projekt anlegen und Pi4J testen
- 4.6 Ein Überblick über das Buchprojekt
- 4.7 Das Gertboard
- 4.7.1 Das Testprogramm
- 4.7.2 Die Klasse TestLED
- Kapitel 5: Datum und Zeit
- 5.1 Die Date-Klasse
- 5.1.1 Jede Zeitangabe gehört zu einer Zeitzone und einem Sprachraum
- 5.2 Die Klassen Calendar und GregorianCalendar
- 5.3 Datum und Zeit formatieren und parsen
- 5.4 An welchem Wochentag habe ich Geburtstag?
- 5.5 Wie viele Arbeitstage liegen zwischen Weihnachten und Silvester?
- 5.6 Relais schalten
- 5.7 Akkus zeitgesteuert laden