|
|
\section{UART}
|
|
|
\subsection{Generals:}
|
|
|
On many microcontrolers you can use \textbf{U}niversal \textbf{A}synchronous \textbf{R}eceiver \textbf{T}ransmitter, in order to provide a standart access to this device you have to
|
|
|
implement th folowing functions:
|
|
|
|
|
|
\begin{itemize}
|
|
|
\item uart\_t \textbf{uartopen}(int);
|
|
|
\item \textbf{uartclose}(uart\_t);
|
|
|
\item \textbf{uartsetup}(uart\_t,int,int);
|
|
|
\item \textbf{uartputc}(uart\_t, char);
|
|
|
\item char \textbf{uartgetc}(uart\_t);
|
|
|
\item \textbf{uartputstring}(uart\_t,char*);
|
|
|
\item \textbf{uartgetstring}(uart\_t,char*);
|
|
|
\end{itemize}
|
|
|
|
|
|
\subsection{Details}
|
|
|
\subsubsection{\textbf{Openning uart}}
|
|
|
uart\_t \textbf{uartopen}(int) \\
|
|
|
This function has to open N\ieme \textbf{ uart} device, so it has to perform basical configuration such as powering up the device \dots This finction has also to return the pointer to the devicce handle.
|
|
|
\subsubsection{\textbf{Closing uart}}
|
|
|
\textbf{uartclose}(uart\_t)
|
|
|
\subsubsection{\textbf{Configure uart}}
|
|
|
\textbf{uartsetup}(uart\_t,int baudrate,int cpuclk)
|
|
|
\subsubsection{\textbf{Sending a char through uart}}
|
|
|
\textbf{uartputc}(uart\_t, char)
|
|
|
\subsubsection{\textbf{Receiving a char from uart}}
|
|
|
char \textbf{uartgetc}(uart\_t)
|
|
|
\subsubsection{\textbf{Sending a string through uart}}
|
|
|
\textbf{uartputstring}(uart\_t,char*)
|
|
|
\subsubsection{\textbf{Receiving a string from uart}}
|
|
|
\textbf{uartgetstring}(uart\_t,char*)
|
|
|
|
|
|
|
|
|
|