zorromen 1 20 февраля, 2020 Опубликовано 20 февраля, 2020 · Жалоба Здравствуйте, кто еще не пользовался данной программой от SEGGER тот много потерял. Все хорошо, удобно, но если использовать как для NO_OS, но если нужно использовать с STM32 FREERTOS10 от CubeMX, тот патч рельно отличается от того что идет от ST, только 2 файла из 5 подходят. Кто как патчит, как народ выкручивается? Я написал для себя патчер на лазарусе. Для M3 и M4F ядер, все прикручивал чисто к CubeMX. Инструкция 1. Кидаем в \Middlewares\Third_Party проекта Там кучка батников и мелких консольных прог, каждая патчит свой файл, поэтому не пугаемся. 2. Т.к. я такой еще программер, поэтому делаем по индуски, следующее, FREERTOS_Config.exe копируем в корень проекта И делаем на него ярлык и его копируем в папку SEGGER_FREERTOS_Patcher, это для батника чтобы легче запускать. 3. Запускаем Пропачтить M3.bat или Пропачтить M4.bat, готово, но учтите запускать один раз после генерации проекта, иначе если 10 раз нажать, то 10 раз пропатчит, это ерунда будет. Добавил батники Backup_In.bat и Backup_Out.bat это для бекапа 5 файлов в папку, и обратно в FREERTOS, ну это если кому нужно. Прога патчит абсолютно все что меняет CubeMX. Настройка муторная, но потом запускаете батник и готово. Думаю тем кто занимается FREERTOS будет интересно. SEGGER_FREERTOS_Patcher.rar Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MasterElectric 0 21 февраля, 2020 Опубликовано 21 февраля, 2020 · Жалоба Интереснее было бы с исходниками. Я хотел бы изучить возможности этой SysnemView и хотел бы прикрутить к своему диспетчеру задач. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zorromen 1 21 февраля, 2020 Опубликовано 21 февраля, 2020 · Жалоба Патч для FREERTOS я сделал, все как указано в официальном патче только с поправкой на ветер. И работает он только для него. Для вас можно посмотреть в сторону NoOS, и там можно сделать тоже самое, читаем документацию от SysnemView, там что-то с создать таск и все такое, сам когда-то такое писал чтобы видеть как работают свои функции, ну и самое мое любимое это смотреть за работой прерываний. Особенно находил визуально косяки, что требовали изменения приоритетов. Например, для прерываний конструкция void DMA1_Channel5_IRQHandler(void) { SEGGER_SYSVIEW_RecordEnterISR(); SEGGER_SYSVIEW_RecordExitISR(); } Ищем в исходниках _cbSendSystemDesc в конфигах segger, добавляем I#31=DMA1_5 UART RX И теперь в SystemView при прерывании 31 дается имя DMA1_5 UART RX static void _cbSendSystemDesc(void) { SEGGER_SYSVIEW_SendSysDesc("N="SYSVIEW_APP_NAME",D="SYSVIEW_DEVICE_NAME",O=FreeRTOS"); SEGGER_SYSVIEW_SendSysDesc("I#15=SysTick,I#31=DMA1_5 UART RX"); } Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sst78rus 0 23 февраля, 2020 Опубликовано 23 февраля, 2020 · Жалоба Вот пример с NoOS под F4 https://github.com/Sergey1560/stm32_systemview Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться