Проблема, связанная с настройкой пути ARM GNU GCC (C ++) на платформе Eclipse

Я пытаюсь сделать класс Wrapper для FreeRTOS на компиляторе ARM GNU с C ++. Я сделал это на Keil MDK-ARM v5.14 без каких-либо проблем, но я не могу достичь на платформе затмения. Я думаю, что это из-за моей ошибки Местоположение источника конфигурация на затмении.

Я использую Eclipse Luna 4.4.2, ARM GNU GCC 4.9.2 и GNU ARM Eclipse плагины

Вот мой интерфейс класса Wrapper:

#ifndef TASKOOP_H_
#define TASKOOP_H_

#include "FreeRTOS.h"#include "task.h"
class TaskOOP {
private:
TaskHandle_t _handle;
public:
TaskOOP();
virtual ~TaskOOP();//xTaskCreate( vTaskCode, "NAME", STACK_SIZE, NULL, tskIDLE_PRIORITY, &xHandle );
void create(const char * const pcName, const uint16_t usStackDepth, UBaseType_t uxPriority);    //xTaskCreate( pvTaskCode, pcName, usStackDepth, pvParameters, uxPriority, pxCreatedTask )
void deleteT(); //vTaskDelete( TaskHandle_t xTaskToDelete )
void suspend(); //vTaskSuspend( TaskHandle_t xTaskToSuspend )
void resume();  //vTaskResume( TaskHandle_t xTaskToResume )
UBaseType_t getTaskPriority();                      //uxTaskPriorityGet( TaskHandle_t xTask )
void setTaskPriority(UBaseType_t uxNewPriority);    //vTaskPrioritySet( TaskHandle_t xTask, UBaseType_t uxNewPriority )

static void delay(const TickType_t xTicksToDelay);  //vTaskDelay( const TickType_t xTicksToDelay )
static void vTaskStartScheduler( void );
static void vTaskEndScheduler( void );
static void vTaskSuspendAll( void );
static BaseType_t xTaskResumeAll( void );

private:
static void bridge(void* pThis);
protected:
virtual void run(void) = 0;

};

#endif /* TASKOOP_H_ */

Вот моя реализация:

#include "TaskOOP.h"
TaskOOP::TaskOOP():_handle(0) {
// TODO Auto-generated constructor stub

}

TaskOOP::~TaskOOP() {
// TODO Auto-generated destructor stub
}

void TaskOOP::create(const char * const pcName, const uint16_t usStackDepth, UBaseType_t uxPriority){

xTaskCreate(bridge,pcName,usStackDepth,this,uxPriority,&_handle);
}

void TaskOOP::deleteT(){

vTaskDelete(_handle);
}

void TaskOOP::suspend(){

vTaskSuspend(_handle);
}

void TaskOOP::resume(){

vTaskResume(_handle);
}

UBaseType_t  TaskOOP::getTaskPriority(){

return uxTaskPriorityGet(_handle);
}

void TaskOOP::setTaskPriority(UBaseType_t uxNewPriority){

vTaskPrioritySet(  _handle,  uxNewPriority );
}

void TaskOOP::delay(const TickType_t xTicksToDelay){

vTaskDelay(xTicksToDelay);
}

void TaskOOP::vTaskStartScheduler(void){

vTaskStartScheduler();
}

void TaskOOP::vTaskEndScheduler(void){

vTaskEndScheduler();
}

void TaskOOP::vTaskSuspendAll(void){

vTaskSuspendAll();
}

BaseType_t TaskOOP::xTaskResumeAll( void ){

return xTaskResumeAll();
}

void TaskOOP::bridge(void* pThis){
TaskOOP* task = (TaskOOP *)pThis;
task->run();
}

Вот несколько печатных экранов из моих настроек затмения:

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

Я не могу загрузить их как изображение, потому что мне не хватает репутации.

Вопрос в том, как мне настроить Дорожка а также Местоположение источника?

1

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]