Skip to content
Snippets Groups Projects
Commit 4f5322d0 authored by bbartels's avatar bbartels
Browse files

quad: change "modular_quad_pid" to "real_quad"

parent 8863edf7
No related branches found
No related tags found
No related merge requests found
Showing
with 21 additions and 28 deletions
# Quadcopter # Quadcopter Section
The quad/ directory contains all code that programs the quadcopter. This This `quad/` directory contains all code that programs the quadcopter,
includes any C libraries we have written, any HDL to program the Zybo on including any C libraries we have written, any HDL to program the Zybo on
the quad, and the XSDK main project that runs on the Zybo. the quad, and the XSDK main project that runs on the Zybo.
The main quad application is written as a library, and located at: The main quad application is written as a library, and located at:
``` ```
src/quad_app/quad_app.c src/quad_app (main function in quad_app.c)
``` ```
The main XSDK project that actually runs on the Zybo is located at: The main XSDK project that actually runs on the Zybo is located at:
``` ```
xsdk_workspace/modular_quad_pid/main.c xsdk_workspace/real_quad
``` ```
## Building If you were wondering, we do have the complementary virtual quad easy testing:
```
src/virt_quad
```
### Libraries ## Building our Libraries
To build the libraries: To build the libraries:
``` ```
...@@ -29,31 +32,21 @@ directories: ...@@ -29,31 +32,21 @@ directories:
cd src/<project> && make cd src/<project> && make
``` ```
### XSDK Project
To build the XSDK project that runs on the Zybo (only works on co3050):
```
make zybo
```
To build the Zybo boot image for the SD card (only works on co3050):
```
make boot
```
Disclaimer: The make boot target currently does not work
## Testing ## Testing
### Libraries We have split our code into 2 main sections: application code and hardware code.
We did that so that we can write tests that run automatically on CI. You just
can't run automatic tests on hardware code because the environments won't match.
We try to write unit tests for the libraries we've written, since they are All CI tests are run using the following target:
not tied to the Zybo platform and are able to be run in our CI environment.
``` ```
make test make test
``` ```
You can also run the test for specific library inside its respective project This incorporates unit tests (`src/<library>/test`), as well as a few functional
test scripts (`scripts/tests`) that verify things on the virtual quad.
You can also run the tests for a specific library inside its respective project
directory: directory:
``` ```
cd src/<project> && make test cd src/<project> && make test
...@@ -61,6 +54,6 @@ cd src/<project> && make test ...@@ -61,6 +54,6 @@ cd src/<project> && make test
### XSDK Project ### XSDK Project
The XSDK project implements the hardware interfaces used in the quad app. We have tests for the hardware-level code, they just have to be run manually.
There are tests can be executed from the main function in that XSDK project. You can find these tests along with instructions at
These tests essentially test each hardware interface. `xsdk_workspace/read_quad/src/hw_impl_zybo_tests.c`
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment