blob: 9bb95c4ba80efdbe8594753450bc035bcce1ee89 [file] [log] [blame]
// SPDX-License-Identifier: Apache-2.0
#include "../../defs.h"
#include "../../stub.c"
#include "../../spectrometerDefs.h"
/*
Spectrometer Test:
- Set spectrometer to pass data through:
plfg
nco
fft
mag
acc
utx
*/
int clk = 0;
int i;
void main()
{
// Configure GPIO pins
reg_mprj_io_24 = GPIO_MODE_USER_STD_INPUT_PULLUP;
reg_mprj_io_23 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_22 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_21 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_20 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_19 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_18 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_17 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_16 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_15 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_14 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_13 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_12 = GPIO_MODE_USER_STD_OUTPUT;
reg_mprj_io_11 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_10 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_9 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_8 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_7 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_6 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_5 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_4 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_3 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_2 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_1 = GPIO_MODE_USER_STD_INPUT_PULLDOWN;
reg_mprj_io_0 = GPIO_MODE_USER_STD_OUTPUT;
/* Apply configuration */
reg_mprj_xfer = 1;
while (reg_mprj_xfer == 1);
UART_REG(uart_div) = 2;
UART_REG(uart_txctrl) = 1;
UART_REG(uart_rxctrl) = 1;
MAG_REG(0) = 0x2; // set jpl magnitude
ACC_REG(0) = FFT_SIZE;
ACC_REG(1*BEATBYTES) = 4;
PLFG_MUX_1_REG(0) = 0;
NCO_MUX_1_REG(0) = 0;
FFT_MUX_1_REG(0) = 0;
MAG_MUX_1_REG(0) = 0;
PLFG_MUX_0_REG(0) = 0;
NCO_MUX_0_REG(0) = 0;
FFT_MUX_0_REG(0) = 0;
MAG_MUX_0_REG(0) = 0;
OUT_MUX_REG(0x4) = 0;
int segmentNumsArrayOffset = 6 * BEATBYTES;
int repeatedChirpNumsArrayOffset = segmentNumsArrayOffset + 4 * BEATBYTES;
int chirpOrdinalNumsArrayOffset = repeatedChirpNumsArrayOffset + 8 * BEATBYTES;
PLFG_RAM(0) = 0x24000000;
PLFG_REG(2*BEATBYTES) = 8;
PLFG_REG(4*BEATBYTES) = 1;
PLFG_REG(5*BEATBYTES) = 8*128/FFT_SIZE;;
PLFG_REG(segmentNumsArrayOffset) = 1;
PLFG_REG(repeatedChirpNumsArrayOffset) = 1;
PLFG_REG(chirpOrdinalNumsArrayOffset) = 0;
PLFG_REG(1*BEATBYTES) = 0;
PLFG_REG(0*BEATBYTES) = 1;
}