Revert ""

This reverts commit 75142d8376, reversing
changes made to b51d00d063.
This commit is contained in:
William Miceli
2021-02-08 14:24:50 -05:00
parent 75142d8376
commit 3ba4462b54
79 changed files with 5211 additions and 1383 deletions

View File

@@ -1,20 +1,31 @@
\hypertarget{documentation_guide_autotoc_md18}{}\doxysection{Doxygen}\label{documentation_guide_autotoc_md18}
\hypertarget{documentation_guide_autotoc_md19}{}\doxysection{Doxygen}\label{documentation_guide_autotoc_md19}
The program called \char`\"{}doxygen\char`\"{} (\href{https://github.com/doxygen/doxygen}{\texttt{ Git\+Hub Page}} and \href{https://www.doxygen.nl/}{\texttt{ Website}}) is what we\textquotesingle{}re using to document our project and try to make things a bit simpler/easier not only for us, but also future projects or people looking at what we\textquotesingle{}ve done.
It simply uses a small configuration file at the root of the project {\ttfamily /\+Doxyfile} to store some settings, and the rest is through mainly Markdown files ({\ttfamily .md} or {\ttfamily .markdown}) and source code files.
It is setup (as of writing this) that someone can simply open the {\ttfamily /\+Doxyfile} in the GUI Wizard, click on the \char`\"{}\+Run\char`\"{} tab, then \char`\"{}\+Run doxygen\char`\"{}, and everything will be updated... that\textquotesingle{}s it.\hypertarget{documentation_guide_autotoc_md19}{}\doxysection{Updating Documentation}\label{documentation_guide_autotoc_md19}
You need to have installed the program from either the Git\+Hub page or website, then simply open the {\ttfamily /\+Doxyfile} within the GUI frontend or \char`\"{}\+Wizard\char`\"{}.\hypertarget{documentation_guide_autotoc_md20}{}\doxysection{Important Notes}\label{documentation_guide_autotoc_md20}
It is setup (as of writing this) that someone can simply open the {\ttfamily /\+Doxyfile} in the GUI Wizard, click on the \char`\"{}\+Run\char`\"{} tab, then \char`\"{}\+Run doxygen\char`\"{}, and everything will be updated... that\textquotesingle{}s it.\hypertarget{documentation_guide_autotoc_md20}{}\doxysection{Updating Documentation}\label{documentation_guide_autotoc_md20}
You need to have installed the program from either the Git\+Hub page or website, then simply open the {\ttfamily /\+Doxyfile} within the GUI frontend or \char`\"{}\+Wizard\char`\"{}.\hypertarget{documentation_guide_autotoc_md21}{}\doxysection{Important Notes}\label{documentation_guide_autotoc_md21}
\begin{DoxyItemize}
\item Make sure that the {\ttfamily /\+Doxyfile} stays where it\textquotesingle{}s at! It should be kept at the root directory (just to keep things simple)
\item Make sure you use RELATIVE paths when changing configurations, or else when someone else tries running the {\ttfamily /\+Doxyfile}, they\textquotesingle{}ll have to re-\/do all of them in order for it to start functioning again.
\item {\bfseries{DO NOT}} put any files into the {\ttfamily /\+Documentation} folder manually, as they {\bfseries{WILL BE DELETED}} when doxygen is run.
\end{DoxyItemize}\hypertarget{documentation_guide_autotoc_md21}{}\doxysubsection{For Consistency}\label{documentation_guide_autotoc_md21}
\end{DoxyItemize}\hypertarget{documentation_guide_autotoc_md22}{}\doxysubsection{For Consistency}\label{documentation_guide_autotoc_md22}
\begin{DoxyItemize}
\item Please make sure the internal names (\char`\"{}tags\char`\"{}) of files are using \char`\"{}camel\+Case\char`\"{}
\begin{DoxyItemize}
\item Example\+: for \char`\"{}@page documentation\+Guide Documentation Guide\char`\"{} \char`\"{}documentation\+Guide\char`\"{} is the name/tag used internally by doxygen. \char`\"{}\+Documentation Guide\char`\"{} is what shows up on the output documentation.
\item Example\+: for \char`\"{}@page documentation\+Guide Documentation Guide\char`\"{} \char`\"{}documentation\+Guide\char`\"{} is the name/tag used internally by doxygen. \char`\"{}\+Documentation Guide\char`\"{} is what shows up on the output documentation.
\end{DoxyItemize}
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{documentation_guide_autotoc_md23}{}\doxysubsection{Adding Images}\label{documentation_guide_autotoc_md23}
Use this pattern/format\+:
\begin{DoxyCode}{0}
\DoxyCodeLine{@image html "{}Documentation Guide.assets/Funny-\/Cat-\/Hidden.jpg"{}}
\DoxyCodeLine{@cond EXCLUDED}
\DoxyCodeLine{![img](Documentation Guide.assets/Funny-\/Cat-\/Hidden.jpg)}
\DoxyCodeLine{@endcond}
\end{DoxyCode}
Which will output a single image that is both easily viewable in Doxygen, as well as Markdown viewers/editors.

View File

@@ -2,8 +2,8 @@
\begin{DoxyItemize}
\item \mbox{\hyperlink{designChoices}{Design Choices}}
\item \mbox{\hyperlink{deviceSpecifications}{Device Specifications}}
\item \mbox{\hyperlink{layoutPlanning}{Layout Planning}}
\end{DoxyItemize}
\DoxyHorRuler{0}
@@ -20,8 +20,51 @@
\item Avoid running PCB traces underneath or adjacent to the XIN and XOUT pins.
\end{DoxyItemize}
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{deviceSpecifications}{}\doxysection{Device Specifications}\label{deviceSpecifications}
\hypertarget{device_specifications_autotoc_md2}{}\doxysubsubsection{Microcontroller\+: Texas Instruments MSP430\+F5438\+AIPZR}\label{device_specifications_autotoc_md2}
\end{DoxyItemize}\hypertarget{designChoices}{}\doxysection{Design Choices}\label{designChoices}
\hypertarget{design_choices_autotoc_md2}{}\doxysubsection{JTAG Interface}\label{design_choices_autotoc_md2}
When connecting the MCU to the programmer via the JTAG interface, it is possible for a local power supply connected to the MCU to be used or for power from the debugging/programming adapter to be used. Since having power supplied to the MCU from the debugging/programming adapter can be useful for use outside of the Sunseeker vehicle, we chose to use that.\hypertarget{design_choices_autotoc_md3}{}\doxysubsection{Microcontroller Peripheral Connections}\label{design_choices_autotoc_md3}
Universal Serial Communication Interfaces (USCIs)\+:
\begin{DoxyItemize}
\item A -\/ Supporting up to four total of UART and/or SPI
\begin{DoxyItemize}
\item A0 \mbox{[}SPI\mbox{]}\+:
\begin{DoxyItemize}
\item CANbus Controller 0 (Microchip Technology MCP2515\+T-\/\+I/\+SO)
\item CANbus Controller 1 (Microchip Technology MCP2515\+T-\/\+I/\+SO)
\end{DoxyItemize}
\item A1\+:
\item A2 \mbox{[}UART\mbox{]}\+:
\begin{DoxyItemize}
\item RS-\/232 Transceiver (STMicroelectronics ST232\+CDR)
\end{DoxyItemize}
\item A3 \mbox{[}UART\mbox{]}\+:
\begin{DoxyItemize}
\item USB to UART Bridge (Future Technology Devices International FT230\+XS-\/R)
\end{DoxyItemize}
\end{DoxyItemize}
\item B -\/ Supporting up to four total of I2C and/or SPI
\begin{DoxyItemize}
\item B0 \mbox{[}SPI\mbox{]}\+:
\begin{DoxyItemize}
\item SD Card
\item GPS Receiver (Maxim Integrated \+MAX2771\+ETI+T)
\end{DoxyItemize}
\item B1 \mbox{[}SPI\mbox{]}\+:
\begin{DoxyItemize}
\item Bluetooth/\+Wi-\/\+Fi (Espressif Systems ESP32-\/\+WROVER-\/\+IE (8MB))
\end{DoxyItemize}
\item B2 \mbox{[}I2C\mbox{]}\+:
\begin{DoxyItemize}
\item Inertial Measurement Unit (TDK Inven\+Sense ICM-\/20600)
\item Real-\/\+Time Clock/\+Calendar (Microchip Technology \+MCP7940\+MT-\/\+I/\+SN)
\end{DoxyItemize}
\end{DoxyItemize}
\end{DoxyItemize}
The thinking behind this so far, is to try and balance the load between the modules with SPI protocol being used in more high data-\/rate peripherals and I2C used with lower or less-\/used peripherals. \hypertarget{deviceSpecifications}{}\doxysection{Device Specifications}\label{deviceSpecifications}
\hypertarget{device_specifications_autotoc_md4}{}\doxysubsubsection{Microcontroller\+: Texas Instruments MSP430\+F5438\+AIPZR}\label{device_specifications_autotoc_md4}
\begin{DoxyItemize}
\item 1.\+8 V to 3.\+6 V Supply Voltage
@@ -45,7 +88,7 @@
\item 14 external channels
\end{DoxyItemize}
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md3}{}\doxysubsubsection{Real-\/\+Time Clock/\+Calendar\+: Microchip Technology \+MCP7940\+MT-\/\+I/\+SN}\label{device_specifications_autotoc_md3}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md5}{}\doxysubsubsection{Real-\/\+Time Clock/\+Calendar\+: Microchip Technology \+MCP7940\+MT-\/\+I/\+SN}\label{device_specifications_autotoc_md5}
\begin{DoxyItemize}
\item 1.\+8 V to 5.\+5 V Supply Voltage
@@ -53,28 +96,48 @@
\begin{DoxyItemize}
\item I2C
\begin{DoxyItemize}
\item Slave only
\item Clock rate up to 400 k\+Hz
\end{DoxyItemize}
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md4}{}\doxysubsubsection{Bluetooth/\+Wi-\/\+Fi\+: Espressif Systems ESP32-\/\+WROVER-\/\+IE (8\+MB)}\label{device_specifications_autotoc_md4}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md6}{}\doxysubsubsection{Bluetooth/\+Wi-\/\+Fi\+: Espressif Systems ESP32-\/\+WROVER-\/\+IE (8\+MB)}\label{device_specifications_autotoc_md6}
\begin{DoxyItemize}
\item 3.\+0 V to 3.\+6 V Supply Voltage
\item Notable Peripherals\+:
\begin{DoxyItemize}
\item I2C
\item SPI
\item UART
\item I2C (2)
\begin{DoxyItemize}
\item Master or Slave
\item 100 kbit/s or 400 kbit/s
\item 7-\/bit/10-\/bit addressing mode
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md5}{}\doxysubsubsection{GPS Receiver\+: Maxim Integrated \+MAX2771\+ETI+T}\label{device_specifications_autotoc_md5}
\item SPI
\begin{DoxyItemize}
\item SPI, HSPI and VSPI
\item Master or Slave
\item 1-\/line full-\/duplex and 1/2/4-\/line half-\/duplex
\item Up to 80 MHz
\item Up to 64-\/byte FIFO
\end{DoxyItemize}
\item UART (3)
\begin{DoxyItemize}
\item Up to 5 Mbps
\end{DoxyItemize}
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md7}{}\doxysubsubsection{GPS Receiver\+: Maxim Integrated \+MAX2771\+ETI+T}\label{device_specifications_autotoc_md7}
\begin{DoxyItemize}
\item 2.\+7 V to 3.\+3 V Supply Voltage
\item Notable Peripherals\+:
\begin{DoxyItemize}
\item SPI
\begin{DoxyItemize}
\item Slave only
\item Need to calculate frequency
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md6}{}\doxysubsubsection{CANbus Controller\+: Microchip Technology MCP2515\+T-\/\+I/\+SO}\label{device_specifications_autotoc_md6}
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md8}{}\doxysubsubsection{CANbus Controller\+: Microchip Technology MCP2515\+T-\/\+I/\+SO}\label{device_specifications_autotoc_md8}
\begin{DoxyItemize}
\item 2.\+7 V to 5.\+5 V Supply Voltage
@@ -82,15 +145,16 @@
\begin{DoxyItemize}
\item SPI
\begin{DoxyItemize}
\item Slave (Assuming only option)
\item 10 MHz
\end{DoxyItemize}
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md7}{}\doxysubsubsection{CAN Bus Transceiver\+: \+Microchip Technology MCP2542\+FD-\/\+H/\+SN}\label{device_specifications_autotoc_md7}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md9}{}\doxysubsubsection{CANbus Transceiver\+: \+Microchip Technology MCP2542\+FD-\/\+H/\+SN}\label{device_specifications_autotoc_md9}
\begin{DoxyItemize}
\item 4.\+5 V to 5.\+5 V Supply Voltage
\item Used directly with CANbus Controller
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md8}{}\doxysubsubsection{SD Card (\+Generic)}\label{device_specifications_autotoc_md8}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md10}{}\doxysubsubsection{SD Card (\+Generic)}\label{device_specifications_autotoc_md10}
\begin{DoxyItemize}
\item 2.\+7 V to 3.\+6 V Supply Voltage
@@ -98,12 +162,20 @@
\begin{DoxyItemize}
\item SPI
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md9}{}\doxysubsubsection{USB to UART Bridge\+: FTDI \+FT260\+Q-\/T}\label{device_specifications_autotoc_md9}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md11}{}\doxysubsubsection{USB to UART Bridge\+: Future Technology Devices International FT230\+XS-\/R}\label{device_specifications_autotoc_md11}
\begin{DoxyItemize}
\item We will use a \char`\"{}\+Bus-\/\+Powered Configuration\char`\"{}, requiring the host device to supply power, that way we don\textquotesingle{}t have to.
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md10}{}\doxysubsubsection{RS-\/232 Transceiver\+: Texas Instruments GD75232\+PWR}\label{device_specifications_autotoc_md10}
\hypertarget{device_specifications_autotoc_md11}{}\doxysubsubsection{Inertial Measurement Unit\+: TDK Inven\+Sense ICM-\/20600}\label{device_specifications_autotoc_md11}
\item 3 V to 5 V Supply Voltage
\item Notable Peripherals\+:
\begin{DoxyItemize}
\item UART
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md12}{}\doxysubsubsection{RS-\/232 Transceiver\+: STMicroelectronics ST232\+CDR}\label{device_specifications_autotoc_md12}
\begin{DoxyItemize}
\item 4.\+5 V to 5.\+5 V Supply Voltage
\item Will use UART from the MCU
\end{DoxyItemize}\hypertarget{device_specifications_autotoc_md13}{}\doxysubsubsection{Inertial Measurement Unit\+: TDK Inven\+Sense ICM-\/20600}\label{device_specifications_autotoc_md13}
\begin{DoxyItemize}
\item 1.\+71 V to 3.\+45 V Supply Voltage
@@ -111,12 +183,13 @@
\begin{DoxyItemize}
\item I2C
\begin{DoxyItemize}
\item Slave only
\item 400 k\+Hz
\end{DoxyItemize}
\item SPI
\begin{DoxyItemize}
\item Slave only
\item 10 MHz
\end{DoxyItemize}
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{layoutPlanning}{}\doxysection{Layout Planning}\label{layoutPlanning}
\hypertarget{layout_planning_autotoc_md12}{}\doxysubsubsection{Microcontroller}\label{layout_planning_autotoc_md12}
\end{DoxyItemize}

