Schuh Grafiken

This commit is contained in:
Andreas Mieke 2018-03-17 20:05:30 +01:00
parent 61181e4598
commit e30b39b37a
45 changed files with 390 additions and 65 deletions

View file

@ -28,4 +28,4 @@ Das Hauptaugenmerk wurde jedoch auf folgende Anwendungen gelegt:
Das neue \gls{ARM}-\gls{Minimalsystem} kann prinzipiell in drei voneinander getrennten Platinen unterteilt werden. Diese Module wären die \gls{Basisplatine}, das \gls{Core-Modul} und der \gls{USB-to-UART} Adapter. Jedes dieser Module erfüllt einen bestimmten Zweck, welcher schlussendlich zum Gesamtsystem beträgt.
\todo[inline]{Gesamtbild der Schaltungen}
\fig{gesamtsystem}{Gesamtsystem}{Gesamtsystem}{\textwidth}{Allgemein/img/Gesamtsystem}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

View file

@ -91,6 +91,9 @@
\ergebnisse{Es wurden funktionsfähige Prototypen aller Leiterkarten gefertigt. Darüber hinaus wurde eine Testsoftware zur Überprüfung der Prototypen geschrieben.}
\grafikname{Gesamtsystem}
\grafikinhalt{\includegraphics[width=\textwidth]{Allgemein/img/Gesamtsystem}}
\wettbewerbe{Jugend Innovativ\\Technik fürs Leben-Preis}
@ -101,6 +104,9 @@
\results{Working prototypes of all printed circuit boards have been developed. Moreover, a test software to prove the functionality of the prototype has been written.}
\graphname{System overview}
\graphcontent{\includegraphics[width=\textwidth]{Allgemein/img/Gesamtsystem}}
\competitions{Jugend Innovativ\\Technik fürs Leben-Preis}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Bibliography

View file

