Мелкие вопросы по МК и ПЛИС.
- oleg63m
- Друг Кота
- Сообщения: 20132
- Зарегистрирован: Чт сен 01, 2011 12:53:27
- Откуда: ТьмуТаракания. Почетный житель подмостовья
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Для схемы на микроконтроллере прошивка это 99%
Аллах акбар
Аллах акбар
Шекспир сказал: Судить меня -дано лишь Богу, другим я укажу дорогу... https://natribu.org/
Я его полностью поддерживаю.
Программирую на Fuse AtmelAVR.
Я его полностью поддерживаю.
Программирую на Fuse AtmelAVR.
Re: Мелкие вопросы по МК и ПЛИС.
У ATtiny13A в документации указано:
Operating Voltage: – 1.8 – 5.5V
Maximum Operating Voltage - 6.0V
Графики режимов работы заканчиваются на 5.5 Вольтах. А что в промежутке 5.5 - 6 Вольт? Что это за режим работы. Означает ли он деградацию параметров со временем сверх паспортных?
Operating Voltage: – 1.8 – 5.5V
Maximum Operating Voltage - 6.0V
Графики режимов работы заканчиваются на 5.5 Вольтах. А что в промежутке 5.5 - 6 Вольт? Что это за режим работы. Означает ли он деградацию параметров со временем сверх паспортных?
- oleg63m
- Друг Кота
- Сообщения: 20132
- Зарегистрирован: Чт сен 01, 2011 12:53:27
- Откуда: ТьмуТаракания. Почетный житель подмостовья
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Это допустимое напряжение, при котором МК гарантированно еще не придет белый пушистый лисенок. параметры для этого режима сами понимаете граничные, как говорится в "пределах допуска"
Шекспир сказал: Судить меня -дано лишь Богу, другим я укажу дорогу... https://natribu.org/
Я его полностью поддерживаю.
Программирую на Fuse AtmelAVR.
Я его полностью поддерживаю.
Программирую на Fuse AtmelAVR.
Re: Мелкие вопросы по МК и ПЛИС.
Я в свое время из-за дохлой КРЕНки подал на Тини2313 около 7В. Девайс сильно глючило, пока обнаружил прошло несколько секунд, но проц остался жив. Эксплуатация на 6В сами понимаете к чему приведет. Число "6В" из ДШ несет скорее информацию о критериях выбора супрессора (5-вольтовые при "срабатывании" ограничивают как раз до 6В где-то +допуски), ИМХО конечно.
***
Народ, скажите, а насколько случайно значение ОЗУ конкретной AVRки после включения питания?
Суть вопроса - можно ли использовать чтение из заведомо неинициализированной переменной, как начальный параметр для работы функций типа rand() и т. п. чтоб результат был более-менее случайным?
***
Народ, скажите, а насколько случайно значение ОЗУ конкретной AVRки после включения питания?
Суть вопроса - можно ли использовать чтение из заведомо неинициализированной переменной, как начальный параметр для работы функций типа rand() и т. п. чтоб результат был более-менее случайным?
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Нет, нельзя. гарантированных значений в памяти при включении конечно нет но и совершенно случайными их назвать очень трудно. Для рандома лучше брать число из EEPROM, которое каждый запуск изменять, да хоть тем же рандомом.
Re: Мелкие вопросы по МК и ПЛИС.
Я не хотел при включении/выключении лишний раз писать в EEPROM чтоб не сокращать ресурс.
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
ресурс EEPROM-а 100тыс. циклов. даже если дергать каждый час питание, когда он выработается?
Re: Мелкие вопросы по МК и ПЛИС.
Хватит на 10 лет...
Тогда следующий вопрос: в чем выражается исчерпание ресурса EEPROM микроконтроллеров AVR?
Загибается только одна, исчерпавшая свой ресурс, ячейка или же могут подпортиться соседние?
Ячейка просто теряет способность надежно хранить заряды? Но для генератора случайных чисел это должно быть в плюс - возникает случайность вида "стек-не стек заряд". Или возникают повреждения, снижающие надежность работы всего микроконтроллера?
Тогда следующий вопрос: в чем выражается исчерпание ресурса EEPROM микроконтроллеров AVR?
Загибается только одна, исчерпавшая свой ресурс, ячейка или же могут подпортиться соседние?
Ячейка просто теряет способность надежно хранить заряды? Но для генератора случайных чисел это должно быть в плюс - возникает случайность вида "стек-не стек заряд". Или возникают повреждения, снижающие надежность работы всего микроконтроллера?
Re: Мелкие вопросы по МК и ПЛИС.
Ресурс вырабатывается у стираемой страницы. У АВРок в EEPROM это, вроде, 1 байт.
А на счёт случайности - какая будет случайность, если всегда будут читаться "0" или "1" во всех или некоторых битах?
А на счёт случайности - какая будет случайность, если всегда будут читаться "0" или "1" во всех или некоторых битах?
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Да, исчерпание ресурса будет выражаться в том что ячейка не будет программироваться, программирование для EEPROM это запись "0". т.е. хочешь записать "0" а при последующем чтении получаешь "1", причем сначала оно начнет мерцать - то работает то нет.
Re: Мелкие вопросы по МК и ПЛИС.
Я думал, этот процесс медленный, не скачкообразный. Т. е. начинается утечка заряда, сначала он удерживается месяцы, потом недели, поскольку нет в мире совершенно одинаковых транзисторов, то какие-то разряды байта начинают "стекать", какие-то вполне нормально работают - отсюда случайность. В итоге дело заканчивается тем, что у меня ГПСЧ просто будет стартовать с одного значения при каждом включении питания - немножко некрасиво, но устройство все равно будет исправно работать. Кроме того, мне кажется, что случай "пишем 0, а читаем 1" асимптотический и врят ли когда будет достигнут (хоть день, но заряд продержится). Мне интересно, будет ли вызывать это какую-то внутреннюю ошибку, не позволяющую пользоваться процем или просто будет то что я написал?
Так?
Так?
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Умирает флеш однозначно, никаких "асимптотично". В процессе записи в ячейку, учавствуют просто огромные плотности энергии из-за того что ячейка очень маленькая, материал не выдерживает - разрушается, потом ячейку в один прекрасный момент просто пробивает, но те же самые энергии в другой раз могут просто пережечь образовавшуюся перемычку, еще пара записей, и ячейка становится безнадежной.
Re: Мелкие вопросы по МК и ПЛИС.
Ну в таком случае, эти энергии вполне могут подпортить (слегка или не слегка) соседние транзисторы, которые могут относиться к другим страницам или даже к элементам ЦП и периферии, т. е. выходит, что может загнуться вся микросхема...
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Нет, это врятли. Ячейки достаточно сильно изолированы друг от друга.
Re: Мелкие вопросы по МК и ПЛИС.
А питание либо шину дохлая ячейка не коротнет?
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Нет, для этого нужен целый микровзрыв. токи все же недостаточные чтобы расплавить шины - страдает только изоляция ячейки.
Re: Мелкие вопросы по МК и ПЛИС.
Проц - Тини2313. Написал в IAR AVR:
Протеус пишет, что "Interrupt generated and processor will reset after handling", в регистре WDTCR читается значение С8 - установлен флаг прерывания, но проц, хоть уср*сь, но не выходит на обработчик прерывания (в нем стоит точка останова).
В листинге проверил, команды присутствуют.
В чем дело?
Код: Выделить всё
WDTCR=0x18;
WDTCR=0x48;
//Разрешение прерываний
__enable_interrupt();
while (WDTCR & BIT(WDIE)); //ожидание прерывания от сторожевого таймера
//Обработчик
#pragma vector=WDT_vect
__interrupt void WDT_ISR()
{
rnd=TCNT0;
}Протеус пишет, что "Interrupt generated and processor will reset after handling", в регистре WDTCR читается значение С8 - установлен флаг прерывания, но проц, хоть уср*сь, но не выходит на обработчик прерывания (в нем стоит точка останова).
В листинге проверил, команды присутствуют.
В чем дело?

-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
А чего это он должен выходить на прерывания, если ты не установил режим работы вач-дога в режим генерации прерываний? По-дефолту, вачдог не при делах вообще либо просто вызывает аппаратный сброс(если биты конфигурации контроллера разрешают работу вач-дога) по тайм-ауту. конфигурировать его надо-с и разрешить прерывание от вач-дога. Толку-то, что ты общие прерывания разрешил...
Последний раз редактировалось Alexeyslav Вс авг 25, 2013 10:57:35, всего редактировалось 1 раз.
Re: Мелкие вопросы по МК и ПЛИС.
А я что сделал?
1) Разрешил изменение конфигурации
2) одновременно установил WDE и WDIE
Но прога не пашет(
aam писал(а):WDTCR=0x18;
WDTCR=0x48;
1) Разрешил изменение конфигурации
2) одновременно установил WDE и WDIE
Но прога не пашет(