View File

@@ -1,12 +1,3 @@
{\bfseries{Subpages}}
\begin{DoxyItemize}
\item \mbox{\hyperlink{hardware}{Hardware}}
\item \mbox{\hyperlink{software}{Software}}
\end{DoxyItemize}
\DoxyHorRuler{0}
\hypertarget{index_autotoc_md14}{}\doxysection{About}\label{index_autotoc_md14}
What this project is about (TODO)\hypertarget{index_autotoc_md15}{}\doxysection{Documentation}\label{index_autotoc_md15}
For Documentation, we will use \char`\"{}doxygen\char`\"{} to easily create documentation pages for the project. This will be accessible in a variety of means, but primarily through HTML pages accessible through a browser, covering all aspects of the project.
@@ -28,10 +19,19 @@ More information here\+: \mbox{\hyperlink{documentation_guide}{Documentation Gui
\item Document things as we go
\item Need to make sure we have a BOM
\item Free samples for parts from manufacturers
\item Make peripherals like output on one side and inputs on the other
\item Use SPI Chip Select as a separate command (Use 3-\/pin SPI and then just use GPIO for Chip Select)
\end{DoxyItemize}\hypertarget{index_autotoc_md17}{}\doxysubsection{Tips from Dr. Gomez}\label{index_autotoc_md17}
\begin{DoxyItemize}
\item Our requirements/specifications should be made to be more measurable
\item Need to design to safety standards, which need to be researched online
\item He said that he is available himself for anything power-\/related to help out with if needed
\item He said that he is available himself for anything power-\/related to help out with if needed
\end{DoxyItemize}\hypertarget{index_autotoc_md18}{}\doxysection{TODO List}\label{index_autotoc_md18}
\begin{DoxyItemize}
\item \mbox{[} \mbox{]} Make battery circuitry for Real-\/\+Time Clock/\+Calendar for when the vehicle is off.
\item \mbox{[} \mbox{]} Ensure the footprint for CANbus Transceiver is present, since it\textquotesingle{}s not available in Altium by default, and the import from Ultra Librarian seemed to only successfully add the schematic and 3D Model, but wasn\textquotesingle{}t sure about footprint.
\item \mbox{[} \mbox{]} The CANbus Controller required a resonator/oscillator and capacitor pair to be picked, but non-\/optimized values were given and so we need to test which resonator/oscillator and capacitor pair works best.
\item \mbox{[} \mbox{]} Need to look through Sunseeker documentation to learn how they have their CANbus setup, ensuring we have our controller and transceiver setup correctly.
\end{DoxyItemize}

View File

@@ -171,7 +171,7 @@
\hypersetup{pageanchor=true}
%--- Begin generated contents ---
\chapter{Main Page}
\chapter{Home}
\label{index}\hypertarget{index}{}\input{index}
\chapter{Hardware}
\label{hardware}
@@ -185,19 +185,14 @@
\label{documentation_guide}
\Hypertarget{documentation_guide}
\input{documentation_guide}
\chapter{References}
\label{references}
\Hypertarget{references}
\input{references}
\chapter{File Index}
\input{files}
\chapter{File Documentation}
\input{_9_hardware_8markdown}
\input{_design_01_choices_8markdown}
\input{_device_01_specifications_8markdown}
\input{_layout_01_planning_8markdown}
\input{_documentation_01_guide_8markdown}
\input{_r_e_a_d_m_e_8markdown}
\input{_9_references_8markdown}
\input{_9_software_8markdown}
\input{main_8c}
%--- End generated contents ---