@ -1,7 +1,7 @@
\section{Basisplatine}
\label{sec:basisplatine}
\todo[inline]{Bild einfügen}
\fig{core-modul}{Basisplatine}{\gls{Basisplatine}}{0.75\textwidth}{Schuh/Pictures/basis}
\subsection{Allgemeines}
\label{sec:basisplatine-allgemeines}
@ -97,78 +97,161 @@ Zur Programmierung und zum \gls{Debugging} des neuen \gls{ARM}-\gls{Minimalsyste
Um den ST-Link V2 Mini und den Microcontroller im Falle eines Kurzschlusses zwischen der Versorgungsspannung und Masse zu schützen wurde eine Schottky-Diode (\fref{fig:basisplatine-swd}, V16), mit einem maximalen Durchflussstrom von \unit{3}{\ampere}, vorgesehen.
\fig{basisplatine-swd}{ST-Link Schaltung der Basisplatine}{ST-Link Schaltung der \gls{Basisplatine}}{0.6\textwidth}{Schuh/Pictures/Basis-SWD}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-swd-schem}]{\includegraphics[width=.6\linewidth]{Schuh/Pictures/Basis-SWD}}\qquad
\subfloat[Hardware\label{fig:basisplatine-swd-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-stlink}}\qquad
\caption[ST-Link Schaltung der Basisplatine]{ST-Link Schaltung der \gls{Basisplatine}}
\label{fig:basisplatine-swd}
\end{figure}
\subsubsection{SWD-Adapter}
Der als Buchsenleiste ausgeführte SWD-Adapter (\fref{fig:basisplatine-swd2}, X23), erfüllt vom Prinzip her die gleiche Funktion wie der bereits in \fref{sec:basisplatine-stlink} beschriebene Stecker für den ST-Link V2 Mini. Dieser ermöglicht lediglich Kompatibilität zu anderen SWD-Programmern und Debuggern, welche diesen Stecker nicht besitzen.
\fig{basisplatine-swd2}{SWD-Schaltung der Basisplatine}{\gls{SWD}-Schaltung der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-SWD2}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-swd2-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/Basis-SWD2}}\qquad
\subfloat[Hardware\label{fig:basisplatine-swd2-hard}]{\includegraphics[width=.2\linewidth]{Schuh/Pictures/basis-swd}}\qquad
\caption[SWD-Schaltung der Basisplatine]{SWD-Schaltung der \gls{Basisplatine}}
\label{fig:basisplatine-swd2}
\end{figure}
\subsubsection{JTAG}
Zur Programmierung und zum \gls{Debugging} des neuen \gls{ARM}-\gls{Minimalsystem}s wurde aus kompatibilitätsgründen zum alten System zusätzlich vollwertige JTAG-Schnittstelle vorgesehen, um weiterhin mit Hilfe des ULINK/ME Adapters arbeiten zu können. Auch diese Schnittstelle besitzt eine verpolungssichere zweireihige Buchsenleiste (\fref{fig:}, X19), welche es ermöglicht Programme mit Hilfe des JTAG-Protokolls auf den Microcontroller zu übertragen oder diese zu debuggen.
Zur Programmierung und zum \gls{Debugging} des neuen \gls{ARM}-\gls{Minimalsystem}s wurde aus kompatibilitätsgründen zum alten System zusätzlich vollwertige JTAG-Schnittstelle vorgesehen, um weiterhin mit Hilfe des ULINK/ME Adapters arbeiten zu können. Auch diese Schnittstelle besitzt eine verpolungssichere zweireihige Buchsenleiste (\fref{fig:basisplatine-jtag}, X19), welche es ermöglicht Programme mit Hilfe des JTAG-Protokolls auf den Microcontroller zu übertragen oder diese zu debuggen.
\fig{basisplatine-jtag}{JTAG-Schaltung der Basisplatine}{\gls{JTAG}-Schaltung der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-JTAG}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-jtag-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-JTAG}}\qquad
\subfloat[Hardware\label{fig:basisplatine-jtag-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-jtag}}\qquad
\caption[JTAG-Schaltung der Basisplatine]{JTAG-Schaltung der \gls{Basisplatine}}
\label{fig:basisplatine-jtag}
\end{figure}
\subsubsection{Core-Modul-Adapter}
Das Schaltplansymbol des \gls{Core-Modul}s (\fref{fig:basisplatine-core}, X20) zeigt das Pinning, welches hardwaremäßig auf den zwei getrennten Buchsenleisten auf der Leiterkarte ausgeführt wurde.
\fig{basisplatine-core}{Core-Modul-Adapter der Basisplatine}{\gls{Core-Modul}-Adapter der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-core}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-core-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-core}}\qquad
\subfloat[Hardware\label{fig:basisplatine-core-hard}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/basis-core}}\qquad
\caption[Core-Modul-Adapter der Basisplatine]{\gls{Core-Modul}-Adapter der \gls{Basisplatine}}
\label{fig:basisplatine-core}
\end{figure}
\subsubsection{Audio-Adapter}
Das bereits in einer anderen Diplomarbeit realisierte Audio-Shield kann auf der zweireihigen Buchsenleiste (\fref{fig:basisplatine-audio}, X24) aufgesteckt und anschließend betrieben werden.
\fig{basisplatine-audio}{Audio-Adapter der Basisplatine}{Audio-Adapter der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-audio}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-audio-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/Basis-audio}}\qquad
\subfloat[Hardware\label{fig:basisplatine-audio-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/basis-audio}}\qquad
\caption[Audio-Adapter der Basisplatine]{Audio-Adapter der \gls{Basisplatine}}
\label{fig:basisplatine-audio}
\end{figure}
\subsubsection{LED-Array}
Auf der \gls{Basisplatine} wurde ein LED-Array realisiert, welches aus acht LEDs besteht und über die Portleitungen (\fref{fig:basisplatine-leds}: PC1 bis PC5 und PC7 bis PC8) angesteuert werden können. Diese LEDs sind in SMD-Form ausgeführt und haben die einheitliche Farbe Grün. Mit Hilfe der Stiftleiste (\fref{fig:basisplatine-leds}, X18) und deinem Jumper können die LEDs aktiviert oder deaktiviert werden. Wenn der Jumper entfernt ist sind die LEDs deaktiviert und die belegten Port-Pins des \gls{Core-Modul}s sind wieder frei verfügbar.
\fig{basisplatine-leds}{LED-Array der Basisplatine}{LED-Array der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-leds}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-leds-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/Basis-leds}}\qquad
\subfloat[Hardware\label{fig:basisplatine-leds-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/basis-leds}}\qquad
\caption[LED-Array der Basisplatine]{LED-Array der \gls{Basisplatine}}
\label{fig:basisplatine-leds}
\end{figure}
\subsubsection{DIP-Switches}
\label{sec:basis-dip}
Auf der \gls{Basisplatine} wurde ein achtpoliger DIP-Switch realisiert, welcher intern aus acht getrennten Schalten besteht und über die Portleitungen (\fref{fig:basisplatine-dip}: PA0 bis PA3 und PA5 bis PA8) ausgelesen werden kann. Da im Hardwarelayout keine Pullup-Widerstände vorgesehen wurden, muss bei der Programmierung darauf geachtet werden, dass die internen Pullup-Widerstände des Prozessors aktiviert sind. Da jedoch Port Pins PA2 und PA3 mit der UART2-Schnittstelle verbunden sind, erzeugen diese ein Echo, wenn die Schalter S3 und S4 gleichzeitig geschlossen sind. Weiters können durch Jumpern der Stiftleiste (\fref{fig:basisplatine-dip}, X22) alle Schalter im Kippschalter aktiviert oder deaktiviert werden.
\fig{basisplatine-dip}{DIP-Switches der Basisplatine}{DIP-Switches der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-dip}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-dip-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/Basis-dip}}\qquad
\subfloat[Hardware\label{fig:basisplatine-dip-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/basis-dip}}\qquad
\caption[DIP-Switches der Basisplatine]{DIP-Switches der \gls{Basisplatine}}
\label{fig:basisplatine-dip}
\end{figure}
\subsubsection{USB-Varianten und Versorgung über USB}
Die \gls{Basisplatine} unterstützt hardwaremäßig zwei verschiedene USB-Bauformen und drei verschiedene USB-Funktionen. Diese USB-Funktionen sind USB-Device, USB-Host, USB-OTG (on the go) und werden sowohl von der USB-A Buchse (\fref{fig:basisplatine-usb}, X3), als auch von der USB-B Buchse (\fref{fig:basisplatine-usb}, X1) unterstützt. Da beide Buchsenformen keine ID-Leitung besitzen muss für USB-OTG die dafür benötigte Portleitung PA10 mit einem Pullup-Widerstand versehen werden, um den USB-OTG Modus vorzutäuschen. Weiters müssen für den USB-OTG Modus der Pin1 mit dem Pin2 und der Pin3 mit dem Pin4 auf der zweireihigen Stiftleiste (\fref{fig:basisplatine-usb}, X37) gejumpert werden. Über die Portleitung PA10 kann ausgewählt werden ob der Prozessor als USB-Host oder USB-Device arbeitet. Mit der Portleitung PA9 hingegen kann festgestellt werden ob die Versorgung über die USB Buchse funktioniert. Falls man im Host-Modus Geräte ohne Adapter anschließen möchte, wurde eine zweite USB Buchse parallel geschalten. Sollte man die USB-B Buchse auswählen wollen muss man den Pin1 mit dem Pin3 und dem Pin2 mit dem Pin4 auf der zweireihigen Stiftleiste (\fref{fig:basisplatine-usb}, X2) jumpern. Um die USB-A Buchse auswählen muss man den Pin4 mit dem Pin6 und dem Pin3 mit dem Pin5 auf der zweireihigen Stiftleiste (\fref{fig:basisplatine-usb}, X2) jumpern.
\fig{basisplatine-usb}{USB Buchsen der Basisplatine}{USB Buchsen der \gls{Basisplatine}}{\textwidth}{Schuh/Pictures/Basis-usb}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-usb-schem}]{\includegraphics[width=\linewidth]{Schuh/Pictures/Basis-usb}}\qquad
\subfloat[Hardware\label{fig:basisplatine-usb-hard}]{\includegraphics[width=\linewidth]{Schuh/Pictures/basis-usb}}\qquad
\caption[USB Buchsen der Basisplatine]{USB Buchsen der \gls{Basisplatine}}
\label{fig:basisplatine-usb}
\end{figure}
\subsubsection{Masseschleife}
Um das Messen mit einem Oszilloskop oder anderen Messgeräten zu vereinfachen wurde eine Masseschleife (\fref{fig:basis-masse}, X5) auf der \gls{Basisplatine} realisiert.
Um das Messen mit einem Oszilloskop oder anderen Messgeräten zu vereinfachen wurde eine Masseschleife (\fref{fig:basisplatine-masse}, X5) auf der \gls{Basisplatine} realisiert.
\fig{basis-masse}{Masseschleife der Basisplatine}{Masseschleife der \gls{Basisplatine}}{0.25\textwidth}{Schuh/Pictures/Basis-masse}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-masse-schem}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/Basis-masse}}\qquad
\subfloat[Hardware\label{fig:basisplatine-masse-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/basis-masse}}\qquad
\caption[Masseschleife der Basisplatine]{Masseschleife der \gls{Basisplatine}}
\label{fig:basisplatine-masse}
\end{figure}
\subsubsection{Powerswitch STMPS2141}\todo{Quelle?}
Um USB-Geräte zu betreiben, welche selbst keine eigene Spannungsversorgung besitzen (z.B. USB-Sticks) wurde ein Powerswitch (\fref{fig:basisplatine-power}, D3) verbaut. Dieser ermöglicht es die interne \unit{5}{\volt}-Versorgung auf die USB-Buchsen zu legen, damit diese Geräte mit Spannung versorgt werden können. Sollte das Gerät zu viel Strom verbrauchen beginnt die LED (\fref{fig:basisplatine-power}, V9) zu leuchten. Durch Jumpern der Stiftleiste (\fref{fig:basisplatine-power}, X4) an den Port-Pin PC9 kann die Versorgung von externen Geräten gesteuert werden.
\fig{basisplatine-power}{USB Powerswitch der Basisplatine}{USB Powerswitch der \gls{Basisplatine}}{\textwidth}{Schuh/Pictures/Basis-power}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-power-schem}]{\includegraphics[width=\linewidth]{Schuh/Pictures/Basis-power}}\qquad
\subfloat[Hardware\label{fig:basisplatine-power-hard}]{\includegraphics[width=\linewidth]{Schuh/Pictures/basis-power}}\qquad
\caption[USB Powerswitch der Basisplatine]{USB Powerswitch der \gls{Basisplatine}}
\label{fig:basisplatine-power}
\end{figure}
\subsubsection{Powerheader}
Um die auf der \gls{Basisplatine} verwendeten Spannungen direkt für Versuchsaufbauten am Steckbrett oder für externe Sensoren verwenden zu können wurden zwei Buchsenleisten (\fref{fig:basisplatine-pwrhdr}, X6 und X7) ausgeführt, welche diese Spannungen bereitstellen. Dabei ist zu beachten, dass am \unit{12}{\volt}-Ausgang nur \unit{+12}{\volt} anliegen, wenn die Basisplatine über ein externes Netzteil mit einer Ausgangsspannung von \unit{+12}{\volt} betrieben wird. Sollte eine geringere Spannung über das Netzgerät eingespeist werden liegt diese am Ausgang an, wenn hingegen kein Netzteil verwendet wird ist dieser Ausgang spannungsfrei.
\fig{basisplatine-pwrhdr}{Powerheader der Basisplatine}{Powerheader der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-pwrhdr}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-pwrhdr-schem}]{\includegraphics[width=\linewidth]{Schuh/Pictures/Basis-pwrhdr}}\qquad
\subfloat[Hardware\label{fig:basisplatine-pwrhdr-hard}]{\includegraphics[width=\linewidth]{Schuh/Pictures/basis-pwrhdr}}\qquad
\caption[Powerheader der Basisplatine]{Powerheader der \gls{Basisplatine}}
\label{fig:basisplatine-pwrhdr}
\end{figure}
\subsubsection{\unit{3,3}{\volt}-Versorgung}
Zur Überprüfung ob die \gls{Basisplatine} mit der Betriebsspannung von \unit{+3,3}{\volt} über das \gls{Core-Modul} versorgt wird, wurde die LED (\fref{fig:basisplatine-3v3}, V14) zur optischen Kontrolle eingebaut. Wenn die Basisplatine mit Spannung versorgt wird, beginnt diese zu leuchten.
Zur Überprüfung ob die \gls{Basisplatine} mit der Betriebsspannung von \unit{+3,3}{\volt} über das \gls{Core-Modul} versorgt wird, wurde die LED zur optischen Kontrolle eingebaut. Wenn die Basisplatine mit Spannung versorgt wird, beginnt diese zu leuchten (\fref{fig:basisplatine-3v3}, V14).
\fig{basisplatine-3v3}{3,3 V-Versorgung der Basisplatine}{\unit{3,3}{\volt}-Versorgung der \gls{Basisplatine}}{0.25\textwidth}{Schuh/Pictures/Basis-3v3}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-3v3-schem}]{\includegraphics[width=.2\linewidth]{Schuh/Pictures/Basis-3v3}}\qquad
\subfloat[Hardware\label{fig:basisplatine-3v3-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/basis-3v3}}\qquad
\caption[\unit{3,3}{\volt}-Versorgung der Basisplatine]{\unit{3,3}{\volt}-Versorgung der \gls{Basisplatine}}
\label{fig:basisplatine-3v3}
\end{figure}
\subsubsection{Spannungsversorgung über DC-Buchse}
Die \gls{Basisplatine} unterstützt hardwaremäßig zwei verschiedene USB-Bauformen und drei verschiedene USB-Funktionen. Diese USB-Funktionen sind USB-Device, USB-Host, USB-OTG (on the go) und werden sowohl von der USB-A Buchse (\fref{fig:basisplatine-usb}, X3), als auch von der USB-B Buchse (\fref{fig:basisplatine-usb}, X1) unterstützt. Da beide Buchsenformen keine ID-Leitung besitzen muss für USB-OTG die dafür benötigte Portleitung PA10 mit einem Pullup-Widerstand versehen werden, um den USB-OTG Modus vorzutäuschen. Weiters müssen für den USB-OTG Modus der Pin1 mit dem Pin2 und der Pin3 mit dem Pin4 auf der zweireihigen Stiftleiste (\fref{fig:basisplatine-usb}, X37) gejumpert werden. Über die Portleitung PA10 kann ausgewählt werden ob der Prozessor als USB-Host oder USB-Device arbeitet. Mit der Portleitung PA9 hingegen kann festgestellt werden ob die Versorgung über die USB Buchse funktioniert. Falls man im Host-Modus Geräte ohne Adapter anschließen möchte, wurde eine zweite USB Buchse parallel geschalten. Sollte man die USB-B Buchse auswählen wollen muss man den Pin1 mit dem Pin3 und dem Pin2 mit dem Pin4 auf der zweireihigen Stiftleiste (\fref{fig:basisplatine-usb}, X2) jumpern. Um die USB-A Buchse auswählen muss man den Pin4 mit dem Pin6 und dem Pin3 mit dem Pin5 auf der zweireihigen Stiftleiste (\fref{fig:basisplatine-usb}, X2) jumpern.
Als weiter Spannungsversorgungsmöglichkeit bietet die \gls{Basisplatine} die Möglichkeit ein \unit{9}{\volt} bis \unit{12}{\volt} DC-Netzteil am die DC-Buchse (\fref{fig:basisplatine-dc}, J1) anzuschließen um die Basisplatine mit Spannung zu versorgen. Der Brückengleichrichter (\fref{fig:basisplatine-dc}, U1) dient dabei lediglich als Verpolungsschutz und nicht als Gleichrichter für Wechselspannung. Das Anlegen von Wechselspannung an die DC-Buchse (\fref{fig:basisplatine-dc}, J1) sollte aus Sicherheitsgründen unterlassen werden. Um aus der hohen Spannung, welche von der DC-Buchse kommt, die Betriebsspannung von \unit{+5}{\volt} zu generieren wurde ein Step-Down Modul (\fref{fig:basisplatine-dc}, U3) der Firma Würth verbaut. Zur Überprüfung ob das Step-Down Modul die Betriebsspannung von \unit{+5}{\volt} generiert, wurde die LED (\fref{fig:basisplatine-dc}, V13) zur optischen Kontrolle eingebaut. Wenn das Step-Down Modul die gewünschte Spannung generiert, beginnt diese zu leuchten. Die Stiftleiste (\fref{fig:basisplatine-dc}, X43) kann im Bedarfsfall gejumpert werden, wenn ein Unterspannungsschutz der Versorgungsspannung gewünscht ist. Um die vom Step-Down Modul generierte Spannung verwenden zu können muss lediglich die Stiftleiste (\fref{fig:basisplatine-dc}, X8) mit einem Jumper versehen werden.
\fig{basisplatine-dc}{DC-Versorgung der Basisplatine}{DC-Versorgung der \gls{Basisplatine}}{\textwidth}{Schuh/Pictures/Basis-dc}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-dc-schem}]{\includegraphics[width=\linewidth]{Schuh/Pictures/Basis-dc}}\qquad
\subfloat[Hardware\label{fig:basisplatine-dc-hard}]{\includegraphics[width=\linewidth]{Schuh/Pictures/basis-dc}}\qquad
\caption[DC-Versorgung der Basisplatine]{DC-Versorgung der \gls{Basisplatine}}
\label{fig:basisplatine-dc}
\end{figure}
\subsubsection{RGB-LED Ring}
Auf der \gls{Basisplatine} wurde ein aus zwölf RGB-LEDs bestehender Ring aufgebaut, welcher in den verschiedensten Farben leuchten kann. Jede RGB-LED besitzt einen eigenen eingebauten Controller. Die Ansteuerung der LEDs wird über den Port-Pin PB0 realisiert. Um diesen verwenden zu können muss zuvor die Stiftleiste (\fref{fig:basisplatine-ledring}, X41) mit einem Jumper versehen werden. Weiters muss die Spannungsversorgung der LEDs gewährleistet sein. Dazu muss lediglich die Stiftleiste (\fref{fig:basisplatine-ledring}, X42) mit einem Jumper versehen werden.
\fig{basisplatine-ledring}{RGB-LED Ring der Basisplatine}{RGB-LED Ring der \gls{Basisplatine}}{\textwidth}{Schuh/Pictures/Basis-ledring}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-ledring-schem}]{\includegraphics[width=.9\linewidth]{Schuh/Pictures/Basis-ledring}}\qquad
\subfloat[Hardware\label{fig:basisplatine-ledring-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-ledring}}\qquad
\caption[RGB-LED Ring der Basisplatine]{RGB-LED Ring der \gls{Basisplatine}}
\label{fig:basisplatine-ledring}
\end{figure}
\todo{Auslagern nach Theorie? --> Mieke}Zur Programmierung der LEDs muss über den Port PB0 ein Datenwort übetragen werden, welches 24 bit pro LED enthält, siehe \fref{fig:basisplatine-ledring-data}. Dies ergibt insgesamt 288 bit, welche übertragen werden müssen. Wie die Übertragung genau aussieht kann aus \fref{fig:basisplatine-ledring-timing} entnommen werden.
Zur Programmierung der LEDs muss über den Port PB0 ein Datenwort übetragen werden, welches 24 bit pro LED enthält, siehe \fref{fig:basisplatine-ledring-data}. Dies ergibt insgesamt 288 bit, welche übertragen werden müssen. Wie die Übertragung genau aussieht kann aus \fref{fig:basisplatine-ledring-timing} entnommen werden.
\fig{basisplatine-ledring-data}{RGB-LED Ring Datenstruktur}{RGB-LED Ring Datenstruktur}{\textwidth}{Schuh/Pictures/Basis-ledring-data}
\fig{basisplatine-ledring-timing}{RGB-LED Ring Timing Diagram}{RGB-LED Ring Timing Diagram}{\textwidth}{Schuh/Pictures/Basis-ledring-timing}
@ -178,44 +261,99 @@ Da der verbaute Prozessor zu wenig Portleitungen besitzt um alle Sensoren und Mo
Eine weitere dieser Stiftleisten ist der Header (\fref{fig:basisplatine-ssel2}, X11), welche es ermöglicht zwischen dem Beschleunigungssensor und dem EEPROM auszuwählen.
\fig{basisplatine-ssel}{Sensor-Selektion der Basisplatine}{Sensor-Selektion der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-ssel}
\fig{basisplatine-ssel2}{Sensor-Selektion der Basisplatine}{Sensor-Selektion der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-ssel2}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-ssel-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-ssel}}\qquad
\subfloat[Hardware\label{fig:basisplatine-ssel-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-ssel}}\qquad
\caption[Sensor-Selektion der Basisplatine]{Sensor-Selektion der \gls{Basisplatine}}
\label{fig:basisplatine-ssel}
\end{figure}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-ssel2-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-ssel2}}\qquad
\subfloat[Hardware\label{fig:basisplatine-ssel2-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-ssel2}}\qquad
\caption[Sensor-Selektion der Basisplatine]{Sensor-Selektion der \gls{Basisplatine}}
\label{fig:basisplatine-ssel2}
\end{figure}
\subsubsection{Piezo-Summer}
Auf der \gls{Basisplatine} wurde ein Piezo-Summer (\fref{fig:basisplatine-piezo}, B4) verbaut, welcher über den Port-Pin PB0 angesteuert werden kann. Ja nach anliegender Taktfrequenz am Eingang des Summers wird der erzeugte Ton höher oder tiefer. Um den Piezo-Summer verwenden zu können muss lediglich der Pin11 mit dem Pin12, der zweireihige Stiftleiste (\fref{fig:basisplatine-ssel}, X9), gejumpert werden.
\fig{basisplatine-piezo}{Piezo-Summer der Basisplatine}{Piezo-Summer der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-piezo}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-piezo-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-piezo}}\qquad
\subfloat[Hardware\label{fig:basisplatine-piezo-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-piezo}}\qquad
\caption[Piezo-Summer der Basisplatine]{Piezo-Summer der \gls{Basisplatine}}
\label{fig:basisplatine-piezo}
\end{figure}
\subsubsection{Potentiometer}
Es wurden zwei Potentiometer R9 und R4 hardwaremäßig auf der \gls{Basisplatine} vorgesehen. Diese sind direkt mit einem \gls{ADC}-Eingang des Prozessors verbunden. Der Unterschied zwischen den Potentiometern R9 und R4 besteht darin, dass das Potentiometer R4 über einen Jumper auf der Stiftleiste (\fref{fig:basisplatine-poti2}, X40) aktiviert werden muss und dieses an einem anderen Port-Pin angeschlossen ist. Dieser Aufbau wurde deswegen gewählt da damit, damit an den \gls{ADC}-Eingang auch optional ein anderes Signal angelegt werden kann.
Es wurden zwei Potentiometer R9 und R4 hardwaremäßig auf der \gls{Basisplatine} vorgesehen. Diese sind direkt mit einem \gls{ADC}-Eingang des Prozessors verbunden. Der Unterschied zwischen den Potentiometern R9 und R4 besteht darin, dass das Potentiometer R4 über einen Jumper auf der Stiftleiste (\fref{fig:basisplatine-poti2-schem}, X40) aktiviert werden muss und dieses an einem anderen Port-Pin angeschlossen ist. Dieser Aufbau wurde deswegen gewählt da damit, damit an den \gls{ADC}-Eingang auch optional ein anderes Signal angelegt werden kann.
\fig{basisplatine-poti1}{Potentiometer 1 der Basisplatine}{Potentiometer 1 der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-poti1}
\fig{basisplatine-poti2}{Potentiometer 2 der Basisplatine}{Potentiometer 2 der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-poti2}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-poti1-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/Basis-poti1}}\qquad
\subfloat[Schematic\label{fig:basisplatine-poti2-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/Basis-poti2}}\qquad
\subfloat[Hardware\label{fig:basisplatine-poti-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/basis-poti}}\qquad
\caption[Potentiometer der Basisplatine]{Potentiometer der \gls{Basisplatine}}
\label{fig:basisplatine-poti}
\end{figure}
\subsubsection{EEPROM}
Um Daten permanent speichern zu können wurde das EEPROM (\fref{fig:basisplatine-eeprom}, D1) vorgesehen. Standardmäßig wird das EEPROM 24AA256 verwendet, welches es ermöglicht 256 kbit abzuspeichern. Dieses EEPROM besitzt eine Write-Protection WP welche es ermöglicht das EEPROM schreibgeschützt zu schalten. Die Write-Protection kann über die Portleitung PB5 gesteuert werden. Damit das Signal am EEPROM ankommt, muss jedoch der Pin3 mit dem Pin4 der zweireihigen Stiftleiste (\fref{fig:basisplatine-ssel2}, X11) gejumpert werden. Die Kommunikation mit dem EEPROM erfolgt mit dem \IIC{}-Bus.
\fig{basisplatine-eeprom}{EEPROM der Basisplatine}{EEPROM der \gls{Basisplatine}}{0.75\textwidth}{Schuh/Pictures/Basis-eeprom}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-eeprom-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-eeprom}}\qquad
\subfloat[Hardware\label{fig:basisplatine-eeprom-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-eeprom}}\qquad
\caption[EEPROM der Basisplatine]{EEPROM der \gls{Basisplatine}}
\label{fig:basisplatine-eeprom}
\end{figure}
\subsubsection{Beschleunigungssensor}
Auf der \gls{Basisplatine} wurde auch ein Beschleunigungssensormodul mit dem Beschleunigungssensor BMA020 vorgesehen. Die Kommunikation mit dem Beschleunigungssensor erfolgt mit Hilfe des \IIC{}-Buses (Adresse \texttt{0x70}). Durch diesen Sensor kann die Neigung, sowie die Kraft welche auf die Platine wirkt in der X, Y und Z-Richtung erfasst werden. Der Beschleunigungssensor besitzt einen Interrupt-Pin, welcher es ermöglicht ein Interrupt auszulösen. Der Interrupt kann über die Portleitung PB5 empfangen werden. Damit das Interrupt-Signal an der Portleitung PB5 ankommt, muss jedoch der Pin1 mit dem Pin2 der zweireihigen Stiftleiste (\fref{fig:basisplatine-ssel2}, X11) gejumpert werden.
\fig{basisplatine-bma}{Beschleunigungssensor der Basisplatine}{Beschleunigungssensor der \gls{Basisplatine}}{0.75\textwidth}{Schuh/Pictures/Basis-bma}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-bma-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-bma}}\qquad
\subfloat[Hardware\label{fig:basisplatine-bma-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-bma}}\qquad
\caption[Beschleunigungssensor der Basisplatine]{Beschleunigungssensor der \gls{Basisplatine}}
\label{fig:basisplatine-bma}
\end{figure}
\subsubsection{IR-Receiver}
Um die Platine auch mit einer Fernbedienung oder einem Mobiltelefon steuern zu können würde ein IR-Receiver verbaut. Dieser Sensor wurde hardwaremäßig unter dem NEXTION-Display angebracht. Der IR-Receiver arbeitet mit einer Wellenlänge von 850nm bis 1000nm und einer Trägerfrequenz von 38kHz. Das vom IR-Receiver empfangene Signal wird direkt im Receiver demoduliert und anschließend zu der zweireihigen Stiftleiste (\fref{fig:basisplatine-ssel}, X9) weitergeleitet. Um den IR-Receiver verwenden zu können muss lediglich der Pin7 mit dem Pin8, der Stiftleiste (\fref{fig:basisplatine-ssel}, X9), gejumpert werden.
\fig{basisplatine-ir}{IR-Receiver der Basisplatine}{IR-Receiver der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-ir}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-ir-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-ir}}\qquad
\subfloat[Hardware\label{fig:basisplatine-ir-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-ir}}\qquad
\caption[IR-Receiver der Basisplatine]{IR-Receiver der \gls{Basisplatine}}
\label{fig:basisplatine-ir}
\end{figure}
\subsubsection{Temperatursensor}
Um die Umgebungstemperatur feststellen zu können wurde auf der Basisplatine der Temperaturfühler DS18B20 verbaut, welcher mit Hilfe des 1-Wire Protokolls angesprochen werden kann. Die maximale Mesfehler dieses Temperatursensors beträgt ±0,5°C laut Datenblattangabe\todo{Quelle?}. Um den Temperaturfühler verwenden zu können muss lediglich der Pin9 mit dem Pin10, der Stiftleiste (\fref{fig:basisplatine-ssel}, X9), gejumpert werden.
\fig{basisplatine-temp}{Temperatursensor der Basisplatine}{Temperatursensor der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-temp}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-temp-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-temp}}\qquad
\subfloat[Hardware\label{fig:basisplatine-temp-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-temp}}\qquad
\caption[Temperatursensor der Basisplatine]{Temperatursensor der \gls{Basisplatine}}
\label{fig:basisplatine-temp}
\end{figure}
\subsubsection{Lichtwandler LFU}
Der auf der \gls{Basisplatine} realisierte LFU (Licht-Frequenz-Wandler), wandeltet wie der Name bereits sagt Licht in eine bestimmte Frequenz um. Je höher die Bestrahlungsstärke des Lichts, desto höher wird die über den Output des LFUs ausgegebene Frequenz. Den linearen Zusammenhang zwischen der Bestrahlungsstärke und der ausgegebenen Frequenz kann aus \fref{fig:basisplatine-lfu-freq} entnommen werden.\todo{Quelle?} Um den LFU verwenden zu können muss lediglich der Pin5 mit dem Pin6, der Stiftleiste (\fref{fig:basisplatine-ssel}, X9), gejumpert werden.
\fig{basisplatine-lfu}{LFU der Basisplatine}{LFU der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-lfu}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-lfu-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-lfu}}\qquad
\subfloat[Hardware\label{fig:basisplatine-lfu-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-lfu}}\qquad
\caption[LFU der Basisplatine]{LFU der \gls{Basisplatine}}
\label{fig:basisplatine-lfu}
\end{figure}
\fig{basisplatine-lfu-freq}{Frequenzgang des LFUs}{Frequenzgang des LFUs}{0.5\textwidth}{Schuh/Pictures/Basis-lfu-freq}
\subsubsection{RGB-LED}
@ -223,7 +361,13 @@ Der auf der \gls{Basisplatine} realisierte LFU (Licht-Frequenz-Wandler), wandelt
Auf der Hardware der \gls{Basisplatine} wurde eine RGB-LED verbaut, welche mit Hilfe des LED-Divers (\fref{fig:basisplatine-rgbled}, D4), welcher mit dem \IIC{}-Bus angesteuert werden kann. Dieser LED-Driver hat den Vorteil, dass er eine interne Stromüberwachung besitzt. Dadurch benötigen die einzelnen Anoden der RGB-LED keine Vorwiderstände, da sich der Strom automatisch entsprechend der gewünschten Farbe reguliert.
\fig{basisplatine-rgbled}{RGB-LED der Basisplatine}{RGB-LED der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-rgbled}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-rgbled-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-rgbled}}\qquad
\subfloat[Hardware\label{fig:basisplatine-rgbled-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-rgbled}}\qquad
\caption[RGB-LED der Basisplatine]{RGB-LED der \gls{Basisplatine}}
\label{fig:basisplatine-rgbled}
\end{figure}
\fig{basisplatine-rgbled-befehl}{Befehlsaufbau der RGB-LED}{Befehlsaufbau der RGB-LED}{\textwidth}{Schuh/Pictures/Basis-rgbled-befehl}
\fig{basisplatine-rgbled-register}{Register der RGB-LED}{Register der RGB-LED}{\textwidth}{Schuh/Pictures/Basis-rgbled-register}
\fig{basisplatine-rgbled-seq}{Sequenzen der RGB-LED}{Sequenzen der RGB-LED}{\textwidth}{Schuh/Pictures/Basis-rgbled-seq}
@ -231,27 +375,57 @@ Auf der Hardware der \gls{Basisplatine} wurde eine RGB-LED verbaut, welche mit H
\subsubsection{Arduino-Shield-Header}
Um Hardware des Arduino-Mikrocontrollersystems nutzten zu können, ohne selbst großen Aufwand in die Entwicklung entsprechender Module investieren zu müssen, wurde ein Arduino-Shield-Header auf der \gls{Basisplatine} vorgesehen. Dieser ermöglicht es durch die Portkompatibilität mit einem Arduino, dessen Shields zu verwenden oder selbst Shields entwickeln zu können. Möchte man nun ein Arduino-Shield verwenden muss dieses lediglich in die vorgesehene Buchsenleiste (\fref{fig:basisplatine-arduino}, X33) gesteckt werden. Da jedes Arduino-Shield die Möglichkeit besitzt eine Referenzspannung für diverse ADCs zu vergeben wurde das Potentiometer R31 vorgesehen, um diesen Spannungspegel variabel zu gestallten. Darüber hinaus gibt es noch die Möglichkeit bei speziellen Shields zu definieren mit welcher Betriebsspannung die darüberliegenden versorgt werden sollen. Dazu wurde die Stiftleiste X27 verbaut, um festzulegen ob die darüberliegenden Shields mit \unit{+5}{\volt} oder \unit{+3,3}{\volt} versorgt werden. Sollte kein Jumper gesetzt werden wird automatisch auf die \unit{+5}{\volt} Spannungsversorgung zurückgegriffen.
\fig{basisplatine-arduino}{Arduino-Shield-Header der Basisplatine}{Arduino-Shield-Header der \gls{Basisplatine}}{\textwidth}{Schuh/Pictures/Basis-arduino}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-arduino-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-arduino}}\qquad
\subfloat[Hardware\label{fig:basisplatine-arduino-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-arduino}}\qquad
\caption[Arduino-Shield-Header der Basisplatine]{Arduino-Shield-Header der \gls{Basisplatine}}
\label{fig:basisplatine-arduino}
\end{figure}
\subsubsection{WLAN-Modul}
Um Daten ohne großen Aufwand direkt in das Heimnetzwerk einspeisen zu können, wurde auf der auf der \gls{Basisplatine} ein Steckplatz (\fref{fig:basisplatine-wlan}, X35) für ein ESP8266 W-LAN Modul vorgesehen. Dieses Funkmodul benutzt zu Kommunikation mit dem Prozessor des Core-Moduls die UART2 Schnittstelle und sendet die Daten mit einer Sendefrequenz von \unit{2,4}{\giga\hertz} im ISM-Band. Wenn man die Firmware des ESP8266 verändern möchte muss man lediglich die Portleitung GPIO0 des ESP8266, durch jumpern der Pin2 und Pin3 der Stiftleiste (\fref{fig:basisplatine-wlan}, X39), gegen Masse schalten.
\fig{basisplatine-wlan}{WLAN-Modul der Basisplatine}{WLAN-Modul der \gls{Basisplatine}}{0.75\textwidth}{Schuh/Pictures/Basis-wlan}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-wlan-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-wlan}}\qquad
\subfloat[Hardware\label{fig:basisplatine-wlan-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-wlan}}\qquad
\caption[WLAN-Modul der Basisplatine]{WLAN-Modul der \gls{Basisplatine}}
\label{fig:basisplatine-wlan}
\end{figure}
\subsubsection{XBee-Pro-Modul}
Um Daten ohne großen Aufwand per Funk übertragen können, wurde auf der auf der \gls{Basisplatine} ein Steckplatz (\fref{fig:basisplatine-xbee}, A2) für ein XBee-Pro Modul vorgesehen. Dieses Funkmodul benutzt zu Kommunikation mit dem Prozessor des \gls{Core-Modul}s die UART2 Schnittstelle und sendet die Daten mit einer Sendefrequenz von \unit{2,4}{\giga\hertz} im ISM-Band. Darüber hinaus weist das Funkmodul eine maximale Datenübertragungsrate von 250 kb/s auf und hat eine maximale Reichweite von \unit{1600}{\metre}.
\fig{basisplatine-xbee}{XBee-Pro-Modul der Basisplatine}{XBee-Pro-Modul der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-xbee}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-xbee-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-xbee}}\qquad
\subfloat[Hardware\label{fig:basisplatine-xbee-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-xbee}}\qquad
\caption[XBee-Pro-Modul der Basisplatine]{XBee-Pro-Modul der \gls{Basisplatine}}
\label{fig:basisplatine-xbee}
\end{figure}
\subsubsection{HC-06-Modul}
Um Daten ohne großen Aufwand per Bluetooth übertragen können, wurde auf der auf der \gls{Basisplatine} ein Steckplatz (\fref{fig:basisplatine-hc06}, X28) für ein HC-06 Bluetooth-Modul vorgesehen. Dieses Bluetooth-Modul benutzt zur Kommunikation mit dem Prozessor des \gls{Core-Modul}s die UART1 Schnittstelle und sendet die Daten mit einer Sendefrequenz von \unit{2,4}{\giga\hertz} im ISM-Band. Darüber hinaus weist das Bluetooth-Modul eine maximale Datenübertragungsrate von 1382400 baud auf.
\fig{basisplatine-hc06}{HC-06-Modul der Basisplatine}{HC-06-Modul der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-hc06}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-hc06-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-hc06}}\qquad
\subfloat[Hardware\label{fig:basisplatine-hc06-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-hc06}}\qquad
\caption[HC-06-Modul der Basisplatine]{HC-06-Modul der \gls{Basisplatine}}
\label{fig:basisplatine-hc06}
\end{figure}
\subsubsection{HC-12-Modul}
Um Daten ohne großen Aufwand per Bluetooth übertragen können, wurde auf der auf der \gls{Basisplatine} ein Steckplatz (\fref{fig:basisplatine-hc12}, X31) für ein HC-12 Funkmodul vorgesehen. Dieses Funkmodul benutzt zu Kommunikation mit dem Prozessor des \gls{Core-Modul}s die UART1 Schnittstelle und sendet die Daten mit einer Sendefrequenz von \unit{433,4}{\mega\hertz} bis \unit{473,0}{\mega\hertz} im ISM-Band. Darüber hinaus weist das Funkmodul eine maximale Datenübertragungsrate von 115200 baud auf und hat eine maximale Reichweite von \unit{1800}{\metre}. Das HC-12 Funkmodul kann mittels AT-Befehlen konfiguriert werden. Dabei kann die maximale Ausgangsleistung, die Sendefrequenz und die maximale Datenübertragungsrate verändert werden.
\fig{basisplatine-hc12}{HC-12-Modul der Basisplatine}{HC-12-Modul der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-hc12}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-hc12-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-hc12}}\qquad
\subfloat[Hardware\label{fig:basisplatine-hc12-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-hc12}}\qquad
\caption[HC-12-Modul der Basisplatine]{HC-12-Modul der \gls{Basisplatine}}
\label{fig:basisplatine-hc12}
\end{figure}
Um das Modul in den Programming-Mode zu setzen, müssen folgende Schritte ausgeführt werden:
\begin{itemize}
@ -290,14 +464,26 @@ Da die \gls{Basisplatine} auf die Verwendung von Funkmodulen ausgelegt ist, welc
\fig{basisplatine-pi}{PI-Filter der Basisplatine}{PI-Filter der \gls{Basisplatine}}{\textwidth}{Schuh/Pictures/Basis-pi}
\subsubsection{NEXTION-Display}
Um den Benutzer eine grafische Darstellungsmöglichkeit von Messwerten, Bildern oder ähnlichen zu geben wurde auf der Basisplatine der Header (\fref{fig:basisplatine-nextion}, X25) vorgesehen. Mit Hilfe dieses Headers ist es möglich ein NEXTION-Display auf der Basisplatine zu befestigen und über die UART3-Schnittstelle anzusteuern. Um das NEXTION-Display verwenden zu können muss lediglich die beiden Pins der Stiftleiste (\fref{fig:basisplatine-nextion}, X38) mit einem Jumper verbunden werden. Zur Programmierung des \gls{GUI}, des NEXTION-Displays wird der selbst entwickelte \gls{USB-to-UART}-Adapter benutzt, welcher in \fref{sec:usbtouart}\todo{sec eventuell anpassen} näher erklärt wird.
Um den Benutzer eine grafische Darstellungsmöglichkeit von Messwerten, Bildern oder ähnlichen zu geben wurde auf der Basisplatine der Header (\fref{fig:basisplatine-nextion}, X25) vorgesehen. Mit Hilfe dieses Headers ist es möglich ein NEXTION-Display auf der Basisplatine zu befestigen und über die UART3-Schnittstelle anzusteuern. Um das NEXTION-Display verwenden zu können muss lediglich die beiden Pins der Stiftleiste (\fref{fig:basisplatine-nextion}, X38) mit einem Jumper verbunden werden. Zur Programmierung des \gls{GUI}, des NEXTION-Displays wird der selbst entwickelte \gls{USB-to-UART}-Adapter benutzt, welcher in \fref{sec:usbtouart} näher erklärt wird.
\fig{basisplatine-nextion}{NEXTION-Display der Basisplatine}{NEXTION-Display der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-nextion}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-nextion-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-nextion}}\qquad
\subfloat[Hardware\label{fig:basisplatine-nextion-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-nextion}}\qquad
\caption[NEXTION-Display der Basisplatine]{NEXTION-Display der \gls{Basisplatine}}
\label{fig:basisplatine-nextion}
\end{figure}
\subsubsection{SPI-Schnittstelle}
Um zusätzliche Hardware mit der \gls{Basisplatine} ansteuern zu können wurde die SPI-Schnittstelle (\fref{fig:basisplatine-spi}, X30) vorgesehen, welche mit der SPI2-Schnitstelle des Prozessors verbunden ist. Da die Chip-Select Leitung (CS) von keiner Hardware auf der Basisplatine benötigt wird, kann diese verwendet werden. Sollten jedoch mehrere Geräte an den SPI-Bus angeschlossen werden, müssen weitere Portleitungen als Chip-Select Leitungen verwendet werden.
\fig{basisplatine-spi}{SPI-Schnittstelle der Basisplatine}{SPI-Schnittstelle der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-spi}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-spi-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-spi}}\qquad
\subfloat[Hardware\label{fig:basisplatine-spi-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-spi}}\qquad
\caption[SPI-Schnittstelle der Basisplatine]{SPI-Schnittstelle der \gls{Basisplatine}}
\label{fig:basisplatine-spi}
\end{figure}
\subsubsection{UART-Schnittstelle}
Um zusätzliche Hardware mit der \gls{Basisplatine} ansteuern zu können wurden die Buchsenleiste (\fref{fig:basisplatine-uart}: X32, X34 und X36) realisiert, welche den UART1, UART2, und UART3 des Prozessors verbunden sind. Um eine UART-Schnittstelle verwenden zu können ist es wichtig die RX- und TX-Leitung im Vergleich zum verwendeten Modul zu vertauschen (Null-Modem-Kabel). Alle verwendeten UART-Schnittstellen wurden aus der Sicht des Prozessors bezeichnet.
@ -306,28 +492,58 @@ Um zusätzliche Hardware mit der \gls{Basisplatine} ansteuern zu können wurden
Anmerkung: Bei der Verwendung der UART2-Schittstelle ist Vorsicht geboten, da wie bereits in \fref{sec:basis-dip} beschrieben, ein Echo auf der Schnittstelle ausgelöst wir, wenn die Kippschaltschalter S3 und S4 gleichzeitig geschlossen sind.
\end{warning}
\fig{basisplatine-uart}{UART-Schnittstelle der Basisplatine}{UART-Schnittstelle der \gls{Basisplatine}}{0.25\textwidth}{Schuh/Pictures/Basis-uart}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-uart-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-uart}}\qquad
\subfloat[Hardware\label{fig:basisplatine-uart-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-uart}}\qquad
\caption[UART-Schnittstelle der Basisplatine]{UART-Schnittstelle der \gls{Basisplatine}}
\label{fig:basisplatine-uart}
\end{figure}
\subsubsection{\IIC{}-Schnittstelle}
Um über die \gls{Basisplatine} weitere \IIC{} Geräten anschließen zu können wurde die Buchsenleiste (\fref{fig:basisplatine-iic}, X26) vorgesehen. Die Anschlüsse sind direkt mit der \IIC{}1 Schnittstelle des Mikrocontrollers verbunden. Die \IIC{}-Schnittstelle verfügt über zwei PullUp-Widerstände, da der verwendete Mikrocontroller PullUp-Widerstände nur im Input-Modus zur Verfügung stellt.
\fig{basisplatine-iic}{\IIC{}-Schnittstelle der Basisplatine}{\IIC{}-Schnittstelle der \gls{Basisplatine}}{0.5\textwidth}{Schuh/Pictures/Basis-iic}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-iic-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-iic}}\qquad
\subfloat[Hardware\label{fig:basisplatine-iic-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-iic}}\qquad
\caption[\IIC{}-Schnittstelle der Basisplatine]{\IIC{}-Schnittstelle der \gls{Basisplatine}}
\label{fig:basisplatine-iic}
\end{figure}
\subsubsection{Inkrementalgeber}
Um einfache Regelaufgaben oder Auswahlaufgaben realisieren zu können wurde auf der \gls{Basisplatine} ein Inkrementalgeber vorgesehen. Dieser verfügt über einen Taster, welcher über die Portleitung PC11 abgefragt werden kann. Darüber hinaus kann mit Hilfe der Portleitungen PB8 und PB14 festgestellt werden in welche Richtung und um wie viele Schritte der Inkrementalgeber gedreht wurde. Eine komplette Umdrehung des Inkrementalgebers setzt sich aus 24 Einzelschritten zusammen.
\fig{basisplatine-ink}{Inkrementalgeber der Basisplatine}{Inkrementalgeber der \gls{Basisplatine}}{0.75\textwidth}{Schuh/Pictures/Basis-ink}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-ink-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-ink}}\qquad
\subfloat[Hardware\label{fig:basisplatine-ink-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-ink}}\qquad
\caption[Inkrementalgeber der Basisplatine]{Inkrementalgeber der \gls{Basisplatine}}
\label{fig:basisplatine-ink}
\end{figure}
\fig{basisplatine-ink-timing}{Inkrementalgeber Timing-Diagramm}{Inkrementalgeber Timing-Diagramm}{\textwidth}{Schuh/Pictures/Basis-ink-timing}
\subsubsection{Serielle Schnittstelle}
Um mit Messgeräten oder PCs zu kommunizieren unterstützt die \gls{Basisplatine} eine Serielle-Schnittstelle. Für diese Schnittstelle wird der UART1 des Prozessors verwendet. Die Pegelumwandlung, von $\pm$\unit{12}{\volt} auf \unit{3,3}{\volt}, welche für die Kommunikation benötigt werden erfolgt mit Hilfe eines MAX232. Die Portleitung PC13 (Tamper-RTC) kann als Handshakeleitung verwendet werden. Zur Verwendung der Seriellen-Schnittstelle, ohne Handshake-Leitung, muss lediglich der Pin1 mit dem Pin2 und der Pin3 mit dem Pin4, der Stiftleiste (\fref{fig:basisplatine-rs232}, X17) miteinander mit Hilfe eines Jumpers verbunden werden. Sollte man die Handshake-Leitung verwenden möchten, muss lediglich der Pin5 mit dem Pin6, der Stiftleiste (\fref{fig:basisplatine-rs232}, X17) miteinander verbunden werden.
\fig{basisplatine-rs232}{Serielle Schnittstelle der Basisplatine}{Serielle Schnittstelle der \gls{Basisplatine}}{\textwidth}{Schuh/Pictures/Basis-rs232}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-rs232-schem}]{\includegraphics[width=\linewidth]{Schuh/Pictures/Basis-rs232}}\qquad
\subfloat[Hardware\label{fig:basisplatine-rs232-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/basis-rs232}}\qquad
\caption[Serielle-Schnittstelle der Basisplatine]{Serielle-Schnittstelle der \gls{Basisplatine}}
\label{fig:basisplatine-rs232}
\end{figure}
\subsubsection{NE555}
Der auf der \gls{Basisplatine} verbaute NE555 kann als externer Taktgenerator verwendet werden. Die Periodendauer von diesen, kann mit Hilfe des Verhältnisses der beiden Potentiometer (\fref{fig:basisplatine-ne555}, R13 und R14) verändert werden. Für die Realisierung von großen Zeitkonstanten, kann man durch verbinden der beiden Pins auf der Stiftleiste (\fref{fig:basisplatine-ne555}, X15), mit einem Jumper, einen größeren Kondensator (\fref{fig:basisplatine-ne555}, C13) parallel zum kleineren Kondensator (\fref{fig:basisplatine-ne555}, C12) schalten. Möchte man einen kleineren Widerstand erzielen, kann man das durch einen Jumper auf der Stiftleiste (\fref{fig:basisplatine-ne555}, X14) erzielen. Um den NE555 verwenden zu können muss lediglich der Pin11 mit dem Pin12, der Stiftleiste (\fref{fig:basisplatine-ssel}, X9), mit einem Jumper verbunden werden.
\fig{basisplatine-ne555}{NE555 der Basisplatine}{NE555 der \gls{Basisplatine}}{0.75\textwidth}{Schuh/Pictures/Basis-ne555}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:basisplatine-ne555-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/Basis-ne555}}\qquad
\subfloat[Hardware\label{fig:basisplatine-ne555-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/basis-ne555}}\qquad
\caption[NE555 der Basisplatine]{NE555 der \gls{Basisplatine}}
\label{fig:basisplatine-ne555}
\end{figure}
Die Gesamtperiodendauer des NE555 setzt sich aus Summe der Teilperiodendauern t1 und t2 zusammen, kann jedoch auch direkt berechnet werden. Die Formeln zu Berechnung der Periodendauer lauten wie \fref{eq:ne555} zeigt, \fref{fig:basisplatine-ne555-timing} stellt die Beziehung der Werte zueinander grafisch dar.

