Дмитрий.
1) А, давайте, покажите, где там 90% ассемблерных вставок.
Не надо бросаться голословными утверждениями.
Весь код от и до написан на нормальном ST.
Надеюсь, у вас хватит совести не обсуждать, что "блок PRU_OUT1 состоит из одной единственной команды, и эта команда ассемблерная"?
Вот, реально. Найдите хоть одну ассемблерную инструкцию в самом блоке генератора импульсов.
Или найдите ассемблерную инструкцию в коде, который генерирует задержку.
Да хоть где.
Я без проблем могу завернуть оставшиеся LBCO/SBCO в нормальный ST код, но именно здесь я не хочу тратить время, т.к. здесь и сейчас именно эти 2 инструкции никому не мешают.
А вы увидели "asm" и давай говорить "смысл не великий".
2) Сейчас обсуждается не подкраска синтаксиса. Сейчас обсуждается вообще возможность PRU программирования, т.е. сама возможность задействования быстрых входов-выходов.
Если вы до сих пор не поняли, что ОВЕН никак не хочет разрешать работу с быстрыми входами-выходами, то я не знаю как ещё объяснить.
Каждый считает своим долгом сказать, что "ничего у вас не получится".
Давайте с другой стороны: у вас получился блок управления ШД? (ну или что вы там делали?) Покажете?
У Филоненко получился блок управления ШД?
Ещё у кого-нибудь получился?
Почитайте выше -- пишут, что даже просто fast PWM не работает как надо. Я уж не говорю про ШД с разгоном.
У меня -- ШД получился. Если считаете, что "можно было просто на ассемблере сделать, и не парить мозг с разработкой среды", то продолжайте так считать.
Но есть одно но: очень много кто считает, что "можно просто на ассемблере было написать", а как доходит до дела, то все сдуваются. Прямо реально, страна советов. Все только и делают, что советуют "как надо". А, если реально сделать, то всё. Сразу "да на один только ОЛ 5 человеколет ушло", да и вообще "разработка компилятора это 50 человеколет".
Почему-то никто из скептиков не учитывает, что среда УЖЕ есть. В ней УЖЕ можно писать программы, и не просто абы какие, а прямо те, которые давным-давно нужны на проектах: ШД, серво, вот это всё.
Это откуда взяли?
Код выполняется с частотой 150МГц -- это частота PRU ядра. Почти все команды занимают 1 такт.
Можно хоть 50МГц на быстрый выход выводить программой из двух команд "вкл-выкл-goto start".
Тут без понятия.