polycopter fix macro duplication, allow INSERT_WC
This commit is contained in:
parent
c129d34e18
commit
b8566de11b
@ -10,8 +10,14 @@
|
||||
#define NUM_TASKS 15
|
||||
#include "fuzzhelper.c"
|
||||
|
||||
// #ifdef INSERT_WC
|
||||
// #include "wcinput.h"
|
||||
// #endif
|
||||
|
||||
#ifdef INSERT_WC
|
||||
#include "wcinput.h"
|
||||
#define WC_SWITCH(X,D) ((X)*0+(D))
|
||||
#else
|
||||
#define WC_SWITCH(X,D) ((X)+(D)*0)
|
||||
#endif
|
||||
|
||||
// #define SHORT_CALC 50
|
||||
@ -165,11 +171,11 @@ void main_osek(void) {
|
||||
configMAX_PRIORITIES - 1,
|
||||
&xTaskTimeSupervisor );
|
||||
|
||||
#ifdef INSERT_WC
|
||||
for (int i=0; i<MAX_INPUT_BYTES; i++) {
|
||||
FUZZ_INPUT[i] = WC_ARRAY[i];
|
||||
}
|
||||
#endif
|
||||
// #ifdef INSERT_WC
|
||||
// for (int i=0; i<MAX_INPUT_BYTES; i++) {
|
||||
// FUZZ_INPUT[i] = WC_ARRAY[i];
|
||||
// }
|
||||
// #endif
|
||||
vTaskStartScheduler();
|
||||
for( ; ; )
|
||||
{
|
||||
@ -182,30 +188,31 @@ static void prv_SignalGatherInitiateTask(void *pvParameters) {
|
||||
const int task_id = 0;
|
||||
TickType_t xLastWakeTime = initial_release_time;
|
||||
const TickType_t xFrequency = 3 / portTICK_PERIOD_MS;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
do {
|
||||
RNG_RESET
|
||||
// timing_start(0);
|
||||
xSemaphoreTake(xSemaphore_SPIBus, portMAX_DELAY);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_1(x);
|
||||
WASTE_USEC(TRANSLATE_1(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_1(50, 200), 200));
|
||||
if ((round % 2) == 0) {
|
||||
xTaskNotify(xTask_SignalGatherTimeoutTask, MAKE_OUTPUT, eSetValueWithOverwrite);
|
||||
} else {
|
||||
xTaskNotify(xTask_SignalGatherFinishedTask, MAKE_OUTPUT, eSetValueWithOverwrite);
|
||||
}
|
||||
round++;
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_2(x);
|
||||
WASTE_USEC(TRANSLATE_2(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_2(50, 200), 200));
|
||||
xSemaphoreGive(xSemaphore_SPIBus);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_3(x);
|
||||
WASTE_USEC(TRANSLATE_3(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_3(50, 200), 200));
|
||||
trigger_job_done();
|
||||
xTaskDelayUntil( &xLastWakeTime, xFrequency );
|
||||
} while (1);
|
||||
@ -213,52 +220,54 @@ static void prv_SignalGatherInitiateTask(void *pvParameters) {
|
||||
|
||||
static void prv_SignalGatherFinishedTask(void *pvParameters) {
|
||||
const int task_id = 1;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
trigger_job_done();
|
||||
do {
|
||||
RNG_RESET
|
||||
unsigned long int y = ulTaskNotifyTake(pdTRUE, portMAX_DELAY);
|
||||
STATE_PLUS_DATA(y) // introduce a data dependency
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
x = FUNCTION_1(STRETCH_i32(INPUT_SHORT_NEXT*y));
|
||||
WASTE_USEC(TRANSLATE_1(50, 200));
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_1(x);
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_1(50, 200), 200));
|
||||
xTaskNotify(xTask_SignalProcessingAttitudeTask, MAKE_OUTPUT, eSetValueWithOverwrite);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_4(x);
|
||||
WASTE_USEC(TRANSLATE_4(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_4(50, 200), 200));
|
||||
xTaskNotify(xTask_SignalProcessingActuateTask, MAKE_OUTPUT, eSetValueWithOverwrite);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_5(x);
|
||||
WASTE_USEC(TRANSLATE_5(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_5(50, 200), 200));
|
||||
trigger_job_done();
|
||||
} while (1);
|
||||
}
|
||||
|
||||
static void prv_SignalGatherTimeoutTask(void *pvParameters) {
|
||||
const int task_id = 2;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
trigger_job_done();
|
||||
do {
|
||||
RNG_RESET
|
||||
unsigned long int y = ulTaskNotifyTake(pdTRUE, portMAX_DELAY);
|
||||
STATE_PLUS_DATA(y) // introduce a data dependency
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
x = FUNCTION_6(STRETCH_i32(INPUT_SHORT_NEXT*y));
|
||||
WASTE_USEC(TRANSLATE_6(50, 200));
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_6(x);
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_6(50, 200), 200));
|
||||
xSemaphoreTake(xSemaphore_SPIBus, portMAX_DELAY);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_7(x);
|
||||
WASTE_USEC(TRANSLATE_7(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_7(50, 200), 200));
|
||||
xSemaphoreGive(xSemaphore_SPIBus);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_8(x);
|
||||
WASTE_USEC(TRANSLATE_8(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_8(50, 200), 200));
|
||||
xTaskNotify(xTask_SignalGatherFinishedTask, MAKE_OUTPUT, eSetValueWithOverwrite);
|
||||
trigger_job_done();
|
||||
} while (1);
|
||||
@ -268,32 +277,34 @@ volatile int calculate;
|
||||
|
||||
static void prv_SignalProcessingActuateTask(void *pvParameters) {
|
||||
const int task_id = 3;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
trigger_job_done();
|
||||
do {
|
||||
RNG_RESET
|
||||
unsigned long int y = ulTaskNotifyTake(pdTRUE, portMAX_DELAY);
|
||||
STATE_PLUS_DATA(y) // introduce a data dependency
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
x = FUNCTION_9(STRETCH_i32(INPUT_SHORT_NEXT*y));
|
||||
WASTE_USEC(TRANSLATE_9(50, 200));
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_9(x);
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_9(50, 200), 200));
|
||||
trigger_job_done();
|
||||
} while (1);
|
||||
}
|
||||
|
||||
static void prv_SignalProcessingAttitudeTask(void *pvParameters) {
|
||||
const int task_id = 4;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
trigger_job_done();
|
||||
do {
|
||||
RNG_RESET
|
||||
unsigned long int y = ulTaskNotifyTake(pdTRUE, portMAX_DELAY);
|
||||
STATE_PLUS_DATA(y) // introduce a data dependency
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
x = FUNCTION_10(STRETCH_i32(INPUT_SHORT_NEXT*y));
|
||||
WASTE_USEC(TRANSLATE_10(50, 200));
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_10(x);
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_10(50, 200), 200));
|
||||
trigger_job_done();
|
||||
} while (1);
|
||||
}
|
||||
@ -302,21 +313,22 @@ static void prv_FlightControlTask(void *pvParameters) {
|
||||
const int task_id = 5;
|
||||
TickType_t xLastWakeTime = initial_release_time;
|
||||
const TickType_t xFrequency = 9 / portTICK_PERIOD_MS;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
do {
|
||||
RNG_RESET
|
||||
// timing_start(1 | TIMING_POINT_IS_HIGHEST_PRIO);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_1(x);
|
||||
WASTE_USEC(TRANSLATE_1(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_1(50, 200), 200));
|
||||
xTaskNotify(xTask_FlightControlAttitudeTask, 0, eSetValueWithOverwrite);
|
||||
xTaskNotify(xTask_FlightControlActuateTask, 0, eSetValueWithOverwrite);
|
||||
xTaskNotify(xTask_MavlinkSendTask, 0, eSetValueWithOverwrite);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_2(x);
|
||||
WASTE_USEC(TRANSLATE_2(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_2(50, 200), 200));
|
||||
trigger_job_done();
|
||||
xTaskDelayUntil( &xLastWakeTime, xFrequency );
|
||||
} while (1);
|
||||
@ -324,56 +336,59 @@ static void prv_FlightControlTask(void *pvParameters) {
|
||||
|
||||
static void prv_FlightControlAttitudeTask(void *pvParameters) {
|
||||
const int task_id = 6;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
trigger_job_done();
|
||||
do {
|
||||
RNG_RESET
|
||||
unsigned long int y = ulTaskNotifyTake(pdTRUE, portMAX_DELAY);
|
||||
STATE_PLUS_DATA(y) // introduce a data dependency
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
x = FUNCTION_3(STRETCH_i32(INPUT_SHORT_NEXT*y));
|
||||
WASTE_USEC(TRANSLATE_3(50, 200));
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_3(x);
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_3(50, 200), 200));
|
||||
trigger_job_done();
|
||||
} while (1);
|
||||
}
|
||||
|
||||
static void prv_FlightControlActuateTask(void *pvParameters) {
|
||||
const int task_id = 7;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
trigger_job_done();
|
||||
do {
|
||||
RNG_RESET
|
||||
unsigned long int y = ulTaskNotifyTake(pdTRUE, portMAX_DELAY);
|
||||
STATE_PLUS_DATA(y) // introduce a data dependency
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
x = FUNCTION_4(STRETCH_i32(INPUT_SHORT_NEXT*y));
|
||||
WASTE_USEC(TRANSLATE_4(50, 200));
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_4(x);
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_4(50, 200), 200));
|
||||
trigger_job_done();
|
||||
} while (1);
|
||||
}
|
||||
|
||||
static void prv_MavlinkSendTask(void *pvParameters) {
|
||||
const int task_id = 8;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
trigger_job_done();
|
||||
do {
|
||||
RNG_RESET
|
||||
unsigned long int y = ulTaskNotifyTake(pdTRUE, portMAX_DELAY);
|
||||
STATE_PLUS_DATA(y) // introduce a data dependency
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
x = FUNCTION_5(STRETCH_i32(INPUT_SHORT_NEXT*y));
|
||||
WASTE_USEC(TRANSLATE_5(50, 200));
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_5(x);
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_5(50, 200), 200));
|
||||
xSemaphoreTake(xSemaphore_SPIBus, portMAX_DELAY);
|
||||
WASTE_USEC(TRANSLATE_1(15, 50));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_1(15, 50), 50));
|
||||
// NVIC_SetPendingIRQ(1);
|
||||
xSemaphoreGive(xSemaphore_SPIBus);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_6(x);
|
||||
WASTE_USEC(TRANSLATE_6(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_6(50, 200), 200));
|
||||
// timing_end(1);
|
||||
trigger_job_done();
|
||||
} while (1);
|
||||
@ -383,6 +398,7 @@ static void prv_CopterControlTask(void *pvParameters) {
|
||||
const int task_id = 9;
|
||||
TickType_t xLastWakeTime = initial_release_time;
|
||||
const TickType_t xFrequency = 5 / portTICK_PERIOD_MS;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
trigger_job_done();
|
||||
do {
|
||||
@ -394,17 +410,17 @@ static void prv_CopterControlTask(void *pvParameters) {
|
||||
unsigned long int y = ulTaskNotifyTake(pdTRUE, 0);
|
||||
#endif
|
||||
STATE_PLUS_DATA(y) // introduce a data dependency
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
x = FUNCTION_7(STRETCH_i32(INPUT_SHORT_NEXT*y));
|
||||
WASTE_USEC(TRANSLATE_7(50, 200));
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_7(x);
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_7(50, 200), 200));
|
||||
vTaskSuspendAll();
|
||||
WASTE_USEC(TRANSLATE_8(15, 50));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_8(15, 50), 50));
|
||||
xTaskResumeAll();
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
x = FUNCTION_8(STRETCH_i32(INPUT_SHORT_NEXT*y));
|
||||
WASTE_USEC(TRANSLATE_8(50, 200));
|
||||
inp = INPUT_SHORT_NEXT * CLAMP(y, 1, 3);
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_8(x);
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_8(50, 200), 200));
|
||||
// timing_end(2);
|
||||
|
||||
trigger_job_done();
|
||||
@ -412,17 +428,18 @@ static void prv_CopterControlTask(void *pvParameters) {
|
||||
}
|
||||
|
||||
void ISR_0_Handler(void) {
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
if (xTask_CopterControlTask != NULL) {
|
||||
const int task_id = 10;
|
||||
RNG_RESET
|
||||
// timing_start(2 | TIMING_POINT_START_INTERRUPT_FROM_IDLE);
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_9(x);
|
||||
WASTE_USEC(TRANSLATE_9(15, 50));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_9(15, 50), 50));
|
||||
xTaskNotifyFromISR(xTask_CopterControlTask, 0, eNoAction, NULL);
|
||||
WASTE_USEC(TRANSLATE_10(15, 50));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_10(15, 50), 50));
|
||||
}
|
||||
}
|
||||
|
||||
@ -430,13 +447,14 @@ static void prv_CopterControlWatchdogTask(void *pvParameters) {
|
||||
const int task_id = 11;
|
||||
TickType_t xLastWakeTime = initial_release_time;
|
||||
const TickType_t xFrequency = 10 / portTICK_PERIOD_MS;
|
||||
uint16_t inp = 0;
|
||||
int x=0;
|
||||
do {
|
||||
RNG_RESET
|
||||
x = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32((short)x);
|
||||
inp = INPUT_SHORT_NEXT;
|
||||
x = STRETCH_i32(inp);
|
||||
x = FUNCTION_9(x);
|
||||
WASTE_USEC(TRANSLATE_1(50, 200));
|
||||
WASTE_USEC(WC_SWITCH(TRANSLATE_1(50, 200), 200));
|
||||
trigger_job_done();
|
||||
xTaskDelayUntil( &xLastWakeTime, xFrequency );
|
||||
} while (1);
|
||||
|
Loading…
x
Reference in New Issue
Block a user