Папка для библиотек: /media/HDS/Process/Arduino/libraries/
Не работает вытесняющая многозадачность или Проблемы с библиотекой MirmPS
- Войдите на сайт для отправки комментариев
Пнд, 18/05/2015 - 14:31
Понадобилась мне многозадачность, что бы обрабатывать информацию (по i2c c малиной общаться, возможно по ком-порту) и при этом выполнять свои фунции. Возможно есть нормальное решение для этой задачи, но вот я пошел по пути псевдо-многозадачности. Пытался вкурить статью: http://robocraft.ru/blog/985.html http://robocraft.ru/blog/981.html
и использовать соответсвующую библиотеку, но при компиляции выдает следующее...
/media/HDS/Process/Arduino/libraries/MirmPS/main2.cpp: In function 'void branching()':
/media/HDS/Process/Arduino/libraries/MirmPS/main2.cpp:44:39: error: cannot convert 'programm1' from type 'volatile void()' to type 'void*'
if (Taskcount==0) {Taskcount++;goto *programm1;}
^
/media/HDS/Process/Arduino/libraries/MirmPS/main2.cpp:45:39: error: cannot convert 'programm2' from type 'volatile void()' to type 'void*'
if (Taskcount==1) {Taskcount++;goto *programm2;}
^
Ошибка компиляции.
Arduino IDE 1.6.4, OS Kubuntu 14.04
Кто знает как это победить? Или стоит пойти иным путем? Каким если не секрет?
Тоже столкнулся с таким же, только на 1.5.8.
ради эксперимента взял версию 1.0.5. и оно норм откомпилировалось (пришлось в текст скетча добавить
void setup2()
Или стоит пойти иным путем? Каким если не секрет?
Да. Автоматное программирование.
работает, но норм пашут только простенькие функции типа могтать диодом/спамить и подобное.. tone() не пашет при этом.