Как выйти из кода Contiki?
Пожалуйста, найдите ниже прикрепленный снимок моего кода вывода. Каждый раз, когда я выполняю свой код, я должен использовать ctrl + c (cmd + c) для выхода. Есть ли какая-либо функция в библиотеке Contiki, которая поможет мне решить эту проблему? Заранее спасибо!!!
1 ответ
ОС Contiki предназначена для автономного запуска программ на небольших устройствах. Такие программы обычно выполняются в бесконечном цикле в ожидании входных сигналов датчика или запланированных тайм-аутов, поэтому нет необходимости в выходе. Вы, вероятно, спрашиваете об особом случае, когда вы хотите выполнить некоторый код непосредственно на ПК с Linux, а затем уничтожить программу вместе со всей ОС Contiki, которая в данном случае представляет собой отдельный процесс Linux. Поэтому нажатие Ctrl+C является правильным способом сделать это.
Поскольку ваша программа скомпилирована и связана вместе с Contiki, вы можете добавить в свою программу exit() для выхода из Contiki, если вы действительно хотите пропустить Ctrl+C:
include <stdlib.h>
...
PROCESS_THREAD(hello_world_process, ev, data)
{
PROCESS_BEGIN();
printf("Hello, world\n");
exit(0);
PROCESS_END();
}
Но это полезно только тогда, когда вы запускаете программу изначально; на встроенном устройстве вы, вероятно, захотите сброс системы, а не выход, который оставляет устройство "мертвым".