Здраствуйте господа!
Прошу помощи при работе с freertos.
Стоит необходимость запустить задачу как метод класса, что бы данные из той задачи (очереди и тд) могли взаимодействовать с другими методами (объектами) класса. Вот три файла.
При выполнении Obj.Metod_Start_Task();
Контроллер уходит в reboot
Прошу помощи при работе с freertos.
Стоит необходимость запустить задачу как метод класса, что бы данные из той задачи (очереди и тд) могли взаимодействовать с другими методами (объектами) класса. Вот три файла.
file.ino:
#include "file.h"
MyClass Obj(paramters);
void setup() {
Obj.Metod1();
Obj.Metod2();
Obj.Metod3();
Obj.Metod4();
Obj.Metod_Start_Task();
}
void loop() {
Obj.Metod5()
}
file.h:
#ifndef file_h
#define file_h
class MyClass {
public:
MyClass(parameters);
static void task(void * parameter);
void _task();
void Metod_Start_Task();
};
};
#endif
file.cpp:
#include "file.h"
MyClass::MyClass(){};
void MyClass::task( void * parameter){
((Myclass*)parameter) -> _task();
}
void MyClass::_task(){
for (;;;){
........
........
}
}
void MyClass::Metod_Start_task(){
xTaskCreate(this->task, "task", 10000, NULL, 1, NULL);
}
При выполнении Obj.Metod_Start_Task();
Контроллер уходит в reboot