View file

@ -1,7 +1,7 @@
\section{Core-Modul}
\label{sec:coremodul}
\todo[inline]{Bild einfügen}
\fig{core-modul}{Core-Modul}{\gls{Core-Modul}}{\textwidth}{Schuh/Pictures/coremodul}
\subsection{Allgemeines}
\label{sec:coremodul-allgemeines}
@ -89,18 +89,38 @@ Zur Programmierung und zum \gls{Debugging} des neuen \gls{ARM}-\gls{Minimalsyste
Um den ST-Link V2 Mini und den Microcontroller im Falle eines Kurzschlusses zwischen der Versorgungsspannung und Masse zu schützen wurde eine Schottky-Diode (\fref{fig:coremodul-swd}, V1), mit einem maximalen Durchflussstrom von \unit{1}{\ampere}, vorgesehen. Um die Verpolungssicherheit des ST-Link V2 Mini zu gewährleisten, wurde eine zweireihige Buchsenleiste mit Nase (\fref{fig:coremodul-swd}, X1; \fref{fig:coremodul-stlinkbuchse}) verbaut, welche eine Verpolung des ST-Links unmöglich macht.
\fig{coremodul-stlink}{ST-Link V2 Mini}{ST-Link V2 Mini}{0.5\textwidth}{Schuh/Pictures/STLink}
\fig{coremodul-swd}{ST-Link Schaltung des Core-Moduls}{ST-Link Schaltung des \gls{Core-Modul}s}{0.6\textwidth}{Schuh/Pictures/SchaltungSWD}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:coremodul-swd-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/SchaltungSWD}}\qquad
\subfloat[Hardware\label{fig:coremodul-swd-hard}]{\includegraphics[width=.4\linewidth,angle=270]{Schuh/Pictures/core-stlink}}\qquad
\caption[ST-Link Schaltung des Core-Moduls]{ST-Link Schaltung des \gls{Core-Modul}s}
\label{fig:coremodul-swd}
\end{figure}
\fig{coremodul-stlinkbuchse}{Buchse mit Nase}{Buchse mit Nase}{0.5\textwidth}{Schuh/Pictures/STLinkBuchse}
\subsubsection{SWD-Adapter}
Der als Buchsenleiste ausgeführte SWD-Adapter (\fref{fig:coremodul-swd2}, X4), erfüllt vom Prinzip her die gleiche Funktion wie der bereits in \fref{sec:coremodul-stlink} beschriebene Stecker für den ST-Link V2 Mini. Dieser ermöglicht lediglich Kompatibilität zu anderen SWD-Programmern und Debuggern, welche diesen Stecker nicht besitzen.
\fig{coremodul-swd2}{SWD-Schaltung des Core-Moduls}{\gls{SWD}-Schaltung des \gls{Core-Modul}s}{0.5\textwidth}{Schuh/Pictures/SchaltungSWD2}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:coremodul-swd2-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/SchaltungSWD2}}\qquad
\subfloat[Hardware\label{fig:coremodul-swd2-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/core-swd}}\qquad
\caption[SWD-Schaltung des Core-Moduls]{SWD-Schaltung des \gls{Core-Modul}s}
\label{fig:coremodul-swd2}
\end{figure}
\subsubsection{USART 1}
Die Buchsenleiste (\fref{fig:coremodul-uart}, X3) dient hauptsächlich zur seriellen Kommunikation. Die Pinanordnung wurde so gewählt, dass die Kommunikation entweder kabelgebunden, über den \gls{USB-to-UART} Adapter, oder alternativ über ein HC-06 Bluetooth Modul erfolgen kann.
\fig{coremodul-uart}{USART-Schaltung des Core-Moduls}{USART-Schaltung des \gls{Core-Modul}s}{0.5\textwidth}{Schuh/Pictures/SchaltungUART}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:coremodul-uart-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/SchaltungUART}}\qquad
\subfloat[Hardware\label{fig:coremodul-uart-hard}]{\includegraphics[angle=90,width=.4\linewidth]{Schuh/Pictures/core-uart}}\qquad
\caption[UART-Schaltung des Core-Moduls]{UART-Schaltung des \gls{Core-Modul}s}
\label{fig:coremodul-uart}
\end{figure}
\subsubsection{Bootkonfiguration}
Mit Hilfe des zweireihigen Bootjumpers (\fref{fig:coremodul-boot}, X5) kann der Benutzter entscheiden von welchem Speichermedium der Cortex booten soll.
@ -123,7 +143,13 @@ Die Standardkonfiguration sieht vor, dass man vom Flash-Speicher bootet. Daher m
\subsubsection{Reset}
Der Kurzhubtaster (\fref{fig:coremodul-reset}, S2) dient zum Reset des \gls{Core-Modul}s. Mit Hilfe dieses ist ein erneuter Programmstart möglich, da er den Pin des low-aktiven Reset gegen Masse zieht. Gegebenenfalls angeschlossene Arduino-Shields werden mit diesem Taster ebenfalls zurückgesetzt.
\fig{coremodul-reset}{Reset-Schaltung des Core-Moduls}{Reset-Schaltung des \gls{Core-Modul}s}{0.5\textwidth}{Schuh/Pictures/schaltung-reset}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:coremodul-reset-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/schaltung-reset}}\qquad
\subfloat[Hardware\label{fig:coremodul-reset-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/core-reset}}\qquad
\caption[Reset-Schaltung des Core-Moduls]{Reset-Schaltung des \gls{Core-Modul}s}
\label{fig:coremodul-reset}
\end{figure}
\subsubsection{\unit{5}{\volt} Spannungsversorgung}
Die \unit{+5}{\volt} Spannungsversorgung für das \gls{Core-Modul} kann auf zwei verschiedenen Wegen bezogen werden. Entweder man verwendet den ST-Link V2 Mini als \unit{5}{\volt} Spannungsversorgung (\fref{fig:coremodul-swd}, X1), wie bereits in \fref{sec:coremodul-stlink} beschrieben, oder man speist die \unit{+5}{\volt} Versorgung über den \unit{5}{\volt}-Pin am DIL-Adapter (\fref{fig:coremodul-spannung}, X2) ein.
@ -138,12 +164,25 @@ An VB kann eine \unit{3,3}{\volt}-Batterie angeschlossen werden, damit die \gls{
\subsubsection{\unit{3,3}{\volt} Fixspannungsregler}
Zur Generierung der für den Prozessor erforderlichen Betriebsspannung wurde ein \unit{3,3}{\volt}-Linearregler (\fref{fig:coremodul-fix}, U2) verwendet, welcher die Eingangsspannung von \unit{+5}{\volt} auf \unit{+3,3}{\volt} herabsetzt. Bei Verwendung eines Linearreglers ist zu beachten, dass dieser die Spannungsdifferenz zwischen Ausgangsspannung und Eingangsspannung in Wärme umwandelt. Daher sollten keine temperaturempfindlichen Bauteile in dessen Nähe platziert werden. Zur Überprüfung ob das Modul mit der Betriebsspannung von \unit{+5}{\volt} versorgt wird, wurde die LED (\fref{fig:coremodul-fix}, V4) zur optischen Kontrolle eingebaut. Wenn das Modul mit Spannung versorgt wird, leuchtet diese. Zur Überprüfung ob der Prozessor mit seiner Betriebsspannung von \unit{3,3}{\volt} versorgt wird, wurde die LED (\fref{fig:coremodul-fix}, V6) zur optischen Kontrolle eingebaut. Wenn der Prozessor mit Spannung versorgt wird, leuchtet sie. Um den Stromverbrauch des \gls{Core-Modul}s im Low-Power Modus weiter zu senken, können die LEDs mit Hilfe von Jumpern außer Betrieb gesetzt werden.
\fig{coremodul-fix}{Fixspannungsregler des Core-Moduls}{Fixspannungsregler des \gls{Core-Modul}s}{0.75\textwidth}{Schuh/Pictures/schaltung-fix}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:coremodul-fix-schem}]{\includegraphics[width=.75\linewidth]{Schuh/Pictures/schaltung-fix}}\qquad
\subfloat[Hardware\label{fig:coremodul-fix-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/core-fix}}\qquad
\caption[Fixspannungsregler des Core-Moduls]{Fixspannungsregler des \gls{Core-Modul}s}
\label{fig:coremodul-fix}
\end{figure}
\subsubsection{Prozessor}
Das Schaltplansymbol für den Prozessor (\fref{fig:coremodul-prozessor}, U1) zeigt den im Schematic verwendeten Bauteil. Alle wichtigen Detailinformationen über den Prozessor wurden bereits in \fref{sec:coremodul-prozessor} behandelt.
\fig{coremodul-prozessor}{Prozessor des Core-Moduls}{Prozessor des \gls{Core-Modul}s}{0.75\textwidth}{Schuh/Pictures/schaltung-prozessor}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:coremodul-prozessor-schem}]{\includegraphics[width=.75\linewidth]{Schuh/Pictures/schaltung-prozessor}}\qquad
\subfloat[Hardware\label{fig:coremodul-prozessor-hard}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/core-prozessor}}\qquad
\caption[Prozessor des Core-Moduls]{Prozessor des \gls{Core-Modul}s}
\label{fig:coremodul-prozessor}
\end{figure}
\subsubsection{Stützkondensatoren}
Während des laufenden Betriebs eines Microcontrollers benötigt dieser unterschiedlich viel Strom. Um auf diese Stromspitzen reagieren zu können, wurden Stützkondensatoren vorgesehen, damit es nicht zu Absturz des Programmes oder zu anderen Problemen durch Spannungseinbrüche kommt. Die Stützkondensatoren (\fref{fig:coremodul-kond}: C5, C6, C7 und C8) können daher die in ihnen gespeicherte Ladung bei stark wechselnden Stromaufnahmen abgeben und dadurch eine ordnungsmäßige Versorgung des Prozessors gewährleisten.
@ -163,17 +202,35 @@ Das \gls{Core-Modul} besitzt standardmäßig zwei verschiedene Taktquellen. Dies
\subsubsection{Taster}
Auf dem \gls{Core-Modul} wurde ein Kurzhubtaster (\fref{fig:coremodul-taster}, S1) vorgesehen, dessen Funktion nach belieben ausprogrammiert werden kann.
\fig{coremodul-taster}{Taster des Core-Moduls}{Taster des \gls{Core-Modul}s}{0.25\textwidth}{Schuh/Pictures/schaltung-taster}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:coremodul-taster-schem}]{\includegraphics[width=.25\linewidth]{Schuh/Pictures/schaltung-taster}}\qquad
\subfloat[Hardware\label{fig:coremodul-taster-hard}]{\includegraphics[width=.25\linewidth]{Schuh/Pictures/core-taster}}\qquad
\caption[Taster des Core-Moduls]{Taster des \gls{Core-Modul}s}
\label{fig:coremodul-taster}
\end{figure}
\subsubsection{LED}
Auf dem \gls{Core-Modul} wurde eine LED (\fref{fig:coremodul-led}, V2) vorgesehen, deren Funktion nach belieben ausprogrammiert werden kann.
\fig{coremodul-led}{LED des Core-Moduls}{LED des \gls{Core-Modul}s}{0.5\textwidth}{Schuh/Pictures/schaltung-led}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:coremodul-led-schem}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/schaltung-led}}\qquad
\subfloat[Hardware\label{fig:coremodul-led-hard}]{\includegraphics[width=.25\linewidth]{Schuh/Pictures/core-led}}\qquad
\caption[LED des Core-Moduls]{LED des \gls{Core-Modul}s}
\label{fig:coremodul-led}
\end{figure}
\subsubsection{Masseschleife}
Um das Messen mit einem Oszilloskop oder anderen Messgeräten zu vereinfachen wurde eine Masseschleife (\fref{fig:coremodul-masse}, X6) auf dem \gls{Core-Modul} realisiert.
\fig{coremodul-masse}{Masseschleife des Core-Moduls}{Masseschleife des \gls{Core-Modul}s}{0.25\textwidth}{Schuh/Pictures/schaltung-masse}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:coremodul-masse-schem}]{\includegraphics[width=.25\linewidth]{Schuh/Pictures/schaltung-masse}}\qquad
\subfloat[Hardware\label{fig:coremodul-masse-hard}]{\includegraphics[width=.25\linewidth]{Schuh/Pictures/core-masse}}\qquad
\caption[Masseschleife des Core-Moduls]{Masseschleife des \gls{Core-Modul}s}
\label{fig:coremodul-masse}
\end{figure}
\subsection{Leiterplattenlayout}
\label{sec:coremodul-leiterplattenlayout}

