messenger 0 27 сентября, 2013 Опубликовано 27 сентября, 2013 · Жалоба Сталкнулся с проблемой у AtMega16. Два устройств из партии 18 шт. первое где то через год, второе через 3 года перестали правильно работать. Причина оказалась в том, что изменилось содержание памяти. В ПО функции записии есть но они используются один раз при выпуске (калибровочные константы) и в процессе эксплуатации выполнить запись в память нельзя - стоит проверка кодовым словом. Одна константа стала близкой к 0, втора и вовсе не читается (из ПО). Из за чего мог произойти сбой? Каие есть способы понять что случилось, если значения параметров хранящихся в памяти всех приборах разные? ПО разрабатывалось в СodeVision. Подскажите кто значет. Спаибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 5 27 сентября, 2013 Опубликовано 27 сентября, 2013 · Жалоба Из за чего мог произойти сбой? С питанием что-то. Или иголочки в линии питания, или незадемпфирована первичка сетевого трансформатора на 50 Гц, питающего устройство. Еще вариант - висящие в воздухе и в программе оставленные "на произвол судьбы" неиспользуемые выводы JTAG или GPIO (их надо бы настроить на вывод лог. нуля) ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 27 сентября, 2013 Опубликовано 27 сентября, 2013 · Жалоба Одна константа стала близкой к 0, втора и вовсе не читается (из ПО). То есто ПО цело, а изменились константы, записанные при производстве? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
messenger 0 27 сентября, 2013 Опубликовано 27 сентября, 2013 · Жалоба То есто ПО цело, а изменились константы, записанные при производстве? так и есть, ПО рабочее примечание: константы питались из ПО питание 5V от USB Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 27 сентября, 2013 Опубликовано 27 сентября, 2013 · Жалоба Одна константа стала близкой к 0, втора и вовсе не читается (из ПО). Можно пояснить, что значит "не читается"? И что случилось с остальными данными той же страницы? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 5 27 сентября, 2013 Опубликовано 27 сентября, 2013 · Жалоба питание 5V от USB Схемку питания покажите ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 27 сентября, 2013 Опубликовано 27 сентября, 2013 · Жалоба Схемку питания покажите ... Питание питанием, да откуда "иголочке" знать, где код, а где константы? Разве что в момент записи последних с питанием что-то было не так, что сказалось спустя время. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 5 27 сентября, 2013 Опубликовано 27 сентября, 2013 · Жалоба да откуда "иголочке" знать, где код, а где константы? Согласен. Еще бы уточнить, где эти константы записаны - во Flash или в EEPROM. Впоследнем случае из-за ошибки в программе прибор может вместо одной записи константы эту самую запись зациклить, в результате EEPROM портится ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
messenger 0 28 сентября, 2013 Опубликовано 28 сентября, 2013 (изменено) · Жалоба Согласен. Еще бы уточнить, где эти константы записаны - во Flash или в EEPROM. Впоследнем случае из-за ошибки в программе прибор может вместо одной записи константы эту самую запись зациклить, в результате EEPROM портится ... Записаны в EEPROM. Один раз при выпуске. Доступ к этой функции пользователю закрыт. От чего это может произойти "из-за ошибки в программе прибор может вместо одной записи константы эту самую запись зациклить, в результате EEPROM портится"? Питание прямо от USB. Паралельно 0,1 мкФ. Изменено 28 сентября, 2013 пользователем messenger Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Santy 0 28 сентября, 2013 Опубликовано 28 сентября, 2013 (изменено) · Жалоба Рекомендуется хранить константы во FLASH- памяти, если они не меняются во время работы программы. Меры предосторожности при работе с EEPROM хорошо написаны например в книге А.В. Евстефеев "Микроконтроллеры AVR семейств Tiny и Mega фирмы Atmel" см. стр 41. Изменено 28 сентября, 2013 пользователем Santy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
messenger 0 28 сентября, 2013 Опубликовано 28 сентября, 2013 · Жалоба При включении прибор читает данные из EEPROM во Flash и работает в процессе только с Flash. В процессе работы прибора запись в EEPROM не проводится. Книгу обязательно посмотрю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
WHILE 0 28 сентября, 2013 Опубликовано 28 сентября, 2013 · Жалоба При включении прибор читает данные из EEPROM во Flash и работает в процессе только с Flash. В процессе работы прибора запись в EEPROM не проводится. читает данные из EEPROM во Flash-это навеное очепятка,а вы имели в виду вместо Flash ОЗУ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
artemkad 53 28 сентября, 2013 Опубликовано 28 сентября, 2013 · Жалоба так и есть, ПО рабочее примечание: константы питались из ПО Вот с этого и надо было начинать... В процессе работы прибора запись в EEPROM не проводится. А когда и чем производится? В программе есть хоть одна процедура записи в eeprom ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 28 сентября, 2013 Опубликовано 28 сентября, 2013 · Жалоба Записаны в EEPROM. Один раз при выпуске. Доступ к этой функции пользователю закрыт. Каким образом закрыт? А может кто случайно (нарочно) открыл Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
artemkad 53 28 сентября, 2013 Опубликовано 28 сентября, 2013 · Жалоба Доступ к этой функции пользователю закрыт. Это как? Процедура в программе есть или ее нет? Как определяется "Один раз при выпуске." Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться