![](https://electronix.ru/forum/uploads/set_resources_23/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
![](https://electronix.ru/forum/uploads/set_resources_23/84c1e40ea0e759e3f1505eb1788ddf3c_default_photo.png)
razrab83
-
Постов
383 -
Зарегистрирован
-
Посещение
-
Победитель дней
3
Сообщения, опубликованные razrab83
-
-
-
Нужно отлаживаться со стопом. Процессор stm32L051. Пользуюсь халом.
ухожу в стоп так
... __HAL_RCC_DBGMCU_CLK_ENABLE();//разешаем тактирование HAL_DBGMCU_EnableDBGStopMode();//разрешаетм отладку со стопом HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);// уход в стоп ...
Программа входит в HAL_PWR_EnterSTOPMode() и не задерживаясь выходит. Хота прерывания не срабатывают. (хотя все не проверял.... но в основные обработчики прерываний не попадаю)
если закоментить строки
... //__HAL_RCC_DBGMCU_CLK_ENABLE();//разешаем тактирование DBG //HAL_DBGMCU_EnableDBGStopMode();//разрешаетм отладку со стопом HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);// уход в стоп ...
То нормально захожу в стоп моде и проц засыпает. Вроде раньше работал стоп с отладкой. в какеот время перестал. может я что-то сломал. не могу понять куда капнуть.
проблема захватить семафор более приоритетной ниткой
в FreeRTOS
Опубликовано · Пожаловаться
а при отпускании мьютекса вызывается планировщик? Если нет, то планировщик вызывается в системные тики, и при принудительном вызове (например в прерывании). Возможна ситуация, когда между 2 тиками слабая нитка отпускает мьютекс и тут же захватывает. Т.к. планировщик не вызывается, то переключение на приоритетную задачу не происходит.