Binary file not shown.

After

Width:  |  Height:  |  Size: 409 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 398 KiB

BIN
Schuh/Pictures/basis-dc.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 510 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 624 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 443 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 369 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 730 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 775 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 517 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

BIN
Schuh/Pictures/basis.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

BIN
Schuh/Pictures/core-fix.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 496 KiB

BIN
Schuh/Pictures/core-led.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 KiB

BIN
Schuh/Pictures/core-swd.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 350 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 401 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 340 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 309 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 340 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 995 KiB

View file

@ -1,7 +1,7 @@
\section{USB-to-UART}
\label{sec:usbtouart}
\todo[inline]{Bild einfügen}
\fig{ubstouart}{USB-to-UART-Adapter}{\gls{USB-to-UART}-Adapter}{\textwidth}{Schuh/Pictures/usbtouart-hard}
\subsection{Allgemeines}
\label{sec:usbtouart-allgemeines}
@ -31,27 +31,65 @@ Der \gls{USB-to-UART}-Adapter verfügt über die in \fref{tab:usbtouart-schnitts
\subsubsection{UART}
Die UART-Schnittstelle wurde hardwaretechnisch zweimal ausgeführt, einmal zu der Stiftleiste (\fref{fig:usbtouart-uart1}, X2) und einmal zum Header (\fref{fig:usbtouart-uart2}, X3). Die Stiftleiste (\fref{fig:usbtouart-uart1}, X2) dient zur Kommunikation mit den diversen UART-Interfaces auf der \gls{Basisplatine}, als auch zu Kommunikation mit der UART-Schnittstelle auf dem \gls{Core-Modul}. Der Header (\fref{fig:usbtouart-uart2}, X3) dient zur Programmierung und Kommunikation mit einem NEXTION-Display.
\fig{usbtouart-uart1}{UART des USB-to-UART-Adapter}{UART des \gls{USB-to-UART}-Adapter}{0.5\textwidth}{Schuh/Pictures/usbtouart-uart1}
\fig{usbtouart-uart2}{UART des USB-to-UART-Adapter für NEXTION-Display}{UART des \gls{USB-to-UART}-Adapter für NEXTION-Display}{0.5\textwidth}{Schuh/Pictures/usbtouart-uart2}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:usbtouart-uart1}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/usbtouart-uart1}}\qquad
\subfloat[Schematic für NEXTION-Display\label{fig:usbtouart-uart2}]{\includegraphics[width=.4\linewidth]{Schuh/Pictures/usbtouart-uart2}}\qquad
\subfloat[Hardware\label{fig:usbtouart-uart-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/usbtouart-uart-hard}}\qquad
\caption[UART des USB-to-UART-Adapter]{UART des \gls{USB-to-UART}-Adapter}
\label{fig:usbtouart-uart}
\end{figure}
\subsubsection{Spannungsversorgung}
Die Betriebsspannungsversorgung von \unit{+5}{\volt} sollte prinzipiell nur über die USB-B Buchse (\fref{fig:usbtouart-spannung1}, X1) zur Verfügung gestellt werden. Diese Spannungsversorgung wird auch zur Programmierung und Kommunikation mit einem NEXTION-Display oder mit anderen \unit{5}{\volt} Interfaces benötigt. Zur Überprüfung ob das Modul mit Spannung versorgt wird, wurde die LED (\fref{fig:usbtouart-spannung2}, V4) zur optischen Kontrolle eingebaut. Wenn das Modul mit Spannung über die USB-B Buchse versorgt wird, beginnt diese zu leuchten.
Es gibt zusätzlich zur Betriebsspannung noch eine vom FTDI-Chip generierte \unit{+3,3}{\volt} Spannungsversorgung, welche zur Kommunikation mit den verwendeten UART-Interfaces auf der \gls{Basisplatine} und dem \gls{Core-Modul} benötigt wird. Der Hardwareaufbau erlaubt es je nach verwendeten Interface, durch Setzen von einem Jumper auf der Stiftleiste (\fref{fig:usbtouart-spannung3}, X4) die Betriebsspannungen für das entsprechende Interface selbst zu wählen. Durch Verbinden des Pin1 mit dem Pin2, wird am Ausgang eine Spannung von \unit{+5}{\volt} ausgegeben. Durch Verbinden des Pin2 mit dem Pin3, wird am Ausgang eine Spannung von \unit{+3,3}{\volt} ausgegeben.
\fig{usbtouart-spannung1}{Spannungsversorgung des USB-to-UART-Adapter}{Spannungsversorgung des \gls{USB-to-UART}-Adapter}{0.5\textwidth}{Schuh/Pictures/usbtouart-spannung1}
\fig{usbtouart-spannung2}{Spannungsversorgungs-LED des USB-to-UART-Adapter}{Spannungsversorgungs-LED des \gls{USB-to-UART}-Adapter}{0.25\textwidth}{Schuh/Pictures/usbtouart-spannung2}
\fig{usbtouart-spannung3}{Spannungsversorgungs-Jumper des USB-to-UART-Adapter}{Spannungsversorgungs-Jumper des \gls{USB-to-UART}-Adapter}{0.5\textwidth}{Schuh/Pictures/usbtouart-spannung3}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:usbtouart-spannung1-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/usbtouart-spannung1}}\qquad
\subfloat[Hardware\label{fig:usbtouart-spannung1-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/usbtouart-spannung1-hard}}\qquad
\caption[Spannungsversorgung des USB-to-UART-Adapter]{Spannungsversorgung des \gls{USB-to-UART}-Adapter}
\label{fig:usbtouart-spannung1}
\end{figure}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:usbtouart-spannung2-schem}]{\includegraphics[width=.25\linewidth]{Schuh/Pictures/usbtouart-spannung2}}\qquad
\subfloat[Hardware\label{fig:usbtouart-spannung2-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/usbtouart-spannung2-hard}}\qquad
\caption[Spannungsversorgungs-LED des USB-to-UART-Adapter]{Spannungsversorgungs-LED des \gls{USB-to-UART}-Adapter}
\label{fig:usbtouart-spannung2}
\end{figure}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:usbtouart-spannung3-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/usbtouart-spannung3}}\qquad
\subfloat[Hardware\label{fig:usbtouart-spannung3-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/usbtouart-spannung3-hard}}\qquad
\caption[Spannungsversorgungs-Jumper des USB-to-UART-Adapter]{Spannungsversorgungs-Jumper des \gls{USB-to-UART}-Adapter}
\label{fig:usbtouart-spannung3}
\end{figure}
\subsubsection{Status-LEDs}
Die Status-LEDs (\fref{fig:usbtouart-leds}, V1 und V2) dienen zu optischen Kontrolle, ob Daten zwischen den Sender den Empfänger ausgetauscht werden. Die LED V1 leuchtet, sobald Daten über das Modul gesendet werden. Die LED V2 hingegen zeigt an ob Daten zum Modul gelangen.
\fig{usbtouart-leds}{Status-LEDs des USB-to-UART-Adapter}{Status-LEDs des \gls{USB-to-UART}-Adapter}{0.5\textwidth}{Schuh/Pictures/usbtouart-leds}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:usbtouart-leds-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/usbtouart-leds}}\qquad
\subfloat[Hardware\label{fig:usbtouart-leds-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/usbtouart-leds-hard}}\qquad
\caption[Status-LEDs des USB-to-UART-Adapter]{Status-LEDs des \gls{USB-to-UART}-Adapter}
\label{fig:usbtouart-leds}
\end{figure}
\subsubsection{FTDI-Chip}
Durch den FTDI-Chip FT232RL wird die eine Verwendung einer seriellen Schnittstelle über USB-Geräte ermöglicht.
\fig{usbtouart-ftdi}{FTDI-Chip des USB-to-UART-Adapter}{FTDI-Chip des \gls{USB-to-UART}-Adapter}{0.5\textwidth}{Schuh/Pictures/usbtouart-ftdi}
\begin{figure}[htb]
\centering
\subfloat[Schematic\label{fig:usbtouart-ftdi-schem}]{\includegraphics[width=.5\linewidth]{Schuh/Pictures/usbtouart-ftdi}}\qquad
\subfloat[Hardware\label{fig:usbtouart-ftdi-hard}]{\includegraphics[width=.3\linewidth]{Schuh/Pictures/usbtouart-ftdi-hard}}\qquad
\caption[FTDI-Chip des USB-to-UART-Adapter]{FTDI-Chip des \gls{USB-to-UART}-Adapter}
\label{fig:usbtouart-ftdi}
\end{figure}
\subsubsubsection{Blockschaltbild}
Wie anhand des Blockschaltbildes ersichtlich ist, ist bereits ein \unit{3,3}{\volt} LDO-Regulator im FTDI-Chip verbaut, daher kann dieser die Ausgangsspannung von \unit{+3,3}{\volt} selbstständig generieren.

