293 lines
17 KiB
TeX
293 lines
17 KiB
TeX
\hypertarget{classutl_1_1i2c__i}{}\section{utl\+:\+:i2c\+\_\+i$<$ impl\+\_\+t $>$ Class Template Reference}
|
|
\label{classutl_1_1i2c__i}\index{utl\+::i2c\+\_\+i$<$ impl\+\_\+t $>$@{utl\+::i2c\+\_\+i$<$ impl\+\_\+t $>$}}
|
|
|
|
|
|
Abstract base class for i2c bus.
|
|
|
|
|
|
|
|
|
|
{\ttfamily \#include $<$i2c.\+h$>$}
|
|
|
|
Inheritance diagram for utl\+:\+:i2c\+\_\+i$<$ impl\+\_\+t $>$\+:\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[height=2.000000cm]{classutl_1_1i2c__i}
|
|
\end{center}
|
|
\end{figure}
|
|
\subsection*{Public Types}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
enum \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5}{Sequence}} \{ \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5ae409eb2ba6eb6801f52763ae370c350e}{Sequence\+::\+B\+Y\+TE}} =0,
|
|
\mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a0fc437bc317835cad5faafc12a83fad5}{Sequence\+::\+A\+CK}},
|
|
\mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a01af7e5aa5863a91810dd4e5d0e383ce}{Sequence\+::\+B\+Y\+T\+En\+A\+CK}}
|
|
\}
|
|
\begin{DoxyCompactList}\small\item\em I2C transmit/receive sequence. \end{DoxyCompactList}\item
|
|
using \mbox{\hyperlink{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}{type}} = \mbox{\hyperlink{classutl_1_1i2c__i}{i2c\+\_\+i}}$<$ impl\+\_\+t $>$
|
|
\end{DoxyCompactItemize}
|
|
\subsection*{Public Member Functions}
|
|
\begin{Indent}\textbf{ Get/\+Set functions}\par
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
uint32\+\_\+t \mbox{\hyperlink{classutl_1_1i2c__i_aac5fed816701cc4543acd717ec804ac0}{clock}} () const
|
|
\item
|
|
void \mbox{\hyperlink{classutl_1_1i2c__i_ae4c59938aeeb1f0726195d425a4c0083}{clock}} (uint32\+\_\+t f)
|
|
\begin{DoxyCompactList}\small\item\em set clock frequency of the bus \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\end{Indent}
|
|
\begin{Indent}\textbf{ User functions}\par
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
void \mbox{\hyperlink{classutl_1_1i2c__i_a3591683e5fbf17b582f6ac1f79af871d}{start}} ()
|
|
\begin{DoxyCompactList}\small\item\em Send start functionality. \end{DoxyCompactList}\item
|
|
void \mbox{\hyperlink{classutl_1_1i2c__i_a1310b52ac908b8c37059fb253cc3f56e}{stop}} ()
|
|
\begin{DoxyCompactList}\small\item\em Send stop functionality. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} \mbox{\hyperlink{classutl_1_1i2c__i_ab2f6a579096b4872f5dfd1530e200eda}{rx\+\_\+data}} (bool ack, \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5}{Sequence}} seq=\mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a01af7e5aa5863a91810dd4e5d0e383ce}{Sequence\+::\+B\+Y\+T\+En\+A\+CK}})
|
|
\begin{DoxyCompactList}\small\item\em Receive a byte from the i2c bus. \end{DoxyCompactList}\item
|
|
bool \mbox{\hyperlink{classutl_1_1i2c__i_aaf0b0ceec57fd8014ea3e6b58e9bfe3d}{tx\+\_\+data}} (\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} byte, \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5}{Sequence}} seq=\mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a01af7e5aa5863a91810dd4e5d0e383ce}{Sequence\+::\+B\+Y\+T\+En\+A\+CK}})
|
|
\begin{DoxyCompactList}\small\item\em Transmit a byte to the i2c bus. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\end{Indent}
|
|
\subsection*{Protected Member Functions}
|
|
\begin{Indent}\textbf{ Object lifetime}\par
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{classutl_1_1i2c__i_a84375c05d1c40d9992aa1290dd488410}{i2c\+\_\+i}} ()=default
|
|
\begin{DoxyCompactList}\small\item\em Allow constructor from derived only. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classutl_1_1i2c__i_a6a07d19db8974ad606031b60a6079957}{$\sim$i2c\+\_\+i}} ()=default
|
|
\begin{DoxyCompactList}\small\item\em Allow destructor from derived only. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classutl_1_1i2c__i_adff01408628f58b7c6ce9b0cd63d70df}{i2c\+\_\+i}} (const \mbox{\hyperlink{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}{type}} \&)=delete
|
|
\begin{DoxyCompactList}\small\item\em No copies. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}{type}} \& \mbox{\hyperlink{classutl_1_1i2c__i_aee83d11e02c3a0639dd3ed1ea440ed24}{operator=}} (const \mbox{\hyperlink{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}{type}} \&)=delete
|
|
\end{DoxyCompactItemize}
|
|
\end{Indent}
|
|
|
|
|
|
\subsection{Detailed Description}
|
|
\subsubsection*{template$<$typename impl\+\_\+t$>$\newline
|
|
class utl\+::i2c\+\_\+i$<$ impl\+\_\+t $>$}
|
|
|
|
Abstract base class for i2c bus.
|
|
|
|
this class force a common interface for I2C communication protocol implementations using C\+R\+TP
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em impl\+\_\+t} & The C\+R\+TP type (the derived/implementation class typename). \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
Definition at line 43 of file i2c.\+h.
|
|
|
|
|
|
|
|
\subsection{Member Typedef Documentation}
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}\label{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!type@{type}}
|
|
\index{type@{type}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{type}{type}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
using \mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::\mbox{\hyperlink{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}{type}} = \mbox{\hyperlink{classutl_1_1i2c__i}{i2c\+\_\+i}}$<$impl\+\_\+t$>$}
|
|
|
|
Export type as identity meta-\/function
|
|
|
|
Definition at line 47 of file i2c.\+h.
|
|
|
|
|
|
|
|
\subsection{Member Enumeration Documentation}
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5}\label{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!Sequence@{Sequence}}
|
|
\index{Sequence@{Sequence}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{Sequence}{Sequence}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
enum \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5}{utl\+::i2c\+\_\+i\+::\+Sequence}}\hspace{0.3cm}{\ttfamily [strong]}}
|
|
|
|
|
|
|
|
I2C transmit/receive sequence.
|
|
|
|
\begin{DoxyEnumFields}{Enumerator}
|
|
\raisebox{\heightof{T}}[0pt][0pt]{\index{B\+Y\+TE@{B\+Y\+TE}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!B\+Y\+TE@{B\+Y\+TE}}}\mbox{\Hypertarget{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5ae409eb2ba6eb6801f52763ae370c350e}\label{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5ae409eb2ba6eb6801f52763ae370c350e}}
|
|
B\+Y\+TE&Only read/write byte \mbox{[}8 clocks\mbox{]}. \\
|
|
\hline
|
|
|
|
\raisebox{\heightof{T}}[0pt][0pt]{\index{A\+CK@{A\+CK}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!A\+CK@{A\+CK}}}\mbox{\Hypertarget{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a0fc437bc317835cad5faafc12a83fad5}\label{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a0fc437bc317835cad5faafc12a83fad5}}
|
|
A\+CK&Only send/receive ack \mbox{[}1 clock\mbox{]}. \\
|
|
\hline
|
|
|
|
\raisebox{\heightof{T}}[0pt][0pt]{\index{B\+Y\+T\+En\+A\+CK@{B\+Y\+T\+En\+A\+CK}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!B\+Y\+T\+En\+A\+CK@{B\+Y\+T\+En\+A\+CK}}}\mbox{\Hypertarget{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a01af7e5aa5863a91810dd4e5d0e383ce}\label{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a01af7e5aa5863a91810dd4e5d0e383ce}}
|
|
B\+Y\+T\+En\+A\+CK&Read/\+Write byte and ack \mbox{[}9 clocks\mbox{]}. \\
|
|
\hline
|
|
|
|
\end{DoxyEnumFields}
|
|
|
|
|
|
Definition at line 49 of file i2c.\+h.
|
|
|
|
|
|
|
|
\subsection{Constructor \& Destructor Documentation}
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_a84375c05d1c40d9992aa1290dd488410}\label{classutl_1_1i2c__i_a84375c05d1c40d9992aa1290dd488410}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!i2c\+\_\+i@{i2c\+\_\+i}}
|
|
\index{i2c\+\_\+i@{i2c\+\_\+i}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{i2c\+\_\+i()}{i2c\_i()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::\mbox{\hyperlink{classutl_1_1i2c__i}{i2c\+\_\+i}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [default]}}
|
|
|
|
|
|
|
|
Allow constructor from derived only.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_a6a07d19db8974ad606031b60a6079957}\label{classutl_1_1i2c__i_a6a07d19db8974ad606031b60a6079957}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!````~i2c\+\_\+i@{$\sim$i2c\+\_\+i}}
|
|
\index{````~i2c\+\_\+i@{$\sim$i2c\+\_\+i}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{$\sim$i2c\+\_\+i()}{~i2c\_i()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::$\sim$\mbox{\hyperlink{classutl_1_1i2c__i}{i2c\+\_\+i}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [default]}}
|
|
|
|
|
|
|
|
Allow destructor from derived only.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_adff01408628f58b7c6ce9b0cd63d70df}\label{classutl_1_1i2c__i_adff01408628f58b7c6ce9b0cd63d70df}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!i2c\+\_\+i@{i2c\+\_\+i}}
|
|
\index{i2c\+\_\+i@{i2c\+\_\+i}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{i2c\+\_\+i()}{i2c\_i()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::\mbox{\hyperlink{classutl_1_1i2c__i}{i2c\+\_\+i}} (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}{type}} \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [delete]}}
|
|
|
|
|
|
|
|
No copies.
|
|
|
|
|
|
|
|
\subsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_aac5fed816701cc4543acd717ec804ac0}\label{classutl_1_1i2c__i_aac5fed816701cc4543acd717ec804ac0}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!clock@{clock}}
|
|
\index{clock@{clock}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{clock()}{clock()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
uint32\+\_\+t \mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::clock (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
clock frequency of the bus
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 87 of file i2c.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_ae4c59938aeeb1f0726195d425a4c0083}\label{classutl_1_1i2c__i_ae4c59938aeeb1f0726195d425a4c0083}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!clock@{clock}}
|
|
\index{clock@{clock}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{clock()}{clock()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
void \mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::clock (\begin{DoxyParamCaption}\item[{uint32\+\_\+t}]{f }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
set clock frequency of the bus
|
|
|
|
|
|
|
|
Definition at line 88 of file i2c.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_aee83d11e02c3a0639dd3ed1ea440ed24}\label{classutl_1_1i2c__i_aee83d11e02c3a0639dd3ed1ea440ed24}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!operator=@{operator=}}
|
|
\index{operator=@{operator=}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{operator=()}{operator=()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}{type}}\& \mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classutl_1_1i2c__i_aa9267a8602702b78f188e0cf61b68a55}{type}} \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [delete]}}
|
|
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_ab2f6a579096b4872f5dfd1530e200eda}\label{classutl_1_1i2c__i_ab2f6a579096b4872f5dfd1530e200eda}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!rx\+\_\+data@{rx\+\_\+data}}
|
|
\index{rx\+\_\+data@{rx\+\_\+data}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{rx\+\_\+data()}{rx\_data()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} \mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::rx\+\_\+data (\begin{DoxyParamCaption}\item[{bool}]{ack, }\item[{\mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5}{Sequence}}}]{seq = {\ttfamily \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a01af7e5aa5863a91810dd4e5d0e383ce}{Sequence\+::\+B\+Y\+T\+En\+A\+CK}}} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
Receive a byte from the i2c bus.
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em ack} & Optional ack bit. \begin{DoxyItemize}
|
|
\item 1 A\+CK the reception \item 0 Don\textquotesingle{}t A\+CK the reception. \end{DoxyItemize}
|
|
\\
|
|
\hline
|
|
{\em seq} & The operation sequence to execute \begin{DoxyItemize}
|
|
\item \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5ae409eb2ba6eb6801f52763ae370c350e}{Sequence\+::\+B\+Y\+TE}} Receive only the byte, do not send ack clock \item \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a0fc437bc317835cad5faafc12a83fad5}{Sequence\+::\+A\+CK}} Send only the ack bit \item \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a01af7e5aa5863a91810dd4e5d0e383ce}{Sequence\+::\+B\+Y\+T\+En\+A\+CK}} Receive the byte and send the ack bit \end{DoxyItemize}
|
|
\\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
The byte received.
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 111 of file i2c.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_a3591683e5fbf17b582f6ac1f79af871d}\label{classutl_1_1i2c__i_a3591683e5fbf17b582f6ac1f79af871d}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!start@{start}}
|
|
\index{start@{start}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{start()}{start()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
void \mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::start (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
Send start functionality.
|
|
|
|
|
|
|
|
Definition at line 96 of file i2c.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_a1310b52ac908b8c37059fb253cc3f56e}\label{classutl_1_1i2c__i_a1310b52ac908b8c37059fb253cc3f56e}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!stop@{stop}}
|
|
\index{stop@{stop}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{stop()}{stop()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
void \mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
Send stop functionality.
|
|
|
|
|
|
|
|
Definition at line 97 of file i2c.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1i2c__i_aaf0b0ceec57fd8014ea3e6b58e9bfe3d}\label{classutl_1_1i2c__i_aaf0b0ceec57fd8014ea3e6b58e9bfe3d}}
|
|
\index{utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}!tx\+\_\+data@{tx\+\_\+data}}
|
|
\index{tx\+\_\+data@{tx\+\_\+data}!utl\+::i2c\+\_\+i@{utl\+::i2c\+\_\+i}}
|
|
\subsubsection{\texorpdfstring{tx\+\_\+data()}{tx\_data()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t$>$ \\
|
|
bool \mbox{\hyperlink{classutl_1_1i2c__i}{utl\+::i2c\+\_\+i}}$<$ impl\+\_\+t $>$\+::tx\+\_\+data (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}}}]{byte, }\item[{\mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5}{Sequence}}}]{seq = {\ttfamily \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a01af7e5aa5863a91810dd4e5d0e383ce}{Sequence\+::\+B\+Y\+T\+En\+A\+CK}}} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
Transmit a byte to the i2c bus.
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em byte} & The byte to send. \\
|
|
\hline
|
|
{\em seq} & The operation sequence to execute \begin{DoxyItemize}
|
|
\item \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5ae409eb2ba6eb6801f52763ae370c350e}{Sequence\+::\+B\+Y\+TE}} Transmit only the byte, do not read ack bit \item \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a0fc437bc317835cad5faafc12a83fad5}{Sequence\+::\+A\+CK}} Read only the ack bit \item \mbox{\hyperlink{classutl_1_1i2c__i_a7e2dde443c6c9bde4a2293beb22950c5a01af7e5aa5863a91810dd4e5d0e383ce}{Sequence\+::\+B\+Y\+T\+En\+A\+CK}} Transmit the byte and read the ack bit \end{DoxyItemize}
|
|
\\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
Slave\textquotesingle{}s A\+CK bit \begin{DoxyItemize}
|
|
\item false Slave didn\textquotesingle{}t A\+CK \item true Slave did A\+CK \end{DoxyItemize}
|
|
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 127 of file i2c.\+h.
|
|
|
|
|
|
|
|
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
include/utl/com/\mbox{\hyperlink{i2c_8h}{i2c.\+h}}\end{DoxyCompactItemize}
|