[uquote="ARV",url="/forum/viewtopic.php?p=4798512#p4798512"]Блин, без суперлупа МК даже остановить невозможно, не сняв питание. На сколько мне известно, "нормальное" завершение main все равно кончается бесконечным циклом при запрещённых прерываниях...
И в РТОСах тоже суперлуп есть, как минимум, в планировщике.[/uquote]
Под main() понимается та функция, с которой МК стартует. А не планировщик. Поэтому в файле main.c действительно может отсутствовать конструкция while(1). Правда это еще не означает отсутствие бесконечного цикла, поскольку код может по тем или иным причинам все таки дойти до последней инструкции в main() и тогда МК нужно ресетить, что бы повторно инициализировать. Таким образом цикл все таки есть. Но не с помощью while(1).
А так в РТОС суперлуп есть не только в планировщике, но и в каждой задаче.
Но поскольку они могут быть написаны не в файле main.c, то действительно в РТОС в этом файле (при определенных условиях) отсутствует суперлуп.
[uquote="Transformer-V",url="/forum/viewtopic.php?p=4798497#p4798497"]в данном поделии это близко не матрица(хоть и внешне похожа). Матрицей она будет когда каждая строка или колонка будет иметь вход.[/uquote]
Нет. Это классическая матрица. И в ОЗУ ее образ тоже будет трехмерным массивом. Как она управляется - дело десятое.
Обсуждаемая матрица в 256 диодов имеет частоту полной регенерации 120 fps. Вполне себе неплохо для такой матрицы.
В экранах HD драйверы обслуживают такие светодиоды в вертикальных столбцах. Обычно эти драйверы реализованы на FPGA.
[uquote="Transformer-V",url="/forum/viewtopic.php?p=4798497#p4798497"]NZR то ещё Г..., лучше использовать адресные светодиоды с SPI шиной.[/uquote]
Назови мне тип такого адресного светодиода. Было бы интересно узнать.
[uquote="igorg1",url="/forum/viewtopic.php?p=4798431#p4798431"]И даже твоя кривая писанина не может называться РТОС - потому что помимо планировщика там ой как много что надо будет написать
FREERTOS уже лет 15-ть до ума доводят.
А Зефир только года 3 назад на ноги встал
Или ты уверяешь что КРАМRTOS ты за 2 недели напишешь???[/uquote]
Речь не шла о вытесняющей РТОС универсального применения. Речь шла о вытесняющей РТОС, задачей которой является управление задачами, среди которых имеются блокирующие и синхронизация их доступа к критическим секциям кода, данным и ресурсам.
Вопросы отладки и мониторинга меня не интересуют. Они важны для тех, кто пользуется РТОС как "черным ящиком".
Про время необходимое для этого я ни слова не говорил. 2 недели ты высосал из своего заскорузлого пальца.
[uquote="igorg1",url="/forum/viewtopic.php?p=4798431#p4798431"]соскочил с темы что я не могу в отладке при наличии ОТЛАДЧИКА заморозить НУЖНУЮ мне периферию, а также через JTAG передавать что мне надо.[/uquote]
Ты очередной раз соврал. Речь не шла о невозможности морозить периферию вообще. Это элементарно делается в настройках дебаггера. Речь шла о невозможности морозить ШИМ из-за необходимости наблюдать за разверткой массива синуса этим самым дебаггером. Нельзя наблюдать за тем, чего нет.
[uquote="igorg1",url="/forum/viewtopic.php?p=4798431#p4798431"]И если ты такой умный, рассуждая про отсутствие суперЛупа в коде для дсПИКа (да вообще хоть на каком камне), без РТОС - покажи мне хоть один пример кода, где будет отсутствовать while (1)[/uquote]
Ты, Игорёк, как настоящий чурка "я твой дом труба шатал"...
Где я утверждал, что код построенный на суперлупе может не иметь суперлупа?
Явного суперлупа нет только в main() вытесняющей РТОС.
Кстати, с кооперативной РТОС все совсем не так. Она имеется даже для PIC10 c 12-битной адресной шиной и без прерываний. Занимает около 10 строк кода.
http://www.pic24.ru/doku.php/en/osa/ref ... tion/intro