blob: 9172a6efef0f7e0048a4e77e30028aa882ad3bb8 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2019 Dortmund University of Applied Sciences and Arts and others.
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Dortmund University of Applied Sciences and Arts - initial API and implementation
*******************************************************************************/
#include "debugFlags.h"
#include "FreeRTOS.h"
#include "task.h"
unsigned int *outbuf[10];
/*
* initialize output buffer with the addresses to array elements
*/
void outbuf_init(void ){
//This will be the same on each core
//debug interface in shared memory
outbuf[0] = (unsigned int *) cnt_address;
outbuf[1] = outbuf[0] + 1;
outbuf[2] = outbuf[1] + 1;
outbuf[3] = outbuf[2] + 1;
outbuf[4] = outbuf[3] + 1;
outbuf[5] = outbuf[4] + 1;
outbuf[6] = outbuf[5] + 1;
outbuf[7] = outbuf[6] + 1;
outbuf[8] = outbuf[7] + 1;
*outbuf[1] = 200;
//initialize buffer
int i;
//timer1init();
for (i=0;i<9;i++){
*outbuf[i] =0;
}
}
void traceRunningTask(unsigned taskNum){
*outbuf[RUNNINGTASK_FLAG] = taskNum;
}
void traceTaskPasses(unsigned taskNum, int currentPasses){
if (taskNum == 1){
*outbuf[TASK1_FLAG] = currentPasses;
}else if (taskNum == 2){
*outbuf[TASK2_FLAG] = currentPasses;
}else if (taskNum == 3){
*outbuf[TASK3_FLAG] = currentPasses;
}
}
void updateTick(void){
*outbuf[TICK_FLAG] = xTaskGetTickCount();
}
void updateDebugFlag(int debugMessage){
*outbuf[DEBUG_FLAG] = debugMessage;
}