feinschliff
This commit is contained in:
parent
32b1f4fd2c
commit
f193f754e0
|
@ -32,6 +32,8 @@
|
|||
\usecolortheme{beaver}
|
||||
|
||||
\newcommand{\weblink}[1]{\textcolor{blue}{\href{#1}{#1}}}
|
||||
\definecolor{darkblue}{rgb}{0,0,.45}
|
||||
\newcommand{\cfunc}[1]{\texttt{\textcolor{darkblue}{#1}}}
|
||||
|
||||
\author{Fisch, Stefan, Tunix}
|
||||
\title{Arduino-Workshop}
|
||||
|
|
|
@ -53,7 +53,7 @@ a = analogRead(0);
|
|||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Aufgabe 7: Beleuchtung messen}
|
||||
\frametitle{Aufgabe 8: Beleuchtung messen}
|
||||
\begin{columns}
|
||||
\column{.6\linewidth}
|
||||
\begin{block}{Aufgabe}
|
||||
|
|
|
@ -30,15 +30,15 @@
|
|||
\item Schnittstellen wie SPI, seriell, GPIO…
|
||||
\item Timer
|
||||
\end{itemize}
|
||||
\item riesige Auswahl mit unterschiedlichsten Funktionen,
|
||||
\item riesige Auswahl an Controllern mit unterschiedlichsten Funktionen,
|
||||
Leistungsklassen und Preiskategorien
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Leistungsdaten vom ATmega328P\footnote{
|
||||
\weblink{http://www.atmel.com/devices/atmega328p.aspx}} (Auszug)}
|
||||
\frametitle{Der ATmega328P\footnote{
|
||||
\weblink{http://www.atmel.com/devices/atmega328p.aspx}} auf dem Arduino (Auszug)}
|
||||
\begin{itemize}
|
||||
\item Taktfrequenz 16 MHz
|
||||
\item 8-Bit-Architektur (vgl. PC mit 64 Bit)
|
||||
|
@ -47,10 +47,9 @@
|
|||
\item eine USART, um z.B. mit dem PC zu kommunizieren
|
||||
\item drei Timer um zeitgesteuerte Funktionen oder bestimme Signalformen
|
||||
(PWM) zu realisieren, dazu später mehr
|
||||
\item acht ADC-Kanäle, um Spannungen zu messen, z.B. von Drehknöpfen
|
||||
\item 20 frei ein- und ausschaltbare Pins (theoretisch bis zu 23)
|
||||
\item \alert{Nicht einschüchtern lassen, wir klären nach und nach, was
|
||||
es damit auf sich hat!}
|
||||
\item sechs ADC-Kanäle, um Spannungen zu messen, z.B. von Drehknöpfen
|
||||
\item 20 frei nutzbare Ein- und Ausgänge
|
||||
\item \alert{Keine Panik:} Wir erklären nachher, was davon wichtig ist!
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
|
@ -78,7 +77,7 @@
|
|||
\item er folgt einem Sketch ($\widehat{=}$ Programm), den wir in die
|
||||
Arduino-Umgebung eingeben
|
||||
\item ein Sketch ist eine Liste von Anweisungen, ähnlich einem Rezept
|
||||
\item ein solches Rezept ist in der Programmiersprache \emph{C}
|
||||
\item ein solches Rezept ist in der Programmiersprache \emph{C++}
|
||||
formuliert (bzw. in deren Dialekt \emph{Wiring})
|
||||
\item vereinfacht ausgedrückt ist das eine Mischung aus englischen
|
||||
Wörtern und mathematischen Formeln
|
||||
|
@ -101,9 +100,9 @@
|
|||
\frametitle{Wie kommt der Sketch in den Mikrocontroller?}
|
||||
\begin{itemize}
|
||||
\item die Arduino-Platine hat ein eingebautes Programmiergerät
|
||||
\item es empfängt den von der Arduino-Umgebung übersetzten Sketch über
|
||||
den USB-Anschluss und schreibt ihn in den Flash-Speicher des Mikrocontrollers
|
||||
\item fast wie ein USB-Stick, kann aber nur ein Programm aufnehmen
|
||||
\item es empfängt den übersetzten Sketch über den USB-Anschluss
|
||||
\item und schreibt ihn in den nichtflüchtigen Speicher des Mikrocontrollers
|
||||
\item dieser ist ähnlich einem USB-Stick, kann aber nur ein Programm aufnehmen
|
||||
\item das Programm läuft nach dem Einschalten sofort los
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
|
|
@ -29,16 +29,15 @@
|
|||
%}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Aufgabe 1: Die blinkende LED}
|
||||
\begin{description}
|
||||
\item[setup() :] Wird einmal beim Start ausgeführt
|
||||
\item[loop() :] Wird kontinuierlich aufgerufen
|
||||
\item[pinMode(PIN,wert) :] Legt einen Pin als Ein- oder Ausgang fest
|
||||
\item[digitalWrite(PIN,wert) :] Schreibt digitalen Wert (HIGH oder LOW) auf den Ausgang
|
||||
\item[delay(zeit) :] Pausiert das Ausführen für x Millisekunden
|
||||
\end{description}
|
||||
\begin{tabular}{rp{0.6\textwidth}}
|
||||
\cfunc{setup()} & wird einmal beim Start ausgeführt \\
|
||||
\cfunc{loop()} & wird kontinuierlich aufgerufen \\
|
||||
\cfunc{pinMode(PIN,wert)} & legt einen Pin als Ein- oder Ausgang fest \\
|
||||
\cfunc{digitalWrite(PIN,wert)} & schreibt digitalen Wert (HIGH oder LOW) auf den Ausgang \\
|
||||
\cfunc{delay(x)} & Pausiert das Ausführen für x Millisekunden \\
|
||||
\end{tabular}
|
||||
\end{frame}
|
||||
|
||||
\section{Das Breadboard-Shield}
|
||||
|
@ -66,21 +65,12 @@
|
|||
\begin{frame}
|
||||
\frametitle{Grundlagen -- Wichtige Grundbegriffe}
|
||||
\begin{itemize}
|
||||
\item \emph{Strom} bezeichnet die Bewegung von geladenen Teilchen
|
||||
\item \emph{Spannung} ist ein Ladungsunterschied zwischen zwei Orten
|
||||
\item \emph{Strom} (Ampère) bezeichnet die Bewegung von geladenen Teilchen
|
||||
\item \emph{Spannung} (Volt) ist ein Ladungsunterschied zwischen zwei Orten
|
||||
\item bewegliche Ladungen wollen Ladungsunterschiede immer ausgleichen $\rightarrow$ Strom fließt
|
||||
\item der \emph{Widerstand} begrenzt den Stromfluss, alle Verbraucher (wie LEDs) bilden selbst einen Widerstand
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Grundlagen -- LED anschließen}
|
||||
\begin{itemize}
|
||||
\item die LED wird zwischen einem Pin des Controllers und der Masse (die Rückleitung, auch \emph{GND}) angeschlossen
|
||||
\item die Spannung zwischen Mikrocontroller und der Masse beträgt 5V
|
||||
\item \alert{Problem: 5V sind zu viel für eine LED}
|
||||
\item Lösung: wir brauchen einen Vorwiderstand
|
||||
\item Technische Stromrichtung: Strom fließt von Plus nach Minus\footnote{\footnotesize{physikalisch ist es eigentlich genau anders herum}}
|
||||
\item der \emph{Widerstand} (Ohm, $\Omega$) begrenzt den Stromfluss
|
||||
\item alle Verbraucher (wie LEDs) bilden selbst einen Widerstand
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
|
@ -92,7 +82,7 @@
|
|||
\item LEDs haben eine Polung
|
||||
\item der positive Pol heißt \textcolor{red}{\emph{Anode}}
|
||||
\item der negative Pol heißt \textcolor{blue}{\emph{Kathode}}
|
||||
\item die Kathode erkennt man an der kurzen Leitung, an der abgeflachten Stelle am Rand oder an der Reflektorwanne
|
||||
\item die Kathode erkennt man an der kurzen Leitung oder an der abgeflachten Stelle am Rand
|
||||
\item \alert{Merkhilfe: \emph{K}athode/\emph{K}ante/\emph{k}urz}
|
||||
\end{itemize}
|
||||
\column[t]{.30\textwidth}
|
||||
|
@ -103,6 +93,17 @@
|
|||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Grundlagen -- LED anschließen}
|
||||
\begin{itemize}
|
||||
\item die LED wird zwischen einem Pin des Controllers und der Masse (die Rückleitung, auch \emph{GND}) angeschlossen
|
||||
\item die Spannung zwischen Mikrocontroller und der Masse beträgt 5V
|
||||
\item \alert{Problem: 5V sind zu viel für eine LED}
|
||||
\item Lösung: wir brauchen einen Vorwiderstand
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Das Shield -- Verkabelung}
|
||||
\begin{center}
|
||||
|
@ -118,7 +119,7 @@
|
|||
\begin{center}
|
||||
\includegraphics[width=0.5\linewidth,height=\textheight,keepaspectratio]{bilder/widerstaende.pdf}
|
||||
\end{center}
|
||||
\item kennen wir den Widerstand der LED, können wir den Vorwiderstand ausrechnen
|
||||
\item kennen wir bestimmte Werte der LED, können wir den Vorwiderstand ausrechnen
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
|
@ -132,7 +133,7 @@
|
|||
\item Flussspannung oder Forward Voltage $U_F$, meistens um die 2V
|
||||
\item Diffusionsstrom oder Forward Current $I_F$, meist um die 20mA, bei uns 14mA $\widehat{=}$ 0,014A
|
||||
\end{itemize}
|
||||
\item bei der Berechung hilft uns:
|
||||
\item bei der Berechnung hilft uns:
|
||||
\end{itemize}
|
||||
\begin{block}{Ohmsches Gesetz}
|
||||
\begin{columns}[T]
|
||||
|
|
Loading…
Reference in New Issue