Skip to content
Snippets Groups Projects
README.md 1.4 KiB
Newer Older
bbartels's avatar
bbartels committed

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
bbartels's avatar
bbartels committed
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
bbartels's avatar
bbartels committed
```

The main XSDK project that actually runs on the Zybo is located at:
```
xsdk_workspace/modular_quad_pid/main.c
bbartels's avatar
bbartels committed
```

bbartels's avatar
bbartels committed

bbartels's avatar
bbartels committed

To build the libraries:
```
make libs
```

You can also build each library individually inside their respective project
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

bbartels's avatar
bbartels committed
## Testing

bbartels's avatar
bbartels committed

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.
bbartels's avatar
bbartels committed
```
make test
```

You can also run the test for specific library inside its respective project
bbartels's avatar
bbartels committed
directory:
```
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.