logelectronix 0 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Нужен МК способный запуститься не более чем за 1 мс. Это основное требование. В общем случае производитель не особо важен (будь то Atmel, NXP, ST; 8 или 32 битный - особо нет разницы). Для меня сейчас важно выяснить можно ли безопасно и быстро запустить МК без сюрпризов. AVR, например может прошивку поломать если напряжение еще не успело дойти до приемлемого уровня. Тот-же AVR (не знаю во всех или нет) есть настройка, отвечающая за задержку включения. Можно поглядеть вот тут: Avr Fuse Calc. Минимальное время включения, которое можно получить при высокочастотном внешнем резонаторе составит 1K CK + 0 ms, т.е. 1024 периода колебания генератора. Так-то выглядит неплохо - даже при 16 МГц получим 64 мкс задержки. Но вот как это скажется на работе? Может он будет через раз включаться или еще что. Кто-нибудь задавался этим вопросом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AleksBak 0 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Нужен МК способный запуститься не более чем за 1 мс. Это основное требование. ... СТМ-овские (да и другие тоже) после включения сразу стартуют и выполняют код. Если не стартуют и не выполняют - значит неисправны. Логично. А то что они в начале работы ждут запуска HSE генератора, то не означает, что они не могут выполнять какой-то другой код в это время. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 185 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Нужен МК способный запуститься не более чем за 1 мс. Это основное требование. От какого и до какого события время старта считаете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Baser 5 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба AVR, например может прошивку поломать если напряжение еще не успело дойти до приемлемого уровня. Чтобы такое не случалось, во всех современных МК есть блоки POR (power on reset) и BOR (brown out reset), которые не дают МК работать при низком питании. Если их нет, обязательно применение внешних супервизоров. Для меня сейчас важно выяснить можно ли безопасно и быстро запустить МК без сюрпризов. Можно. Но нужно применять МК, которые позволяют на ходу переключать тактирование ядра и после сброса всегда аппаратно стартуют на встроенном RC генераторе. Тогда время старта микросекунды (естественно после роста питания до срабатывания блока POR). Из точно известных мне, это MSP430 и STM32. Наверное есть и много других. Минимальное время включения, которое можно получить при высокочастотном внешнем резонаторе составит 1K CK + 0 ms, т.е. 1024 периода колебания генератора. Так-то выглядит неплохо - даже при 16 МГц получим 64 мкс задержки. Но вот как это скажется на работе? Может он будет через раз включаться или еще что. Если МК сразу начинает работать на внешнем резонаторе, то стабилизация колебаний этого резонатора занимает миллисекунды. Обычно не менее 10 мс. А надежнее всего подождать еще 50 мс уже после того, как установится аппаратный флаг готовности внешнего резонатора к работе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 168 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Например, Microchip от внешнего или внутреннего RC-генератора работает сразу, от внутреннего кремниевого — через 10 мкс. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Если МК сразу начинает работать на внешнем резонаторе, то стабилизация колебаний этого резонатора занимает миллисекунды. Обычно не менее 10 мс. А надежнее всего подождать еще 50 мс уже после того, как установится аппаратный флаг готовности внешнего резонатора к работе. Ох уж эти сказочники. Вот как выглядит старт у Kinetis. Как видно аккурат через 1 мс после стабилизации питания происходит включение программы . Это специфицировано в даташите. Это время на разгон внутреннего RC. И еще через 1 мс запуск на полной скорости. Это время на разгон кварца. Программной подстройкой емкостей на кварце можно включение полной скорости еще ускорить до 0.6 мс. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Baser 5 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Ох уж эти сказочники. Вот как выглядит старт у Kinetis. Как видно аккурат через 1 мс после стабилизации питания происходит включение программы . Это специфицировано в даташите. Это время на разгон внутреннего RC. И еще через 1 мс запуск на полной скорости. Это время на разгон кварца. Программной подстройкой емкостей на кварце можно включение полной скорости еще ускорить до 0.6 мс. Частный случай с любимым вами Kinetis и хорошим кварцем с подобранными емкостями нагрузки на природу вещей не влияет :) У MSP430F2xxx время просыпания из самого глубокого слипа LPM4 (когда ВСЕ отключено) не более 1 мкс. Это включает запуск внутреннего RC генератора и начало работы программы. Это при частоте >=12 МГц. На частоте 1 МГц не более 2 мкс. А когда у кварца слегка задраны емкости для более устойчивой работы в условиях сильных помех + заказчик закупит кварцы неизвестно с какой помойки, то запуск в районе 10 мс - это нормальное явление. Так что, если устройству спешить некуда, так и гнаться за миллисекундами начала работы не следует, если не хотите проблем при эксплуатации. Ну и где тут сказки? B) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба У MSP430F2xxx время просыпания из самого глубокого слипа LPM4 (когда ВСЕ отключено) не более 1 мкс. Кто-то спрашивал про просыпание? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Baser 5 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Кто-то спрашивал про просыпание? А чем по вашему отличается время просыпания из режима, когда ВСЕ динамические процессы остановлены, от включения по подаче питания, когда питание уже стабилизировалось и POR снимает внутренний сброс с ядра и периферии? Никаких PLL, никаких конвейеров, чистый статический дизайн. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба А чем по вашему отличается время просыпания из режима, когда ВСЕ динамические процессы остановлены, Эт вы сами отвечайте на такие вопросы. Но между тем посмотрите на параметр td(BOR) в даташите на ваш MSP. Там написано 2 мс!!! Курям на смех. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Baser 5 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Но между тем посмотрите на параметр td(BOR) в даташите на ваш MSP. Там написано 2 мс!!! Ну да, забыл, что он не отключаемый и довольно длительный. через 1 мс после стабилизации питания происходит включение программы. ... Это время на разгон внутреннего RC. Однако ваша фраза "Это время на разгон внутреннего RC" тоже выглядит достаточно живописно. Это время на дополнительную стабилизацию питания, а RC разгоняется за пару периодов. Как я понимаю, к остальным моим "сказкам" претензий нет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Конечно, RC не разгоняется. Сразу генерит. Напряжение на конденсаторе выросло, инвертор перекинулся, напряжение пошло спадать, спало, инвертор перекинулся... и т.д. То, что частота пока не такая, как в установившемся режиме, так потому она и сделана низкой. Так что, как только питание до рабочего выросло, считайте, МК готов к работе. Смотря к какой, понятно. По USART пожалуй, посылать-принимать не надо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Так что, как только питание до рабочего выросло, считайте, МК готов к работе. Да, здесь фантазировать можно сколько угодно. Но логика говорит, что в течении 1 мс RC не готов. Разгоняется ли он там, возгоняется, или разогревается нам абсолютно не важно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Да, здесь фантазировать можно сколько угодно. Но логика говорит, что в течении 1 мс RC не готов. Разгоняется ли он там, возгоняется, или разогревается нам абсолютно не важно. Протому что после установления питания еще есть одновибратор, на примере STM32F207 TRSTTEMPO Reset temporization 0.5 1.5 3.0 ms The reset temporization is measured from the power-on (POR reset or wakeup from VBAT) to the instant when first instruction is read by the user application code. Защитились от сильно неточной частоты. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Защитились от сильно неточной частоты. Ну опять же это только домыслы от чего защитились. Сильно неточная частота, или запаздывание начала генерации, или недостаточная аплитуда, иль это некая защита от фрикерских атак на систему тактирования мы ведь не знаем. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться