Dr Zlo
Dr Zlo
есть хороший вариант с двойными ремнями, который на чпу часто используется
Dr Zlo
правда он кем-то запатентован, потому используется только в диайваях всяких)
Dr Zlo
нижний ремень приклеен к основанию
SetPf
Здравствуйте. Есть какой нибудь IDFшный способ при исключении синхронно накидать в COM и после этого уже свалится?
SetPf
Ну кроме кастомного драйвера конечно.
Andy
SetPf
Не, это читал.
Я имел ввиду уровнем повыше и с собственной реализацией вывода.
SetPf
Andy
SetPf
Типо статик ассерта в проде =)
Andy
SetPf
SetPf
Переменных каких записать и тп.
Yuriy
SetPf
Там во встроенном вывод переменных только при наличии GDB же возможен.
Andy
Yuriy
SetPf
Anonymous
Здравствуйте как поместить xml код в переменную string ?
Andy
Т.е. останавливает только необходимость в GDB?
Anonymous
В нем имеются символы "
SetPf
Так то я логированием кидаю все в уарт или теленет.
SetPf
А так - словил аварийное состояние. Записал куда надо в деталях и перезагрузился с чистой совестью.
Anonymous
<?xml version="1.0"?> Как ето поместить в переменную ?
Andy
SetPf
Потом можно прочитать и уже на SD кинуть
Anonymous
Anonymous
Ок
SetPf
И еще такой момент.
Я родной кордамп не разу не видал.
Он у меня включен и выводит в UART
SetPf
SetPf
SetPf
Все что вылезает.
Alexey
Попытка залезть куда-то нетуда в рам.
В системе уже предусмотрены макросы для обращения к регистрам в "soc.h".
REG_WRITE(_r, _v), REG_READ(_r)
SetPf
Alexey
Из-за такой ошибки не будет кор дампа. Через free легко сгенерировать ошибку с дампом
Alexey
ну и в менюконфиге должен быть включен вывод дампа в уарт
SetPf
Из-за такой ошибки не будет кор дампа. Через free легко сгенерировать ошибку с дампом
Однако это очень частая ошибка.
В плане если опдобным образом нельзя свалится с логом.
Вопрос.
Вот мне в функцию приходит херня, функция имеет проверку и это замечает.
Че мне с этим делать?
Писать кучу возвратов и проверок, логирований? (как собственно у меня и сейчас).
Или просто записать (я функция такая то, получила некое дерьмо при таких обстоятельства, пошло оно все к черту, ухожу в ребут).
Alexey
можно же асерт на аргументы использовать. Или написать свой со всякими там __FILE, __LINE
romanetz
А-ля стм32 )))
romanetz
Там куча ассертов и хард фолт прерывание
romanetz
Когда всё плохо
SetPf
С ассертом далеко не разгуляешься же, он только в уарт какой выводит?
Alexey
который подключен к stdio
Alexey
пишем свой асерт, вместо вывода в уарт пишем на флешку, например, потом ребут или хальт
SetPf
Вооо =)
SetPf
Я примерно про это и спрашивал изначально.
SetPf
SetPf
Конкретно интересует вопрос - как все остановить, что бы ничего не рыпалось, пока оно все выполняет
Alexey
idf_components/esp32 там смотрим panic.c, esp_assert.h и черпаем идеи )
SetPf
SetPf
такая фигня.
romanetz
Типа, только хедер есть, а функция - в .a?
SetPf
Да, хидер нашел, а Сфайла нет.
SetPf
Чет я думаю, легче голову не морочить.
В кастомном обработчике создать таск с высшим приоритетом и там все делать.
Alexey
Да это все и не нужно. Например, смотрим esp_err.h макро ESP_ERROR_CHECK. Можно создать похожий макрос только в нем поменять __ASSERT_FUNC на что-то свое. Далее уже в этой своей функции использовать примеры из panic.c чтобы остановить ядра, напечатать в уарт/флешку, ребутнуться/остановиться
Ivansuper
Кстати пока тут вопросы вокруг таких тем обсуждаются, спрошу свое -- как вызвать halt?
Ivansuper
Без ребута без всего, в нужном месте застопорить CPU
SetPf
В теории грохнуть все ватчдоги и запретить прерывания.
Ivansuper
Выше упомнули panic.c, в нем есть abort() с asm break. Но я пока не нашел хедер к нему
Alexey
Ivansuper
Alexey
ну дак код то можно оттуда позаимствовать
Alexey
а потом уже решить при каких условиях вызвать этот код
SetPf
Я вот его ща смотрю. И такое ощущение, что фриртос останавливается до.
SetPf
Может я чего то не допонимаю...
Alexey
SetPf
Ништяк =)
SetPf
Спасибо.
Anton
Добрый вечер всем. Подскажите пожалуйста. ESP-01 прошил EspEasy Mega. После того, как зарегистрировал ЕSP в локальной сети (выдан Ipшник), она перестала отображаться в списке сетевых устройств. Но по ip адресу получается заходить на веб еспэшки. Это нормально? Как ее сделать видимой?
Anton
Сорри за глупые вопросы) только начал осваивать сей чудный девайс)
Andy