From 71ca5e44d7b9f71cc7aabd1cc3a42fcf7e9a6865 Mon Sep 17 00:00:00 2001 From: lonkaars Date: Thu, 4 Nov 2021 17:38:30 +0100 Subject: added schematics to design document --- docs/ontwerp.pdf | Bin 0 -> 111220 bytes docs/ontwerp.tex | 350 +++++++++++++++++++++++++++++++++++++++++++++++ docs/pcb.pdf | Bin 0 -> 32912 bytes docs/schema.pdf | Bin 0 -> 46812 bytes docs/softwareontwerp.pdf | Bin 35445 -> 0 bytes docs/softwareontwerp.tex | 330 -------------------------------------------- docs/urenrapportage.pdf | Bin 12874 -> 12915 bytes docs/urenrapportage.tex | 3 +- hardware/simon.pro | 12 +- 9 files changed, 363 insertions(+), 332 deletions(-) create mode 100644 docs/ontwerp.pdf create mode 100644 docs/ontwerp.tex create mode 100644 docs/pcb.pdf create mode 100644 docs/schema.pdf delete mode 100644 docs/softwareontwerp.pdf delete mode 100644 docs/softwareontwerp.tex diff --git a/docs/ontwerp.pdf b/docs/ontwerp.pdf new file mode 100644 index 0000000..1eb272f Binary files /dev/null and b/docs/ontwerp.pdf differ diff --git a/docs/ontwerp.tex b/docs/ontwerp.tex new file mode 100644 index 0000000..7c5406b --- /dev/null +++ b/docs/ontwerp.tex @@ -0,0 +1,350 @@ +\documentclass[12pt, a4paper, dutch]{article} + +% tikz is ugly, i don't bother making clean LaTeX code + +\usepackage[margin=1in]{geometry} +\usepackage{circuitikz} +\usepackage{float} +\usepackage{babel} +\usepackage{siunitx} +\usepackage{amsmath} +\usepackage{scalerel} +\usepackage{csquotes} +\usepackage{parskip} +\usepackage{unicode-math} +\usepackage{fontspec} +\usepackage{tabularx} +\usepackage{booktabs} +\usepackage{graphicx} +\usepackage{pgfplots} +\usepackage{color} +\usepackage{hyperref} + +\setmainfont{TeX Gyre Schola} +\setmathfont{TeX Gyre Schola Math} +\setmonofont{JetBrainsMono Nerd Font} +\sisetup{ + group-separator = {.}, + output-decimal-marker = {,} +} + +\pgfplotsset{compat=newest} + +\usetikzlibrary{calc} +\usetikzlibrary{shapes.geometric} +\usetikzlibrary{arrows.meta,arrows} +\usetikzlibrary{positioning} +\tikzset{ + initial/.style={circle, fill}, + final/.style={solid, double=white, circle, fill, thick, draw}, + decision/.style={diamond, black, draw}, + action/.style={rectangle, draw, rounded corners, align=center}, + arrow/.style={draw, -{Latex[length=3mm]}, thick, rounded corners} +} + +\bigskipamount=7mm +\medskipamount=4mm +\parindent=0mm + +\begin{document} + +\begin{center} +\textbf{Ontwerp} \hspace{2mm} project Simon \hfill \textbf{Loek Le Blansch} (2180996) +\\\smallskip +\today +\end{center} + +\medskip + +Dit document maakt gebruik van hyperlinks, dus je kunt klikken op de blokken met +\emph{benadrukte tekst} om naar de definitie van dat blok te gaan. + +\section{Software ontwerp} + +\subsection*{Overzicht}\label{overzicht} +\begin{center} +\begin{tikzpicture}[node distance=1.5cm] +\node[initial] (initial) at (0,0) {}; +\node[action, below of = initial] (setup) {\hyperref[init]{\emph{Initialisatie}}}; +\node[action, below of = setup] (loop) {\hyperref[loop]{\emph{Loop}}}; + +\draw [arrow] (initial) -- (setup); +\draw [arrow] (setup) -- (loop); +\draw [arrow] (loop) -- ++(0, -1) -- ++(-2, 0) -- ++(0, 1) -- (loop); + +\end{tikzpicture} +\end{center} + + +\subsection*{Initialisatie}\label{init} +\begin{center} +\begin{tikzpicture}[node distance=1.5cm] +\node[initial] (initial) at (0,0) {}; + +\node[action, below = 1cm of initial] (mkvars) {Maak globale variabelen voor de + goede\\combinatie en om bij te houden\\hoeveel beurten zijn verlopen.}; + +\node[action, below = 1cm of mkvars] (outputs) {Configureer de output pins}; +\node[action, below of = outputs] (inputs) {Configureer de input pins}; + + +\node[action, below of = inputs] (bootanimation) {Weergeef de opstart animatie}; + +\node[action, below of = bootanimation] (waitready) {Laat de groene led knipperen + terwijl\\er gewacht wordt op de gebruiker}; + +\node[action, below of = waitready] (simonsays) {Laat de eerste noot van de + combinatie zien en horen}; + +\node[final, below of = simonsays] (final) {}; + +\draw [arrow] (initial) -- (mkvars); +\draw [arrow] (mkvars) -- (outputs); +\draw [arrow] (outputs) -- (inputs); +\draw [arrow] (inputs) -- (bootanimation); +\draw [arrow] (bootanimation) -- (waitready); +\draw [arrow] (waitready) -- (simonsays); +\draw [arrow] (simonsays) -- (final); + +\end{tikzpicture} +\end{center} + + +\subsection*{Loop}\label{loop} +\begin{center} +\begin{tikzpicture}[node distance=2cm] +\node[initial] (initial) at (0,0) {}; + +\node[decision, below of = initial] (begin) {}; + +\node[action, below of = begin] (scanbn) + {\hyperref[bnscan]{\emph{Scan de knoppen}}}; +\node[action, below of = scanbn] (bngenerator) + {\hyperref[onbn]{\emph{Event generator}}}; + +\draw [arrow] (initial) -- (begin); +\draw [arrow] (begin) -- (scanbn); +\draw [arrow] (scanbn) -- (bngenerator); + +\draw [arrow] (bngenerator) -- ++(0, -1) -- ++(-2.5, 0) |- (begin); + +\end{tikzpicture} +\end{center} + + +\subsection*{Knoppen scan}\label{bnscan} +\begin{center} +\begin{tikzpicture}[node distance=1.5cm] + +\node[initial] (initial) at (0,0) {}; + +\node[action, below of = initial] (mvarr) + {kopi\"eer \texttt{bn\_state} naar \texttt{bn\_state\_old}}; + +\node[action, below of = mvarr] (ie0) {Stel i in op 0}; +\node[decision, below of = ie0, + label={above left:[$i<4$]}] (iloopstart) {}; + +\node[action, below of = iloopstart] (checkpin) + {Sla de huidige waarde van pin\\\texttt{clockwise\_buttons[i]} op in + \texttt{bn\_state[i]}}; + +\node[action, below of = checkpin] (ip1) + {Verhoog 1 met 1}; + +\node[decision, below of = ip1] (iloopend) {}; + +\node[final, below of = iloopend] (final) {}; + + +\draw [arrow] (initial) -- (mvarr); +\draw [arrow] (mvarr) -- (ie0); +\draw [arrow] (checkpin) -- (ip1); +\draw [arrow] (iloopend) -- (final); + +\draw [arrow] (iloopstart) node[below right]{[ja]} -- (checkpin); + +\draw [arrow] (ie0) -- (iloopstart); + +\draw [arrow] (iloopstart) -- node[above]{[nee]} ++(5.0, 0) |- (iloopend); + +\draw [arrow] (ip1) -- ++(0, -1) -- ++(-5.0, 0) |- (iloopstart); + +\end{tikzpicture} +\end{center} + + +\subsection*{Event generator}\label{onbn} +\begin{center} +\begin{tikzpicture}[node distance=1.5cm] +\node[initial] (initial) at (0,0) {}; + +\node[action, below of = initial] (ie0) {Stel i in op 0}; +\node[decision, below of = ie0, + label={above left:[$i < 4$]}] (iloopstart) {}; +\node[decision, below = 2cm of iloopstart, + label={above left:[bn\_state[i] == bn\_state\_old[i]]}] (bndiff) {}; +\node[action, below = 1cm of bndiff] (makestruct) + {Maak een struct met\\informatie over de toets}; +\node[action, below = 1cm of makestruct] (bnhandl) + {\hyperref[bneventhandler]{\emph{Event handler}}\\(krijgt struct mee)}; +\node[decision, below of = bnhandl] (merge) {}; +\node[action, below of = merge] (ip1) + {Verhoog i met 1}; +\node[decision, below of = ip1] (iloopend) {}; + +\node[final, below of = iloopend] (final) {}; + +\draw [arrow] (initial) -- (ie0); +\draw [arrow] (ie0) -- (iloopstart); + +\draw [arrow] (ip1) -- ++(0, -0.7) -- ++(-6.7, 0) |- (iloopstart); +\draw [arrow] (ie0) -- (iloopstart); +\draw [arrow] (iloopstart) node[below right]{[ja]} -- (bndiff); +\draw [arrow] (iloopstart) -- node[above]{[nee]} ++(3.6, 0) |- (iloopend); + +\draw [arrow] (bndiff) -- node[above]{[ja]} ++(3, 0) |- (merge); +\draw [arrow] (bndiff) node[below right]{[nee]} -- (makestruct); + +\draw [arrow] (makestruct) -- (bnhandl); +\draw [arrow] (bnhandl) -- (merge); +\draw [arrow] (merge) -- (ip1); +\draw [arrow] (iloopend) -- (final); + +\end{tikzpicture} +\end{center} + + +\subsection*{Event handler}\label{bneventhandler} +\begin{center} +\begin{tikzpicture}[node distance=2.5cm] + +\node[initial] (initial) at (0,0) {}; + +\node[action, below of = initial] (debounce) + {Kijk of er meer dan 250ms tussen\\deze en de vorige toetsaanslag zit\\en sla dit + op in \texttt{debounce}}; + +\node [decision, below = 2cm of debounce, + label={[align=right]left:{[ignore\_input]\\of\\{}[key up + event]\\of\\{}[debounce]}}] (fastreturn) {}; + +\node[action, below = 2cm of fastreturn] (av) + {Licht de ingedrukte knop op\\en laat een toon horen}; + +\node[action, below = 1cm of av] (ignoreinput) + {Stel een timer in om alle invoer\\voor 200 milliseconden te negeren}; + +\node[action, below = 1cm of ignoreinput] (checkkp) + {\hyperref[checkkeypress]{\emph{Controleer of de knop goed is}}}; + +\node[final, below of = checkkp] (final) {}; + +\draw [arrow] (initial) -- (debounce); +\draw [arrow] (debounce) -- (fastreturn); +\draw [arrow] (fastreturn) -- node[midway,above]{[ja]} ++(5, 0) |- (final); +\draw [arrow] (fastreturn) -- node[below right]{[nee]} (av); +\draw [arrow] (av) -- (ignoreinput); +\draw [arrow] (ignoreinput) -- (checkkp); +\draw [arrow] (checkkp) -- (final); + +\end{tikzpicture} +\end{center} + + +\subsection*{Controleer of de knop goed is}\label{checkkeypress} +\begin{center} +\begin{tikzpicture}[node distance=1.5cm] + +\node[initial] (initial) at (0,0) {}; + +\node [decision, below = 2cm of initial, + label={left:{[combinatie[toets\_index] != toets]}}] (fastreturn1) {}; + +\node[action, below right = 5mm and 2cm of fastreturn1] (badpressroutine) + {\hyperref[badpressroutine]{\emph{Maak de gebruiker verdrietig}}}; + +\node [decision, below = 2cm of fastreturn1, + label={left:{[toets\_index == zet\_index]}}] (fastreturn2) {}; + +\node[action, below right = 5mm and 1cm of fastreturn2] (turnnumberpp) + {Verhoog zet\_index met 1}; + +\node[action, below of = turnnumberpp] (ennume0) + {Stel toets\_index in op 0}; + +\node[action, below of = ennume0] (newcomb) + {Laat de langere cominatie zien}; + +\node [decision, below of = newcomb] (comb1) {}; + +\node[action, below = 5cm of fastreturn2] (ennumpp) + {Verhoog toets\_index met 1}; + +\node[final, below of = ennumpp] (final) {}; + +\draw [arrow] (initial) -- (fastreturn1); +\draw [arrow] (fastreturn1) -| node[above left]{[ja]} (badpressroutine); +\draw [arrow] (fastreturn2) -| node[above left]{[ja]} (turnnumberpp); +\draw [arrow] (turnnumberpp) -- (ennume0); +\draw [arrow] (ennume0) -- (newcomb); +\draw [arrow] (newcomb) -- (comb1); +\draw [arrow] (fastreturn1) -- node[below right]{[nee]} (fastreturn2); +\draw [arrow] (fastreturn2) -- node[below right]{[nee]} (ennumpp); +\draw [arrow] (badpressroutine) |- ++(2, -0.8) |- (comb1); +\draw [arrow] (ennumpp) -- (final); +\draw [arrow] (comb1) |- (final); + +\end{tikzpicture} +\end{center} + + +\subsection*{Verkeerde knop routine}\label{badpressroutine} +\begin{center} +\begin{tikzpicture}[node distance=1.5cm] + +\node[initial] (initial) at (0,0) {}; + +\node[action, below of = initial] (av) + {Laat de lampjes knipperen en\\een pieptoon klinken voor 2 seconden}; + +\node[action, below of = av] (resetvars) + {Stel toest\_index en zet\_index in op 0}; + +\node[action, below of = resetvars] (newcomb) + {Maak een nieuwe combinatie\\van willekeurige toetsen}; + +\node[action, below of = newcomb] (showcomb) + {Laat de combinatie zien}; + +\node[final, below of = showcomb] (final) {}; + +\draw [arrow] (initial) -- (av); +\draw [arrow] (av) -- (resetvars); +\draw [arrow] (resetvars) -- (newcomb); +\draw [arrow] (newcomb) -- (showcomb); +\draw [arrow] (showcomb) -- (final); + +\end{tikzpicture} +\end{center} + +\section{Hardware} + +\subsection{Schema} + +\begin{center} +\includegraphics[ + clip, + trim=21mm 83mm 197mm 13mm, + width=9cm +]{./schema.pdf} +\end{center} + +\subsection{PCB} +\begin{center} +\includegraphics[ + width=9cm +]{./pcb.pdf} +\end{center} + +\end{document} diff --git a/docs/pcb.pdf b/docs/pcb.pdf new file mode 100644 index 0000000..cb9b5fe Binary files /dev/null and b/docs/pcb.pdf differ diff --git a/docs/schema.pdf b/docs/schema.pdf new file mode 100644 index 0000000..d707d5b Binary files /dev/null and b/docs/schema.pdf differ diff --git a/docs/softwareontwerp.pdf b/docs/softwareontwerp.pdf deleted file mode 100644 index 04ea586..0000000 Binary files a/docs/softwareontwerp.pdf and /dev/null differ diff --git a/docs/softwareontwerp.tex b/docs/softwareontwerp.tex deleted file mode 100644 index dc41b2b..0000000 --- a/docs/softwareontwerp.tex +++ /dev/null @@ -1,330 +0,0 @@ -\documentclass[12pt, a4paper, dutch]{article} - -% tikz is ugly, i don't bother making clean LaTeX code - -\usepackage[margin=1in]{geometry} -\usepackage{circuitikz} -\usepackage{float} -\usepackage{babel} -\usepackage{siunitx} -\usepackage{amsmath} -\usepackage{scalerel} -\usepackage{csquotes} -\usepackage{parskip} -\usepackage{unicode-math} -\usepackage{fontspec} -\usepackage{tabularx} -\usepackage{booktabs} -\usepackage{graphicx} -\usepackage{pgfplots} -\usepackage{color} -\usepackage{hyperref} - -\setmainfont{TeX Gyre Schola} -\setmathfont{TeX Gyre Schola Math} -\setmonofont{JetBrainsMono Nerd Font} -\sisetup{ - group-separator = {.}, - output-decimal-marker = {,} -} - -\pgfplotsset{compat=newest} - -\usetikzlibrary{calc} -\usetikzlibrary{shapes.geometric} -\usetikzlibrary{arrows.meta,arrows} -\usetikzlibrary{positioning} -\tikzset{ - initial/.style={circle, fill}, - final/.style={solid, double=white, circle, fill, thick, draw}, - decision/.style={diamond, black, draw}, - action/.style={rectangle, draw, rounded corners, align=center}, - arrow/.style={draw, -{Latex[length=3mm]}, thick, rounded corners} -} - -\bigskipamount=7mm -\medskipamount=4mm -\parindent=0mm - -\begin{document} - -\begin{center} -\textbf{Software ontwerp} \hspace{2mm} project Simon \hfill \textbf{Loek Le Blansch} (2180996) -\\\smallskip -\today -\end{center} - -\medskip - -Dit document maakt gebruik van hyperlinks, dus je kunt klikken op de blokken met -\emph{benadrukte tekst} om naar de definitie van dat blok te gaan. - -\section*{Overzicht}\label{overzicht} -\begin{center} -\begin{tikzpicture}[node distance=1.5cm] -\node[initial] (initial) at (0,0) {}; -\node[action, below of = initial] (setup) {\hyperref[init]{\emph{Initialisatie}}}; -\node[action, below of = setup] (loop) {\hyperref[loop]{\emph{Loop}}}; - -\draw [arrow] (initial) -- (setup); -\draw [arrow] (setup) -- (loop); -\draw [arrow] (loop) -- ++(0, -1) -- ++(-2, 0) -- ++(0, 1) -- (loop); - -\end{tikzpicture} -\end{center} - - -\section*{Initialisatie}\label{init} -\begin{center} -\begin{tikzpicture}[node distance=1.5cm] -\node[initial] (initial) at (0,0) {}; - -\node[action, below = 1cm of initial] (mkvars) {Maak globale variabelen voor de - goede\\combinatie en om bij te houden\\hoeveel beurten zijn verlopen.}; - -\node[action, below = 1cm of mkvars] (outputs) {Configureer de output pins}; -\node[action, below of = outputs] (inputs) {Configureer de input pins}; - - -\node[action, below of = inputs] (bootanimation) {Weergeef de opstart animatie}; - -\node[action, below of = bootanimation] (waitready) {Laat de groene led knipperen - terwijl\\er gewacht wordt op de gebruiker}; - -\node[action, below of = waitready] (simonsays) {Laat de eerste noot van de - combinatie zien en horen}; - -\node[final, below of = simonsays] (final) {}; - -\draw [arrow] (initial) -- (mkvars); -\draw [arrow] (mkvars) -- (outputs); -\draw [arrow] (outputs) -- (inputs); -\draw [arrow] (inputs) -- (bootanimation); -\draw [arrow] (bootanimation) -- (waitready); -\draw [arrow] (waitready) -- (simonsays); -\draw [arrow] (simonsays) -- (final); - -\end{tikzpicture} -\end{center} - - -\section*{Loop}\label{loop} -\begin{center} -\begin{tikzpicture}[node distance=2cm] -\node[initial] (initial) at (0,0) {}; - -\node[decision, below of = initial] (begin) {}; - -\node[action, below of = begin] (scanbn) - {\hyperref[bnscan]{\emph{Scan de knoppen}}}; -\node[action, below of = scanbn] (bngenerator) - {\hyperref[onbn]{\emph{Event generator}}}; - -\draw [arrow] (initial) -- (begin); -\draw [arrow] (begin) -- (scanbn); -\draw [arrow] (scanbn) -- (bngenerator); - -\draw [arrow] (bngenerator) -- ++(0, -1) -- ++(-2.5, 0) |- (begin); - -\end{tikzpicture} -\end{center} - - -\section*{Knoppen scan}\label{bnscan} -\begin{center} -\begin{tikzpicture}[node distance=1.5cm] - -\node[initial] (initial) at (0,0) {}; - -\node[action, below of = initial] (mvarr) - {kopi\"eer \texttt{bn\_state} naar \texttt{bn\_state\_old}}; - -\node[action, below of = mvarr] (ie0) {Stel i in op 0}; -\node[decision, below of = ie0, - label={above left:[$i<4$]}] (iloopstart) {}; - -\node[action, below of = iloopstart] (checkpin) - {Sla de huidige waarde van pin\\\texttt{clockwise\_buttons[i]} op in - \texttt{bn\_state[i]}}; - -\node[action, below of = checkpin] (ip1) - {Verhoog 1 met 1}; - -\node[decision, below of = ip1] (iloopend) {}; - -\node[final, below of = iloopend] (final) {}; - - -\draw [arrow] (initial) -- (mvarr); -\draw [arrow] (mvarr) -- (ie0); -\draw [arrow] (checkpin) -- (ip1); -\draw [arrow] (iloopend) -- (final); - -\draw [arrow] (iloopstart) node[below right]{[ja]} -- (checkpin); - -\draw [arrow] (ie0) -- (iloopstart); - -\draw [arrow] (iloopstart) -- node[above]{[nee]} ++(5.0, 0) |- (iloopend); - -\draw [arrow] (ip1) -- ++(0, -1) -- ++(-5.0, 0) |- (iloopstart); - -\end{tikzpicture} -\end{center} - - -\section*{Event generator}\label{onbn} -\begin{center} -\begin{tikzpicture}[node distance=1.5cm] -\node[initial] (initial) at (0,0) {}; - -\node[action, below of = initial] (ie0) {Stel i in op 0}; -\node[decision, below of = ie0, - label={above left:[$i < 4$]}] (iloopstart) {}; -\node[decision, below = 2cm of iloopstart, - label={above left:[bn\_state[i] == bn\_state\_old[i]]}] (bndiff) {}; -\node[action, below = 1cm of bndiff] (makestruct) - {Maak een struct met\\informatie over de toets}; -\node[action, below = 1cm of makestruct] (bnhandl) - {\hyperref[bneventhandler]{\emph{Event handler}}\\(krijgt struct mee)}; -\node[decision, below of = bnhandl] (merge) {}; -\node[action, below of = merge] (ip1) - {Verhoog i met 1}; -\node[decision, below of = ip1] (iloopend) {}; - -\node[final, below of = iloopend] (final) {}; - -\draw [arrow] (initial) -- (ie0); -\draw [arrow] (ie0) -- (iloopstart); - -\draw [arrow] (ip1) -- ++(0, -0.7) -- ++(-6.7, 0) |- (iloopstart); -\draw [arrow] (ie0) -- (iloopstart); -\draw [arrow] (iloopstart) node[below right]{[ja]} -- (bndiff); -\draw [arrow] (iloopstart) -- node[above]{[nee]} ++(3.6, 0) |- (iloopend); - -\draw [arrow] (bndiff) -- node[above]{[ja]} ++(3, 0) |- (merge); -\draw [arrow] (bndiff) node[below right]{[nee]} -- (makestruct); - -\draw [arrow] (makestruct) -- (bnhandl); -\draw [arrow] (bnhandl) -- (merge); -\draw [arrow] (merge) -- (ip1); -\draw [arrow] (iloopend) -- (final); - -\end{tikzpicture} -\end{center} - - -\section*{Event handler}\label{bneventhandler} -\begin{center} -\begin{tikzpicture}[node distance=2.5cm] - -\node[initial] (initial) at (0,0) {}; - -\node[action, below of = initial] (debounce) - {Kijk of er meer dan 250ms tussen\\deze en de vorige toetsaanslag zit\\en sla dit - op in \texttt{debounce}}; - -\node [decision, below = 2cm of debounce, - label={[align=right]left:{[ignore\_input]\\of\\{}[key up - event]\\of\\{}[debounce]}}] (fastreturn) {}; - -\node[action, below = 2cm of fastreturn] (av) - {Licht de ingedrukte knop op\\en laat een toon horen}; - -\node[action, below = 1cm of av] (ignoreinput) - {Stel een timer in om alle invoer\\voor 200 milliseconden te negeren}; - -\node[action, below = 1cm of ignoreinput] (checkkp) - {\hyperref[checkkeypress]{\emph{Controleer of de knop goed is}}}; - -\node[final, below of = checkkp] (final) {}; - -\draw [arrow] (initial) -- (debounce); -\draw [arrow] (debounce) -- (fastreturn); -\draw [arrow] (fastreturn) -- node[midway,above]{[ja]} ++(5, 0) |- (final); -\draw [arrow] (fastreturn) -- node[below right]{[nee]} (av); -\draw [arrow] (av) -- (ignoreinput); -\draw [arrow] (ignoreinput) -- (checkkp); -\draw [arrow] (checkkp) -- (final); - -\end{tikzpicture} -\end{center} - - -\section*{Controleer of de knop goed is}\label{checkkeypress} -\begin{center} -\begin{tikzpicture}[node distance=1.5cm] - -\node[initial] (initial) at (0,0) {}; - -\node [decision, below = 2cm of initial, - label={left:{[combinatie[toets\_index] != toets]}}] (fastreturn1) {}; - -\node[action, below right = 5mm and 2cm of fastreturn1] (badpressroutine) - {\hyperref[badpressroutine]{\emph{Maak de gebruiker verdrietig}}}; - -\node [decision, below = 2cm of fastreturn1, - label={left:{[toets\_index == zet\_index]}}] (fastreturn2) {}; - -\node[action, below right = 5mm and 1cm of fastreturn2] (turnnumberpp) - {Verhoog zet\_index met 1}; - -\node[action, below of = turnnumberpp] (ennume0) - {Stel toets\_index in op 0}; - -\node[action, below of = ennume0] (newcomb) - {Laat de langere cominatie zien}; - -\node [decision, below of = newcomb] (comb1) {}; - -\node[action, below = 5cm of fastreturn2] (ennumpp) - {Verhoog toets\_index met 1}; - -\node[final, below of = ennumpp] (final) {}; - -\draw [arrow] (initial) -- (fastreturn1); -\draw [arrow] (fastreturn1) -| node[above left]{[ja]} (badpressroutine); -\draw [arrow] (fastreturn2) -| node[above left]{[ja]} (turnnumberpp); -\draw [arrow] (turnnumberpp) -- (ennume0); -\draw [arrow] (ennume0) -- (newcomb); -\draw [arrow] (newcomb) -- (comb1); -\draw [arrow] (fastreturn1) -- node[below right]{[nee]} (fastreturn2); -\draw [arrow] (fastreturn2) -- node[below right]{[nee]} (ennumpp); -\draw [arrow] (badpressroutine) |- ++(2, -0.8) |- (comb1); -\draw [arrow] (ennumpp) -- (final); -\draw [arrow] (comb1) |- (final); - -\end{tikzpicture} -\end{center} - - -\section*{Verkeerde knop routine}\label{badpressroutine} -\begin{center} -\begin{tikzpicture}[node distance=1.5cm] - -\node[initial] (initial) at (0,0) {}; - -\node[action, below of = initial] (av) - {Laat de lampjes knipperen en\\een pieptoon klinken voor 2 seconden}; - -\node[action, below of = av] (resetvars) - {Stel toest\_index en zet\_index in op 0}; - -\node[action, below of = resetvars] (newcomb) - {Maak een nieuwe combinatie\\van willekeurige toetsen}; - -\node[action, below of = newcomb] (showcomb) - {Laat de combinatie zien}; - -\node[final, below of = showcomb] (final) {}; - -\draw [arrow] (initial) -- (av); -\draw [arrow] (av) -- (resetvars); -\draw [arrow] (resetvars) -- (newcomb); -\draw [arrow] (newcomb) -- (showcomb); -\draw [arrow] (showcomb) -- (final); - -\end{tikzpicture} -\end{center} - - -\end{document} diff --git a/docs/urenrapportage.pdf b/docs/urenrapportage.pdf index d028a7b..9605599 100644 Binary files a/docs/urenrapportage.pdf and b/docs/urenrapportage.pdf differ diff --git a/docs/urenrapportage.tex b/docs/urenrapportage.tex index 4296c76..d55237e 100644 --- a/docs/urenrapportage.tex +++ b/docs/urenrapportage.tex @@ -36,7 +36,7 @@ Project Simon\hfill\today \medskip -Totaal: 15:37:58 +Totaal: 15:49:13 {\renewcommand{\arraystretch}{1.3} \begin{tabularx}{\textwidth}{rrrX} @@ -78,6 +78,7 @@ implementeren\\ & 12:35 & 1:35:18 & Onderzoek en analyse maken\\ & 14:36 & 0:14:35 & Urenrapportage maken\\ +& 17:26 & 0:11:15 & Schema's toevoegen aan ontwerp document\\ \bottomrule \end{tabularx} diff --git a/hardware/simon.pro b/hardware/simon.pro index 152769c..5cdc85b 100644 --- a/hardware/simon.pro +++ b/hardware/simon.pro @@ -1,4 +1,4 @@ -update=22/05/2015 07:44:53 +update=Thu 04 Nov 2021 05:26:22 PM CET version=1 last_client=kicad [general] @@ -31,3 +31,13 @@ NetIExt=net version=1 LibDir= [eeschema/libraries] +[schematic_editor] +version=1 +PageLayoutDescrFile= +PlotDirectoryName= +SubpartIdSeparator=0 +SubpartFirstId=65 +NetFmtName= +SpiceAjustPassiveValues=0 +LabSize=50 +ERC_TestSimilarLabels=1 -- cgit v1.2.3