Lemist 0 20 мая, 2010 Опубликовано 20 мая, 2010 · Жалоба Попробовал я соорудить тестовую задачу под управлением uC-OS II. Сварганил такой небольшой проект под LPC1758, прицепил к нему программатор J-Link и все это в среде EWARM 5.5 откомпилил. ВСе откомплилось, слинковалось и даже залилось в микроконтроллер. Все хорошо, но после отработки OSStart() все это уходит в подполье и задача TaskKBD никак себя не проявляет. Похоже, ОС в нее не входит и вообще контекст не переключает. Может я что-то не учел? Что-то очень важное... Посмотрите проект плиз. Test_OS.zip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrewlekar 0 21 мая, 2010 Опубликовано 21 мая, 2010 · Жалоба Стеки IDLE и STAT не маловаты? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Lemist 0 21 мая, 2010 Опубликовано 21 мая, 2010 · Жалоба Стеки IDLE и STAT не маловаты? Кто знает, может, конечно, и 128 байтов мало, но это ведь сам автор Jean J. Labrosse такие размеры установил, вряд ли всем, кто работает с uC/OS-II, пришлось эти размеры менять - по крайней мере, где-нибудь сведения о таком бы сохранились. Думаю, что не может быть дело в этом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrewlekar 0 21 мая, 2010 Опубликовано 21 мая, 2010 · Жалоба Вроде бы в коде указано по 40 OS_STK размер стеков. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Lemist 0 25 мая, 2010 Опубликовано 25 мая, 2010 · Жалоба Все оказалось гораздо проще. В исходниках (файл os_cpu_a.asm) в обработчике системного прерывания OS_CPU_PendSVHandler оказалась закомментированной строка CBZ R0, OS_CPU_PendSVHandler_nosave ; Skip register save the first time и программа, естественно, по первому разу улетала далеко-далеко, потому что в первый раз PSP - нуль. Убрал комментарий, и все заработало... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться