XGoblinX 0 5 апреля, 2013 Опубликовано 5 апреля, 2013 · Жалоба Всем доброго времени суток! Подскажите, пожалуйста, как можно перезагрузить немедленно STM32Fxxx? Пусть перенастраивать Вотчдог и ждать резета, что-то не слишком нравится. Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 5 апреля, 2013 Опубликовано 5 апреля, 2013 · Жалоба Самый немедленный способ - дёрнуть ножку RST. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
drum1987 0 5 апреля, 2013 Опубликовано 5 апреля, 2013 · Жалоба Есть функция static __INLINE void NVIC_SystemReset(void) { SCB->AIRCR = ((0x5FA << SCB_AIRCR_VECTKEY_Pos) | (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | SCB_AIRCR_SYSRESETREQ_Msk); /* Keep priority group unchanged */ __DSB(); /* Ensure completion of memory access */ while(1); /* wait until reset */ } находится в core_cm3.h Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vlad_new 1 5 апреля, 2013 Опубликовано 5 апреля, 2013 · Жалоба *(u32*)(0xE000ED0C)=0x05FA0004; // Программный RESET Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
XGoblinX 0 6 апреля, 2013 Опубликовано 6 апреля, 2013 · Жалоба Друзья! Спасибо огромное! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 6 апреля, 2013 Опубликовано 6 апреля, 2013 · Жалоба Вот только ощущение такое складывается, что при этом "дергается" нога RESET. И если по каким-то причинам, потенциал на ней не упадет до нуля, сброса не произойдет... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 6 апреля, 2013 Опубликовано 6 апреля, 2013 · Жалоба *(u32*)(0xE000ED0C)=0x05FA0004; // Программный RESET Обожаю такие исходники:) Комментарий, кстати, тут излишен, т.к. видя это сразу понимаешь, что эта строчка вызывает что-то ужасное (ресет как-минимум) :beer: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SSerge 6 6 апреля, 2013 Опубликовано 6 апреля, 2013 · Жалоба Вот только ощущение такое складывается, что при этом "дергается" нога RESET. И если по каким-то причинам, потенциал на ней не упадет до нуля, сброса не произойдет... Совершенно верно. Это такая фишка STM, позволяет сбросить не только процессор, но и ещё что-нибудь на плате. Но требует аккуратности при подключении других источников ресета. Внешний супервизор питания, например, должен быть или с открытым коллектором или подключаться через резистор. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 8 апреля, 2013 Опубликовано 8 апреля, 2013 · Жалоба Интересно, а при ресете по вочдогу этот механизм продолжает функционировать? Я имею ввиду дёрганье ножки ресет... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SSerge 6 8 апреля, 2013 Опубликовано 8 апреля, 2013 · Жалоба Интересно, а при ресете по вочдогу этот механизм продолжает функционировать? Я имею ввиду дёрганье ножки ресет... Судя по картинкам в реф. мануалах - да, у всего семейства так. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 8 апреля, 2013 Опубликовано 8 апреля, 2013 · Жалоба Это приятно и логично. Спасибо за информацию! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться