From 8d69e473b5bcc7e0e402d9af2a6c06b9b1e5b738 Mon Sep 17 00:00:00 2001 From: William Miceli Date: Tue, 2 Feb 2021 00:51:29 -0500 Subject: [PATCH] Updated Docs --- Documentation/html/_9_hardware_8markdown.html | 2 +- Documentation/html/_9_software_8markdown.html | 2 +- .../html/_design_01_choices_8markdown.html | 98 ++++++++++++ .../_device_01_specifications_8markdown.html | 2 +- .../_documentation_01_guide_8markdown.html | 2 +- .../html/_r_e_a_d_m_e_8markdown.html | 2 +- Documentation/html/design_choices.html | 142 ++++++++++++++++++ Documentation/html/device_specifications.html | 95 ++++++++---- .../dir_4e9c05acfa2c3671b8618fcb95d57d96.html | 2 +- .../dir_6cc751a9e685a986d41d35de353de328.html | 2 +- .../dir_6cc751a9e685a986d41d35de353de328.js | 21 ++- .../dir_70428d3c5958c16802133545478a5cfb.html | 2 +- .../dir_7795a02a4813dcd036f04e5f7854f185.html | 2 +- .../dir_ef94255a62432ae865475b379d8bd501.html | 2 +- Documentation/html/documentation_guide.html | 10 +- Documentation/html/files.html | 11 +- Documentation/html/files_dup.js | 1 - Documentation/html/globals.html | 2 +- Documentation/html/globals_func.html | 2 +- Documentation/html/hardware.html | 4 +- Documentation/html/hardware.js | 7 +- Documentation/html/index.html | 20 ++- Documentation/html/main_8c.html | 2 +- Documentation/html/main_8c_source.html | 2 +- Documentation/html/navtreedata.js | 22 ++- Documentation/html/navtreeindex0.js | 67 ++++----- Documentation/html/pages.html | 3 +- Documentation/html/search/all_0.js | 3 +- Documentation/html/search/all_1.js | 10 +- Documentation/html/search/all_2.js | 2 +- Documentation/html/search/all_3.js | 4 +- Documentation/html/search/all_4.js | 3 +- Documentation/html/search/all_5.js | 3 +- Documentation/html/search/files_0.js | 5 +- Documentation/html/search/files_1.js | 5 +- Documentation/html/search/files_2.js | 2 +- Documentation/html/search/files_3.js | 2 +- Documentation/html/search/functions_0.js | 2 +- Documentation/html/search/pages_0.js | 5 +- Documentation/html/search/pages_1.js | 2 +- Documentation/html/search/pages_2.js | 2 +- Documentation/html/search/searchdata.js | 6 +- Documentation/html/software.html | 2 +- .../latex/_design_01_choices_8markdown.tex | 2 + Documentation/latex/documentation_guide.tex | 8 +- Documentation/latex/hardware.tex | 109 +++++++++++--- Documentation/latex/index.tex | 17 ++- Documentation/latex/refman.tex | 7 +- 48 files changed, 541 insertions(+), 189 deletions(-) create mode 100644 Documentation/html/_design_01_choices_8markdown.html create mode 100644 Documentation/html/design_choices.html create mode 100644 Documentation/latex/_design_01_choices_8markdown.tex diff --git a/Documentation/html/_9_hardware_8markdown.html b/Documentation/html/_9_hardware_8markdown.html index 800fb6b..99ad8d4 100644 --- a/Documentation/html/_9_hardware_8markdown.html +++ b/Documentation/html/_9_hardware_8markdown.html @@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('_9_hardware_8markdown.html',''); initR diff --git a/Documentation/html/_9_software_8markdown.html b/Documentation/html/_9_software_8markdown.html index 69c52c8..f7ff269 100644 --- a/Documentation/html/_9_software_8markdown.html +++ b/Documentation/html/_9_software_8markdown.html @@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('_9_software_8markdown.html',''); initR diff --git a/Documentation/html/_design_01_choices_8markdown.html b/Documentation/html/_design_01_choices_8markdown.html new file mode 100644 index 0000000..c5c068e --- /dev/null +++ b/Documentation/html/_design_01_choices_8markdown.html @@ -0,0 +1,98 @@ + + + + + + + +2020-2021 Sunseeker Telemetry and Lighting System: Hardware/Design Choices.markdown File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
2020-2021 Sunseeker Telemetry and Lighting System +
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Hardware/Design Choices.markdown File Reference
+
+
+
+
+ + + + diff --git a/Documentation/html/_device_01_specifications_8markdown.html b/Documentation/html/_device_01_specifications_8markdown.html index 7ced232..966cb24 100644 --- a/Documentation/html/_device_01_specifications_8markdown.html +++ b/Documentation/html/_device_01_specifications_8markdown.html @@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('_device_01_specifications_8markdown.ht diff --git a/Documentation/html/_documentation_01_guide_8markdown.html b/Documentation/html/_documentation_01_guide_8markdown.html index 49cb275..f37309a 100644 --- a/Documentation/html/_documentation_01_guide_8markdown.html +++ b/Documentation/html/_documentation_01_guide_8markdown.html @@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('_documentation_01_guide_8markdown.html diff --git a/Documentation/html/_r_e_a_d_m_e_8markdown.html b/Documentation/html/_r_e_a_d_m_e_8markdown.html index 32d262a..495918b 100644 --- a/Documentation/html/_r_e_a_d_m_e_8markdown.html +++ b/Documentation/html/_r_e_a_d_m_e_8markdown.html @@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('_r_e_a_d_m_e_8markdown.html',''); init diff --git a/Documentation/html/design_choices.html b/Documentation/html/design_choices.html new file mode 100644 index 0000000..c0b9abb --- /dev/null +++ b/Documentation/html/design_choices.html @@ -0,0 +1,142 @@ + + + + + + + +2020-2021 Sunseeker Telemetry and Lighting System: Design Choices + + + + + + + + + + + + + +
+
+ + + + + + +
+
2020-2021 Sunseeker Telemetry and Lighting System +
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Design Choices
+
+
+

+JTAG Interface

+

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.

+

+Microcontroller Peripheral Connections

+

Universal Serial Communication Interfaces (USCIs):

+
    +
  • A - Supporting up to four total of UART and/or SPI
      +
    • A0 [SPI]:
        +
      • CANbus Controller 0 (Microchip Technology MCP2515T-I/SO)
      • +
      • CANbus Controller 1 (Microchip Technology MCP2515T-I/SO)
      • +
      +
    • +
    • A1:
    • +
    • A2 [UART]:
        +
      • RS-232 Transceiver (STMicroelectronics ST232CDR)
      • +
      +
    • +
    • A3 [UART]:
        +
      • USB to UART Bridge (Future Technology Devices International FT230XS-R)
      • +
      +
    • +
    +
  • +
  • B - Supporting up to four total of I2C and/or SPI
      +
    • B0 [SPI]:
        +
      • SD Card
      • +
      • GPS Receiver (Maxim Integrated ‎MAX2771ETI+T)
      • +
      +
    • +
    • B1 [SPI]:
        +
      • Bluetooth/Wi-Fi (Espressif Systems ESP32-WROVER-IE (8MB))
      • +
      +
    • +
    • B2 [I2C]:
        +
      • Inertial Measurement Unit (TDK InvenSense ICM-20600)
      • +
      • Real-Time Clock/Calendar (Microchip Technology ‎MCP7940MT-I/SN)
      • +
      +
    • +
    +
  • +
+

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.

+
+
+
+ + + + diff --git a/Documentation/html/device_specifications.html b/Documentation/html/device_specifications.html index 584957d..3f6c86e 100644 --- a/Documentation/html/device_specifications.html +++ b/Documentation/html/device_specifications.html @@ -85,7 +85,7 @@ $(document).ready(function(){initNavTree('device_specifications.html',''); initR
Device Specifications
-

+

Microcontroller: Texas Instruments MSP430F5438AIPZR

  • 1.8 V to 3.6 V Supply Voltage
  • @@ -110,57 +110,78 @@ Microcontroller: Texas Instruments MSP430F5438AIPZR

-

+

Real-Time Clock/Calendar: Microchip Technology ‎MCP7940MT-I/SN

  • 1.8 V to 5.5 V Supply Voltage
  • Notable Peripherals:
    • I2C
        +
      • Slave only
      • Clock rate up to 400 kHz
-

+

Bluetooth/Wi-Fi: Espressif Systems ESP32-WROVER-IE (8MB)

  • 3.0 V to 3.6 V Supply Voltage
  • Notable Peripherals:
      -
    • I2C
    • -
    • SPI
    • -
    • UART
    • +
    • I2C (2)
        +
      • Master or Slave
      • +
      • 100 kbit/s or 400 kbit/s
      • +
      • 7-bit/10-bit addressing mode
    • -
    -

    -GPS Receiver: Maxim Integrated ‎MAX2771ETI+T

    -
      -
    • 2.7 V to 3.3 V Supply Voltage
    • -
    • Notable Peripherals:
        -
      • SPI
      • -
      -
    • -
    -

    -CANbus Controller: Microchip Technology MCP2515T-I/SO

    -
      -
    • 2.7 V to 5.5 V Supply Voltage
    • -
    • Notable Peripherals:
      • SPI
          -
        • 10 MHz
        • +
        • SPI, HSPI and VSPI
        • +
        • Master or Slave
        • +
        • 1-line full-duplex and 1/2/4-line half-duplex
        • +
        • Up to 80 MHz
        • +
        • Up to 64-byte FIFO
        • +
        +
      • +
      • UART (3)
          +
        • Up to 5 Mbps

    -CAN Bus Transceiver: ‎Microchip Technology MCP2542FD-H/SN

    +GPS Receiver: Maxim Integrated ‎MAX2771ETI+T +
      +
    • 2.7 V to 3.3 V Supply Voltage
    • +
    • Notable Peripherals:
        +
      • SPI
          +
        • Slave only
        • +
        • Need to calculate frequency
        • +
        +
      • +
      +
    • +
    +

    +CANbus Controller: Microchip Technology MCP2515T-I/SO

    +
      +
    • 2.7 V to 5.5 V Supply Voltage
    • +
    • Notable Peripherals:
        +
      • SPI
          +
        • Slave (Assuming only option)
        • +
        • 10 MHz
        • +
        +
      • +
      +
    • +
    +

    +CANbus Transceiver: ‎Microchip Technology MCP2542FD-H/SN

    • 4.5 V to 5.5 V Supply Voltage
    • Used directly with CANbus Controller
    -

    +

    SD Card (Generic)

    • 2.7 V to 3.6 V Supply Voltage
    • @@ -169,23 +190,33 @@ SD Card (Generic)
-

-USB to UART Bridge: FTDI ‎‎FT260Q-T

-
    -
  • We will use a "Bus-Powered Configuration", requiring the host device to supply power, that way we don't have to.
  • -
-

-RS-232 Transceiver: Texas Instruments GD75232PWR

+USB to UART Bridge: Future Technology Devices International FT230XS-R

+
    +
  • 3 V to 5 V Supply Voltage
  • +
  • Notable Peripherals:
      +
    • UART
    • +
    +
  • +
+

+RS-232 Transceiver: STMicroelectronics ST232CDR

+
    +
  • 4.5 V to 5.5 V Supply Voltage
  • +
  • Will use UART from the MCU
  • +
+

Inertial Measurement Unit: TDK InvenSense ICM-20600

  • 1.71 V to 3.45 V Supply Voltage
  • Notable Peripherals:
    • I2C
        +
      • Slave only
      • 400 kHz
    • SPI
        +
      • Slave only
      • 10 MHz
    • @@ -199,7 +230,7 @@ Inertial Measurement Unit: TDK InvenSense ICM-20600 diff --git a/Documentation/html/dir_4e9c05acfa2c3671b8618fcb95d57d96.html b/Documentation/html/dir_4e9c05acfa2c3671b8618fcb95d57d96.html index ecfbf13..6dfa892 100644 --- a/Documentation/html/dir_4e9c05acfa2c3671b8618fcb95d57d96.html +++ b/Documentation/html/dir_4e9c05acfa2c3671b8618fcb95d57d96.html @@ -97,7 +97,7 @@ Directories diff --git a/Documentation/html/dir_6cc751a9e685a986d41d35de353de328.html b/Documentation/html/dir_6cc751a9e685a986d41d35de353de328.html index 7e44cc2..dcb0c53 100644 --- a/Documentation/html/dir_6cc751a9e685a986d41d35de353de328.html +++ b/Documentation/html/dir_6cc751a9e685a986d41d35de353de328.html @@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('dir_6cc751a9e685a986d41d35de353de328.h diff --git a/Documentation/html/dir_6cc751a9e685a986d41d35de353de328.js b/Documentation/html/dir_6cc751a9e685a986d41d35de353de328.js index 4ae6145..4bab62b 100644 --- a/Documentation/html/dir_6cc751a9e685a986d41d35de353de328.js +++ b/Documentation/html/dir_6cc751a9e685a986d41d35de353de328.js @@ -1,14 +1,13 @@ var dir_6cc751a9e685a986d41d35de353de328 = [ - [ "Microcontroller: Texas Instruments MSP430F5438AIPZR", "device_specifications.html#autotoc_md2", null ], - [ "Real-Time Clock/Calendar: Microchip Technology ‎MCP7940MT-I/SN", "device_specifications.html#autotoc_md3", null ], - [ "Bluetooth/Wi-Fi: Espressif Systems ESP32-WROVER-IE (8MB)", "device_specifications.html#autotoc_md4", null ], - [ "GPS Receiver: Maxim Integrated ‎MAX2771ETI+T", "device_specifications.html#autotoc_md5", null ], - [ "CANbus Controller: Microchip Technology MCP2515T-I/SO", "device_specifications.html#autotoc_md6", null ], - [ "CAN Bus Transceiver: ‎Microchip Technology MCP2542FD-H/SN", "device_specifications.html#autotoc_md7", null ], - [ "SD Card (Generic)", "device_specifications.html#autotoc_md8", null ], - [ "USB to UART Bridge: FTDI ‎‎FT260Q-T", "device_specifications.html#autotoc_md9", null ], - [ "RS-232 Transceiver: Texas Instruments GD75232PWR", "device_specifications.html#autotoc_md10", null ], - [ "Inertial Measurement Unit: TDK InvenSense ICM-20600", "device_specifications.html#autotoc_md11", null ], - [ "Microcontroller", "layout_planning.html#autotoc_md12", null ] + [ "Microcontroller: Texas Instruments MSP430F5438AIPZR", "device_specifications.html#autotoc_md4", null ], + [ "Real-Time Clock/Calendar: Microchip Technology ‎MCP7940MT-I/SN", "device_specifications.html#autotoc_md5", null ], + [ "Bluetooth/Wi-Fi: Espressif Systems ESP32-WROVER-IE (8MB)", "device_specifications.html#autotoc_md6", null ], + [ "GPS Receiver: Maxim Integrated ‎MAX2771ETI+T", "device_specifications.html#autotoc_md7", null ], + [ "CANbus Controller: Microchip Technology MCP2515T-I/SO", "device_specifications.html#autotoc_md8", null ], + [ "CANbus Transceiver: ‎Microchip Technology MCP2542FD-H/SN", "device_specifications.html#autotoc_md9", null ], + [ "SD Card (Generic)", "device_specifications.html#autotoc_md10", null ], + [ "USB to UART Bridge: Future Technology Devices International FT230XS-R", "device_specifications.html#autotoc_md11", null ], + [ "RS-232 Transceiver: STMicroelectronics ST232CDR", "device_specifications.html#autotoc_md12", null ], + [ "Inertial Measurement Unit: TDK InvenSense ICM-20600", "device_specifications.html#autotoc_md13", null ] ]; \ No newline at end of file diff --git a/Documentation/html/dir_70428d3c5958c16802133545478a5cfb.html b/Documentation/html/dir_70428d3c5958c16802133545478a5cfb.html index 058531c..f494f4f 100644 --- a/Documentation/html/dir_70428d3c5958c16802133545478a5cfb.html +++ b/Documentation/html/dir_70428d3c5958c16802133545478a5cfb.html @@ -97,7 +97,7 @@ Directories diff --git a/Documentation/html/dir_7795a02a4813dcd036f04e5f7854f185.html b/Documentation/html/dir_7795a02a4813dcd036f04e5f7854f185.html index 20b97bd..6f4c2ec 100644 --- a/Documentation/html/dir_7795a02a4813dcd036f04e5f7854f185.html +++ b/Documentation/html/dir_7795a02a4813dcd036f04e5f7854f185.html @@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('dir_7795a02a4813dcd036f04e5f7854f185.h diff --git a/Documentation/html/dir_ef94255a62432ae865475b379d8bd501.html b/Documentation/html/dir_ef94255a62432ae865475b379d8bd501.html index f5b03b3..b3043de 100644 --- a/Documentation/html/dir_ef94255a62432ae865475b379d8bd501.html +++ b/Documentation/html/dir_ef94255a62432ae865475b379d8bd501.html @@ -97,7 +97,7 @@ Files diff --git a/Documentation/html/documentation_guide.html b/Documentation/html/documentation_guide.html index 3627539..6b0c6d4 100644 --- a/Documentation/html/documentation_guide.html +++ b/Documentation/html/documentation_guide.html @@ -85,22 +85,22 @@ $(document).ready(function(){initNavTree('documentation_guide.html',''); initRes
      Documentation Guide
-

+

Doxygen

The program called "doxygen" (GitHub Page and Website) is what we'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've done.

It simply uses a small configuration file at the root of the project /Doxyfile to store some settings, and the rest is through mainly Markdown files (.md or .markdown) and source code files.

It is setup (as of writing this) that someone can simply open the /Doxyfile in the GUI Wizard, click on the "Run" tab, then "Run doxygen", and everything will be updated... that's it.

-

+

Updating Documentation

You need to have installed the program from either the GitHub page or website, then simply open the /Doxyfile within the GUI frontend or "Wizard".

-

+

Important Notes

  • Make sure that the /Doxyfile stays where it's at! It should be kept at the root directory (just to keep things simple)
  • Make sure you use RELATIVE paths when changing configurations, or else when someone else tries running the /Doxyfile, they'll have to re-do all of them in order for it to start functioning again.
  • DO NOT put any files into the /Documentation folder manually, as they WILL BE DELETED when doxygen is run.
-

+

For Consistency

  • Please make sure the internal names ("tags") of files are using "camelCase"
      @@ -114,7 +114,7 @@ For Consistency

diff --git a/Documentation/html/files.html b/Documentation/html/files.html index a5966f2..951a832 100644 --- a/Documentation/html/files.html +++ b/Documentation/html/files.html @@ -89,11 +89,10 @@ $(document).ready(function(){initNavTree('files.html',''); initResizable(); });
[detail level 1234]
- - - - - + + + +
 Hardware
 Meta
 References
  Software
  Code Composer Studio Workspace
  SunseekerTelemetryAndLightingSystem
 main.c
  Software
  Code Composer Studio Workspace
  SunseekerTelemetryAndLightingSystem
 main.c
@@ -101,7 +100,7 @@ $(document).ready(function(){initNavTree('files.html',''); initResizable(); }); diff --git a/Documentation/html/files_dup.js b/Documentation/html/files_dup.js index a26e788..5b0d271 100644 --- a/Documentation/html/files_dup.js +++ b/Documentation/html/files_dup.js @@ -2,6 +2,5 @@ var files_dup = [ [ "Hardware", "dir_6cc751a9e685a986d41d35de353de328.html", "dir_6cc751a9e685a986d41d35de353de328" ], [ "Meta", "dir_7795a02a4813dcd036f04e5f7854f185.html", null ], - [ "References", "dir_465c8a410b787ccece2cc89dfe6b85b1.html", null ], [ "Software", "dir_4e9c05acfa2c3671b8618fcb95d57d96.html", "dir_4e9c05acfa2c3671b8618fcb95d57d96" ] ]; \ No newline at end of file diff --git a/Documentation/html/globals.html b/Documentation/html/globals.html index b12f78a..39efbb6 100644 --- a/Documentation/html/globals.html +++ b/Documentation/html/globals.html @@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('globals.html',''); initResizable(); }) diff --git a/Documentation/html/globals_func.html b/Documentation/html/globals_func.html index b956ce7..7aea696 100644 --- a/Documentation/html/globals_func.html +++ b/Documentation/html/globals_func.html @@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('globals_func.html',''); initResizable( diff --git a/Documentation/html/hardware.html b/Documentation/html/hardware.html index 25ccb8a..e94a4e0 100644 --- a/Documentation/html/hardware.html +++ b/Documentation/html/hardware.html @@ -87,8 +87,8 @@ $(document).ready(function(){initNavTree('hardware.html',''); initResizable(); }

Subpages


@@ -112,7 +112,7 @@ Design Reminders

diff --git a/Documentation/html/hardware.js b/Documentation/html/hardware.js index 01726fc..409ea2b 100644 --- a/Documentation/html/hardware.js +++ b/Documentation/html/hardware.js @@ -1,6 +1,9 @@ var hardware = [ [ "Design Reminders", "hardware.html#autotoc_md1", null ], - [ "Device Specifications", "device_specifications.html", null ], - [ "Layout Planning", "layout_planning.html", null ] + [ "Design Choices", "design_choices.html", [ + [ "JTAG Interface", "design_choices.html#autotoc_md2", null ], + [ "Microcontroller Peripheral Connections", "design_choices.html#autotoc_md3", null ] + ] ], + [ "Device Specifications", "device_specifications.html", null ] ]; \ No newline at end of file diff --git a/Documentation/html/index.html b/Documentation/html/index.html index bb3f534..52d4ca9 100644 --- a/Documentation/html/index.html +++ b/Documentation/html/index.html @@ -91,14 +91,14 @@ $(document).ready(function(){initNavTree('index.html',''); initResizable(); });
  • Software

  • -

    +

    About

    What this project is about (TODO)

    -

    +

    Documentation

    For Documentation, we will use "doxygen" 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.

    More information here: Documentation Guide

    -

    +

    Tips from Dr. Bazuin

    • Make sub-circuits/sub-designs for schematics to keep things organized and modular/copy-able
    • @@ -116,12 +116,20 @@ Tips from Dr. Bazuin
    • Need to make sure we have a BOM
    • Free samples for parts from manufacturers
    -

    +

    Tips from Dr. Gomez

    • Our requirements/specifications should be made to be more measurable
    • Need to design to safety standards, which need to be researched online
    • -
    • He said that he is available himself for anything power-related to help out with if needed
    • +
    • He said that he is available himself for anything power-related to help out with if needed
    • +
    +

    +TODO List

    +
      +
    • [ ] Make battery circuitry for Real-Time Clock/Calendar for when the vehicle is off.
    • +
    • [ ] Ensure the footprint for CANbus Transceiver is present, since it'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't sure about footprint.
    • +
    • [ ] 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.
    • +
    • [ ] Need to look through Sunseeker documentation to learn how they have their CANbus setup, ensuring we have our controller and transceiver setup correctly.
    @@ -129,7 +137,7 @@ Tips from Dr. Gomez diff --git a/Documentation/html/main_8c.html b/Documentation/html/main_8c.html index 3617833..f89ac1a 100644 --- a/Documentation/html/main_8c.html +++ b/Documentation/html/main_8c.html @@ -124,7 +124,7 @@ Functions diff --git a/Documentation/html/main_8c_source.html b/Documentation/html/main_8c_source.html index e43c1f6..41b1c89 100644 --- a/Documentation/html/main_8c_source.html +++ b/Documentation/html/main_8c_source.html @@ -101,7 +101,7 @@ $(document).ready(function(){initNavTree('main_8c_source.html',''); initResizabl diff --git a/Documentation/html/navtreedata.js b/Documentation/html/navtreedata.js index 3b4a7cf..ddd1850 100644 --- a/Documentation/html/navtreedata.js +++ b/Documentation/html/navtreedata.js @@ -25,23 +25,21 @@ var NAVTREE = [ [ "2020-2021 Sunseeker Telemetry and Lighting System", "index.html", [ - [ "About", "index.html#autotoc_md14", null ], - [ "Documentation", "index.html#autotoc_md15", [ - [ "Tips from Dr. Bazuin", "index.html#autotoc_md16", null ], - [ "Tips from Dr. Gomez", "index.html#autotoc_md17", null ] + [ "About", "index.html#autotoc_md15", null ], + [ "Documentation", "index.html#autotoc_md16", [ + [ "Tips from Dr. Bazuin", "index.html#autotoc_md17", null ], + [ "Tips from Dr. Gomez", "index.html#autotoc_md18", null ] ] ], + [ "TODO List", "index.html#autotoc_md19", null ], [ "Hardware", "hardware.html", "hardware" ], [ "Software", "software.html", null ], [ "Documentation Guide", "documentation_guide.html", [ - [ "Doxygen", "documentation_guide.html#autotoc_md18", null ], - [ "Updating Documentation", "documentation_guide.html#autotoc_md19", null ], - [ "Important Notes", "documentation_guide.html#autotoc_md20", [ - [ "For Consistency", "documentation_guide.html#autotoc_md21", null ] + [ "Doxygen", "documentation_guide.html#autotoc_md20", null ], + [ "Updating Documentation", "documentation_guide.html#autotoc_md21", null ], + [ "Important Notes", "documentation_guide.html#autotoc_md22", [ + [ "For Consistency", "documentation_guide.html#autotoc_md23", null ] ] ] ] ], - [ "References", "references.html", [ - [ "Universal Clock System (UCS)", "references.html#autotoc_md23", null ] - ] ], [ "Files", "files.html", [ [ "File List", "files.html", "files_dup" ], [ "Globals", "globals.html", [ @@ -54,7 +52,7 @@ var NAVTREE = var NAVTREEINDEX = [ -"device_specifications.html" +"design_choices.html" ]; var SYNCONMSG = 'click to disable panel synchronisation'; diff --git a/Documentation/html/navtreeindex0.js b/Documentation/html/navtreeindex0.js index f3e5048..8c9cf4e 100644 --- a/Documentation/html/navtreeindex0.js +++ b/Documentation/html/navtreeindex0.js @@ -1,44 +1,43 @@ var NAVTREEINDEX0 = { -"device_specifications.html":[2,1], -"device_specifications.html#autotoc_md10":[8], -"device_specifications.html#autotoc_md11":[9], -"device_specifications.html#autotoc_md2":[0], -"device_specifications.html#autotoc_md3":[1], -"device_specifications.html#autotoc_md4":[2], -"device_specifications.html#autotoc_md5":[3], -"device_specifications.html#autotoc_md6":[4], -"device_specifications.html#autotoc_md7":[5], -"device_specifications.html#autotoc_md8":[6], -"device_specifications.html#autotoc_md9":[7], -"dir_465c8a410b787ccece2cc89dfe6b85b1.html":[6,0,2], -"dir_4e9c05acfa2c3671b8618fcb95d57d96.html":[6,0,3], +"design_choices.html":[3,1], +"design_choices.html#autotoc_md2":[3,1,0], +"design_choices.html#autotoc_md3":[3,1,1], +"device_specifications.html":[3,2], +"device_specifications.html#autotoc_md10":[6], +"device_specifications.html#autotoc_md11":[7], +"device_specifications.html#autotoc_md12":[8], +"device_specifications.html#autotoc_md13":[9], +"device_specifications.html#autotoc_md4":[0], +"device_specifications.html#autotoc_md5":[1], +"device_specifications.html#autotoc_md6":[2], +"device_specifications.html#autotoc_md7":[3], +"device_specifications.html#autotoc_md8":[4], +"device_specifications.html#autotoc_md9":[5], +"dir_4e9c05acfa2c3671b8618fcb95d57d96.html":[6,0,2], "dir_6cc751a9e685a986d41d35de353de328.html":[6,0,0], -"dir_70428d3c5958c16802133545478a5cfb.html":[6,0,3,0], +"dir_70428d3c5958c16802133545478a5cfb.html":[6,0,2,0], "dir_7795a02a4813dcd036f04e5f7854f185.html":[6,0,1], -"dir_ef94255a62432ae865475b379d8bd501.html":[6,0,3,0,0], -"documentation_guide.html":[4], -"documentation_guide.html#autotoc_md18":[4,0], -"documentation_guide.html#autotoc_md19":[4,1], -"documentation_guide.html#autotoc_md20":[4,2], -"documentation_guide.html#autotoc_md21":[4,2,0], +"dir_ef94255a62432ae865475b379d8bd501.html":[6,0,2,0,0], +"documentation_guide.html":[5], +"documentation_guide.html#autotoc_md20":[5,0], +"documentation_guide.html#autotoc_md21":[5,1], +"documentation_guide.html#autotoc_md22":[5,2], +"documentation_guide.html#autotoc_md23":[5,2,0], "files.html":[6,0], "globals.html":[6,1,0], "globals_func.html":[6,1,1], -"hardware.html":[2], -"hardware.html#autotoc_md1":[2,0], +"hardware.html":[3], +"hardware.html#autotoc_md1":[3,0], "index.html":[], -"index.html#autotoc_md14":[0], -"index.html#autotoc_md15":[1], -"index.html#autotoc_md16":[1,0], -"index.html#autotoc_md17":[1,1], -"layout_planning.html":[2,2], -"layout_planning.html#autotoc_md12":[10], -"main_8c.html":[6,0,3,0,0,0], -"main_8c.html#a840291bc02cba5474a4cb46a9b9566fe":[6,0,3,0,0,0,0], -"main_8c_source.html":[6,0,3,0,0,0], +"index.html#autotoc_md15":[0], +"index.html#autotoc_md16":[1], +"index.html#autotoc_md17":[1,0], +"index.html#autotoc_md18":[1,1], +"index.html#autotoc_md19":[2], +"main_8c.html":[6,0,2,0,0,0], +"main_8c.html#a840291bc02cba5474a4cb46a9b9566fe":[6,0,2,0,0,0,0], +"main_8c_source.html":[6,0,2,0,0,0], "pages.html":[], -"references.html":[5], -"references.html#autotoc_md23":[5,0], -"software.html":[3] +"software.html":[4] }; diff --git a/Documentation/html/pages.html b/Documentation/html/pages.html index c902db6..accdae4 100644 --- a/Documentation/html/pages.html +++ b/Documentation/html/pages.html @@ -88,7 +88,6 @@ $(document).ready(function(){initNavTree('pages.html',''); initResizable(); });
    Here is a list of all related documentation pages:
    -
     Documentation Guide
     References
    @@ -96,7 +95,7 @@ $(document).ready(function(){initNavTree('pages.html',''); initResizable(); }); diff --git a/Documentation/html/search/all_0.js b/Documentation/html/search/all_0.js index 47458e9..1aa5745 100644 --- a/Documentation/html/search/all_0.js +++ b/Documentation/html/search/all_0.js @@ -1,6 +1,5 @@ var searchData= [ ['_21hardware_2emarkdown_0',['!Hardware.markdown',['../_9_hardware_8markdown.html',1,'']]], - ['_21references_2emarkdown_1',['!References.markdown',['../_9_references_8markdown.html',1,'']]], - ['_21software_2emarkdown_2',['!Software.markdown',['../_9_software_8markdown.html',1,'']]] + ['_21software_2emarkdown_1',['!Software.markdown',['../_9_software_8markdown.html',1,'']]] ]; diff --git a/Documentation/html/search/all_1.js b/Documentation/html/search/all_1.js index d85671f..18ccdf1 100644 --- a/Documentation/html/search/all_1.js +++ b/Documentation/html/search/all_1.js @@ -1,7 +1,9 @@ var searchData= [ - ['device_20specifications_3',['Device Specifications',['../device_specifications.html',1,'hardware']]], - ['device_20specifications_2emarkdown_4',['Device Specifications.markdown',['../_device_01_specifications_8markdown.html',1,'']]], - ['documentation_20guide_5',['Documentation Guide',['../documentation_guide.html',1,'']]], - ['documentation_20guide_2emarkdown_6',['Documentation Guide.markdown',['../_documentation_01_guide_8markdown.html',1,'']]] + ['design_20choices_2',['Design Choices',['../design_choices.html',1,'hardware']]], + ['design_20choices_2emarkdown_3',['Design Choices.markdown',['../_design_01_choices_8markdown.html',1,'']]], + ['device_20specifications_4',['Device Specifications',['../device_specifications.html',1,'hardware']]], + ['device_20specifications_2emarkdown_5',['Device Specifications.markdown',['../_device_01_specifications_8markdown.html',1,'']]], + ['documentation_20guide_6',['Documentation Guide',['../documentation_guide.html',1,'']]], + ['documentation_20guide_2emarkdown_7',['Documentation Guide.markdown',['../_documentation_01_guide_8markdown.html',1,'']]] ]; diff --git a/Documentation/html/search/all_2.js b/Documentation/html/search/all_2.js index 69e7573..6c2ffe7 100644 --- a/Documentation/html/search/all_2.js +++ b/Documentation/html/search/all_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['hardware_7',['Hardware',['../hardware.html',1,'index']]] + ['hardware_8',['Hardware',['../hardware.html',1,'index']]] ]; diff --git a/Documentation/html/search/all_3.js b/Documentation/html/search/all_3.js index f772e14..b9d9c92 100644 --- a/Documentation/html/search/all_3.js +++ b/Documentation/html/search/all_3.js @@ -1,5 +1,5 @@ var searchData= [ - ['layout_20planning_8',['Layout Planning',['../layout_planning.html',1,'hardware']]], - ['layout_20planning_2emarkdown_9',['Layout Planning.markdown',['../_layout_01_planning_8markdown.html',1,'']]] + ['main_9',['main',['../main_8c.html#a840291bc02cba5474a4cb46a9b9566fe',1,'main.c']]], + ['main_2ec_10',['main.c',['../main_8c.html',1,'']]] ]; diff --git a/Documentation/html/search/all_4.js b/Documentation/html/search/all_4.js index f95dcb0..0229da8 100644 --- a/Documentation/html/search/all_4.js +++ b/Documentation/html/search/all_4.js @@ -1,5 +1,4 @@ var searchData= [ - ['main_10',['main',['../main_8c.html#a840291bc02cba5474a4cb46a9b9566fe',1,'main.c']]], - ['main_2ec_11',['main.c',['../main_8c.html',1,'']]] + ['readme_2emarkdown_11',['README.markdown',['../_r_e_a_d_m_e_8markdown.html',1,'']]] ]; diff --git a/Documentation/html/search/all_5.js b/Documentation/html/search/all_5.js index 055221c..f27e33a 100644 --- a/Documentation/html/search/all_5.js +++ b/Documentation/html/search/all_5.js @@ -1,5 +1,4 @@ var searchData= [ - ['readme_2emarkdown_12',['README.markdown',['../_r_e_a_d_m_e_8markdown.html',1,'']]], - ['references_13',['References',['../references.html',1,'']]] + ['software_12',['Software',['../software.html',1,'index']]] ]; diff --git a/Documentation/html/search/files_0.js b/Documentation/html/search/files_0.js index 2fdf709..bff961c 100644 --- a/Documentation/html/search/files_0.js +++ b/Documentation/html/search/files_0.js @@ -1,6 +1,5 @@ var searchData= [ - ['_21hardware_2emarkdown_15',['!Hardware.markdown',['../_9_hardware_8markdown.html',1,'']]], - ['_21references_2emarkdown_16',['!References.markdown',['../_9_references_8markdown.html',1,'']]], - ['_21software_2emarkdown_17',['!Software.markdown',['../_9_software_8markdown.html',1,'']]] + ['_21hardware_2emarkdown_13',['!Hardware.markdown',['../_9_hardware_8markdown.html',1,'']]], + ['_21software_2emarkdown_14',['!Software.markdown',['../_9_software_8markdown.html',1,'']]] ]; diff --git a/Documentation/html/search/files_1.js b/Documentation/html/search/files_1.js index 8447951..3e55be5 100644 --- a/Documentation/html/search/files_1.js +++ b/Documentation/html/search/files_1.js @@ -1,5 +1,6 @@ var searchData= [ - ['device_20specifications_2emarkdown_18',['Device Specifications.markdown',['../_device_01_specifications_8markdown.html',1,'']]], - ['documentation_20guide_2emarkdown_19',['Documentation Guide.markdown',['../_documentation_01_guide_8markdown.html',1,'']]] + ['design_20choices_2emarkdown_15',['Design Choices.markdown',['../_design_01_choices_8markdown.html',1,'']]], + ['device_20specifications_2emarkdown_16',['Device Specifications.markdown',['../_device_01_specifications_8markdown.html',1,'']]], + ['documentation_20guide_2emarkdown_17',['Documentation Guide.markdown',['../_documentation_01_guide_8markdown.html',1,'']]] ]; diff --git a/Documentation/html/search/files_2.js b/Documentation/html/search/files_2.js index 6c1d70d..0c253be 100644 --- a/Documentation/html/search/files_2.js +++ b/Documentation/html/search/files_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['layout_20planning_2emarkdown_20',['Layout Planning.markdown',['../_layout_01_planning_8markdown.html',1,'']]] + ['main_2ec_18',['main.c',['../main_8c.html',1,'']]] ]; diff --git a/Documentation/html/search/files_3.js b/Documentation/html/search/files_3.js index 51c45e7..d15775a 100644 --- a/Documentation/html/search/files_3.js +++ b/Documentation/html/search/files_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['main_2ec_21',['main.c',['../main_8c.html',1,'']]] + ['readme_2emarkdown_19',['README.markdown',['../_r_e_a_d_m_e_8markdown.html',1,'']]] ]; diff --git a/Documentation/html/search/functions_0.js b/Documentation/html/search/functions_0.js index b7468f9..59b3bad 100644 --- a/Documentation/html/search/functions_0.js +++ b/Documentation/html/search/functions_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['main_23',['main',['../main_8c.html#a840291bc02cba5474a4cb46a9b9566fe',1,'main.c']]] + ['main_20',['main',['../main_8c.html#a840291bc02cba5474a4cb46a9b9566fe',1,'main.c']]] ]; diff --git a/Documentation/html/search/pages_0.js b/Documentation/html/search/pages_0.js index 60813aa..29f91a6 100644 --- a/Documentation/html/search/pages_0.js +++ b/Documentation/html/search/pages_0.js @@ -1,5 +1,6 @@ var searchData= [ - ['device_20specifications_24',['Device Specifications',['../device_specifications.html',1,'hardware']]], - ['documentation_20guide_25',['Documentation Guide',['../documentation_guide.html',1,'']]] + ['design_20choices_21',['Design Choices',['../design_choices.html',1,'hardware']]], + ['device_20specifications_22',['Device Specifications',['../device_specifications.html',1,'hardware']]], + ['documentation_20guide_23',['Documentation Guide',['../documentation_guide.html',1,'']]] ]; diff --git a/Documentation/html/search/pages_1.js b/Documentation/html/search/pages_1.js index a2e39c1..7a16240 100644 --- a/Documentation/html/search/pages_1.js +++ b/Documentation/html/search/pages_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['hardware_26',['Hardware',['../hardware.html',1,'index']]] + ['hardware_24',['Hardware',['../hardware.html',1,'index']]] ]; diff --git a/Documentation/html/search/pages_2.js b/Documentation/html/search/pages_2.js index 12b8301..778dfad 100644 --- a/Documentation/html/search/pages_2.js +++ b/Documentation/html/search/pages_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['layout_20planning_27',['Layout Planning',['../layout_planning.html',1,'hardware']]] + ['software_25',['Software',['../software.html',1,'index']]] ]; diff --git a/Documentation/html/search/searchdata.js b/Documentation/html/search/searchdata.js index a7fafd1..74ec432 100644 --- a/Documentation/html/search/searchdata.js +++ b/Documentation/html/search/searchdata.js @@ -1,9 +1,9 @@ var indexSectionsWithContent = { - 0: "!dhlmrs", - 1: "!dlmr", + 0: "!dhmrs", + 1: "!dmr", 2: "m", - 3: "dhlrs" + 3: "dhs" }; var indexSectionNames = diff --git a/Documentation/html/software.html b/Documentation/html/software.html index e8473d8..f030cfd 100644 --- a/Documentation/html/software.html +++ b/Documentation/html/software.html @@ -92,7 +92,7 @@ $(document).ready(function(){initNavTree('software.html',''); initResizable(); } diff --git a/Documentation/latex/_design_01_choices_8markdown.tex b/Documentation/latex/_design_01_choices_8markdown.tex new file mode 100644 index 0000000..35c9e57 --- /dev/null +++ b/Documentation/latex/_design_01_choices_8markdown.tex @@ -0,0 +1,2 @@ +\hypertarget{_design_01_choices_8markdown}{}\doxysection{Hardware/\+Design Choices.\+markdown File Reference} +\label{_design_01_choices_8markdown}\index{Hardware/Design Choices.markdown@{Hardware/Design Choices.markdown}} diff --git a/Documentation/latex/documentation_guide.tex b/Documentation/latex/documentation_guide.tex index 890221f..3092c29 100644 --- a/Documentation/latex/documentation_guide.tex +++ b/Documentation/latex/documentation_guide.tex @@ -1,16 +1,16 @@ -\hypertarget{documentation_guide_autotoc_md18}{}\doxysection{Doxygen}\label{documentation_guide_autotoc_md18} +\hypertarget{documentation_guide_autotoc_md20}{}\doxysection{Doxygen}\label{documentation_guide_autotoc_md20} 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_md21}{}\doxysection{Updating Documentation}\label{documentation_guide_autotoc_md21} +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_md22}{}\doxysection{Important Notes}\label{documentation_guide_autotoc_md22} \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_md23}{}\doxysubsection{For Consistency}\label{documentation_guide_autotoc_md23} \begin{DoxyItemize} \item Please make sure the internal names (\char`\"{}tags\char`\"{}) of files are using \char`\"{}camel\+Case\char`\"{} diff --git a/Documentation/latex/hardware.tex b/Documentation/latex/hardware.tex index e4f4d25..916e2c5 100644 --- a/Documentation/latex/hardware.tex +++ b/Documentation/latex/hardware.tex @@ -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} \ No newline at end of file diff --git a/Documentation/latex/index.tex b/Documentation/latex/index.tex index 11600ca..1528abe 100644 --- a/Documentation/latex/index.tex +++ b/Documentation/latex/index.tex @@ -7,11 +7,11 @@ \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} +\hypertarget{index_autotoc_md15}{}\doxysection{About}\label{index_autotoc_md15} +What this project is about (TODO)\hypertarget{index_autotoc_md16}{}\doxysection{Documentation}\label{index_autotoc_md16} 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. -More information here\+: \mbox{\hyperlink{documentation_guide}{Documentation Guide}}\hypertarget{index_autotoc_md16}{}\doxysubsection{Tips from Dr. Bazuin}\label{index_autotoc_md16} +More information here\+: \mbox{\hyperlink{documentation_guide}{Documentation Guide}}\hypertarget{index_autotoc_md17}{}\doxysubsection{Tips from Dr. Bazuin}\label{index_autotoc_md17} \begin{DoxyItemize} \item Make sub-\/circuits/sub-\/designs for schematics to keep things organized and modular/copy-\/able @@ -28,10 +28,17 @@ 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 -\end{DoxyItemize}\hypertarget{index_autotoc_md17}{}\doxysubsection{Tips from Dr. Gomez}\label{index_autotoc_md17} +\end{DoxyItemize}\hypertarget{index_autotoc_md18}{}\doxysubsection{Tips from Dr. Gomez}\label{index_autotoc_md18} \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_md19}{}\doxysection{TODO List}\label{index_autotoc_md19} + +\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} \ No newline at end of file diff --git a/Documentation/latex/refman.tex b/Documentation/latex/refman.tex index a5fe736..5c0e916 100644 --- a/Documentation/latex/refman.tex +++ b/Documentation/latex/refman.tex @@ -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 ---