Anub 0 17 июля, 2008 Опубликовано 17 июля, 2008 · Жалоба ATMEGA16 Как правильно программно ресетнуть МК? Пишу асм команду wdr - реакция ноль, может что куда нужно прописать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uriy 5 17 июля, 2008 Опубликовано 17 июля, 2008 · Жалоба В чужом проекте для мега128 видел вот такое asm volatile("jmp 0x0000"); нормально работает Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Anub 0 17 июля, 2008 Опубликовано 17 июля, 2008 · Жалоба В чужом проекте для мега128 видел вот такое asm volatile("jmp 0x0000"); нормально работает Очень интересная строка! Если бы мне такое было нужно я бы написал goto. Мне же ресет нужно сделать(все регистры обнулить) а не прыгнуть в начало программы... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
biDE 0 17 июля, 2008 Опубликовано 17 июля, 2008 · Жалоба Специальной команды на перезапуск МК нет. Можно влючить собаку и не сбрасывать ее. А если нужно выполнять перезапуск в кратчайшее время, можно один из выводов порта соединить со ногой сброса и команодовать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zltigo 1 17 июля, 2008 Опубликовано 17 июля, 2008 · Жалоба Как правильно... Избитый вопрос. Воспользуйтесь поиском по форуму. ..можно надежно "неможно", ибо при банальном прямом соединении не обеспечивается гарантированная длительность импульса сброса. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Deka 0 18 июля, 2008 Опубликовано 18 июля, 2008 · Жалоба Из всего прочитанного для себя извлёк 3 решения: 1. Переход на нуль с последующей процедурой инициализации ВСЕГО что можно (регистры, память и переферия). 2. Использовать собаку. 3. Использовать одну ножку для генерации сброса, а для формирования необходимой длительности придётся на ресете небольшую схемку спаять или ножкой дёргать супервизор, который сформирует необходимую длинну импульса сброса. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kuzmi4 0 18 июля, 2008 Опубликовано 18 июля, 2008 · Жалоба 2 Deka - юзайте собаку - меньше всего нужно будет паять и собирать - пару строчек кода займёт.. Поиском поисчите - кто-то приводил для меги , не помню какой... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DogPawlowa 0 18 июля, 2008 Опубликовано 18 июля, 2008 · Жалоба 2 Deka - юзайте собаку - меньше всего нужно будет паять и собирать - пару строчек кода займёт.. Поиском поисчите - кто-то приводил для меги , не помню какой... Под IAR вот такой: __disable_interrupt(); for(;;); Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Deka 0 19 июля, 2008 Опубликовано 19 июля, 2008 · Жалоба Эээээ... ну так я юзаю и нет проблем. Я просто для автора вопроса обобщил наверное все способы... А автор вопроса - не я! ;) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться