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
includes any C libraries we have written, any HDL to program the Zybo on
This `quad/` directory contains all code that programs the quadcopter,
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 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:
```
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:
```
......@@ -29,31 +32,21 @@ directories:
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
### 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
not tied to the Zybo platform and are able to be run in our CI environment.
All CI tests are run using the following target:
```
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:
```
cd src/<project> && make test
......@@ -61,6 +54,6 @@ cd src/<project> && make test
### XSDK Project
The XSDK project implements the hardware interfaces used in the quad app.
There are tests can be executed from the main function in that XSDK project.
These tests essentially test each hardware interface.
We have tests for the hardware-level code, they just have to be run manually.
You can find these tests along with instructions at
`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