View file

@ -33,7 +33,7 @@
\newdualentry{STM}{STM}{STMicroelectronics N.V.}{ist ein europäischer Halbleiterhersteller mit Sitz in den Niederlanden. Siehe: \cite{wiki:STM}}
\newdualentry{RTC}{RTC}{Real Time Clock}{zu deutsch: Echtzeituhr, ist eine Uhr, welche durch die hohe Präzision dafür ausgelegt ist Zeitnahmeaufgaben zu erledigen\todo{Stimmt das so??}}
\newdualentry{RTC}{RTC}{Echtzeituhr}{ (englisch \textit{real-time clock}, \textit{RTC}) oder physikalische Uhr ist eine Uhr, welche die physikalische Zeit misst. Im Gegensatz dazu misst eine logische Uhr eine relative Zeit, die nicht der aktuellen Uhrzeit entspricht. Im Bereich der Elektrotechnik bzw. technischen Informatik ist eine Echtzeituhr Teil eines computergesteuerten Gerätes bzw. des Betriebssystems und hält die Uhrzeit vor. Es werden Vorkehrungen getroffen, damit die Uhrzeit nach erneutem Einschalten wieder zur Verfügung steht. Insbesondere ist eine Echtzeituhr ein Schaltkreis, welcher die Uhrzeit (mittels eines eigenen Energiespeichers, etwa einer Batterie) auch bei ausgeschaltetem Gerät fortschreiben kann. Siehe: \cite{wiki:RTC}}
\newdualentry{ADC}{ADC}{Analog-Digital-Converter}{zu deutsch: Analog-Digital-Wandler, ist ein Bauteil, welches Wert- und Zeitkontinuirliche Signale Abtastet und Quantisiert um sie digital weiter verarbeiten zu können}

View file

@ -181,4 +181,12 @@
note = "Rev. H",
url = "http://www.ti.com/lit/ds/symlink/ts5a22364.pdf",
urldate = "2018-03-16"
}
@online{ wiki:RTC,
author = "Wikipedia",
title = "Echtzeituhr",
year = "2018",
url = "https://de.wikipedia.org/w/index.php?title=Echtzeituhr&oldid=174079576",
urldate = "2018-03-17"
}