реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> слетает память у Atmega16, слетает память у Atmega16
messenger
сообщение Sep 27 2013, 18:00
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 361
Регистрация: 23-03-07
Пользователь №: 26 457



Сталкнулся с проблемой у AtMega16.
Два устройств из партии 18 шт. первое где то через год, второе через 3 года перестали правильно работать.
Причина оказалась в том, что изменилось содержание памяти.
В ПО функции записии есть но они используются один раз при выпуске (калибровочные константы) и в процессе эксплуатации выполнить запись в
память нельзя - стоит проверка кодовым словом.
Одна константа стала близкой к 0, втора и вовсе не читается (из ПО).
Из за чего мог произойти сбой? Каие есть способы понять что случилось, если значения параметров хранящихся в памяти всех приборах разные?
ПО разрабатывалось в СodeVision.
Подскажите кто значет. Спаибо.
Go to the top of the page
 
+Quote Post
kovigor
сообщение Sep 27 2013, 19:00
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(messenger @ Sep 27 2013, 21:00) *
Из за чего мог произойти сбой?

С питанием что-то. Или иголочки в линии питания, или незадемпфирована первичка сетевого трансформатора на 50 Гц, питающего устройство. Еще вариант - висящие в воздухе и в программе оставленные "на произвол судьбы" неиспользуемые выводы JTAG или GPIO (их надо бы настроить на вывод лог. нуля) ...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 27 2013, 19:25
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(messenger @ Sep 27 2013, 22:00) *
Одна константа стала близкой к 0, втора и вовсе не читается (из ПО).

То есто ПО цело, а изменились константы, записанные при производстве?
Go to the top of the page
 
+Quote Post
messenger
сообщение Sep 27 2013, 20:53
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 361
Регистрация: 23-03-07
Пользователь №: 26 457



Цитата(aaarrr @ Sep 27 2013, 23:25) *
То есто ПО цело, а изменились константы, записанные при производстве?

так и есть, ПО рабочее
примечание: константы питались из ПО
питание 5V от USB
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 27 2013, 21:17
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(messenger @ Sep 27 2013, 22:00) *
Одна константа стала близкой к 0, втора и вовсе не читается (из ПО).

Можно пояснить, что значит "не читается"? И что случилось с остальными данными той же страницы?
Go to the top of the page
 
+Quote Post
kovigor
сообщение Sep 27 2013, 21:31
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(messenger @ Sep 27 2013, 23:53) *
питание 5V от USB

Схемку питания покажите ...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 27 2013, 21:35
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(kovigor @ Sep 28 2013, 01:31) *
Схемку питания покажите ...

Питание питанием, да откуда "иголочке" знать, где код, а где константы? Разве что в момент записи последних с питанием что-то было не так, что сказалось спустя время.
Go to the top of the page
 
+Quote Post
kovigor
сообщение Sep 27 2013, 21:51
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(aaarrr @ Sep 28 2013, 00:35) *
да откуда "иголочке" знать, где код, а где константы?

Согласен. Еще бы уточнить, где эти константы записаны - во Flash или в EEPROM. Впоследнем случае из-за ошибки в программе прибор может вместо одной записи константы эту самую запись зациклить, в результате EEPROM портится ...
Go to the top of the page
 
+Quote Post
messenger
сообщение Sep 28 2013, 06:42
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 361
Регистрация: 23-03-07
Пользователь №: 26 457



Цитата(kovigor @ Sep 28 2013, 01:51) *
Согласен. Еще бы уточнить, где эти константы записаны - во Flash или в EEPROM. Впоследнем случае из-за ошибки в программе прибор может вместо одной записи константы эту самую запись зациклить, в результате EEPROM портится ...

Записаны в EEPROM. Один раз при выпуске. Доступ к этой функции пользователю закрыт.
От чего это может произойти "из-за ошибки в программе прибор может вместо одной записи константы эту самую запись зациклить, в результате EEPROM портится"?

Питание прямо от USB. Паралельно 0,1 мкФ.

Сообщение отредактировал messenger - Sep 28 2013, 06:42
Go to the top of the page
 
+Quote Post
Santy
сообщение Sep 28 2013, 07:17
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 49
Регистрация: 30-10-07
Пользователь №: 31 879



Рекомендуется хранить константы во FLASH- памяти, если они не меняются во время работы программы.
Меры предосторожности при работе с EEPROM хорошо написаны например в книге А.В. Евстефеев "Микроконтроллеры AVR семейств Tiny и Mega фирмы Atmel" см. стр 41.

Сообщение отредактировал Santy - Sep 28 2013, 07:18
Go to the top of the page
 
+Quote Post
messenger
сообщение Sep 28 2013, 09:03
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 361
Регистрация: 23-03-07
Пользователь №: 26 457



При включении прибор читает данные из EEPROM во Flash и работает в процессе только с Flash. В процессе работы прибора запись в EEPROM не проводится.

Книгу обязательно посмотрю.
Go to the top of the page
 
+Quote Post
WHALE
сообщение Sep 28 2013, 09:32
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768



Цитата(messenger @ Sep 28 2013, 13:03) *
При включении прибор читает данные из EEPROM во Flash и работает в процессе только с Flash. В процессе работы прибора запись в EEPROM не проводится.


читает данные из EEPROM во Flash-это навеное очепятка,а вы имели в виду вместо Flash ОЗУ?


--------------------
"Hello, word!" - 17 errors 56 warnings
Go to the top of the page
 
+Quote Post
ArtemKAD
сообщение Sep 28 2013, 10:22
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 508
Регистрация: 26-06-06
Из: Киев
Пользователь №: 18 364



Цитата(messenger @ Sep 27 2013, 23:53) *
так и есть, ПО рабочее
примечание: константы питались из ПО

Вот с этого и надо было начинать...


Цитата
В процессе работы прибора запись в EEPROM не проводится.

А когда и чем производится? В программе есть хоть одна процедура записи в eeprom ?
Go to the top of the page
 
+Quote Post
zombi
сообщение Sep 28 2013, 10:25
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(messenger @ Sep 28 2013, 09:42) *
Записаны в EEPROM. Один раз при выпуске. Доступ к этой функции пользователю закрыт.

Каким образом закрыт? А может кто случайно (нарочно) открыл
Go to the top of the page
 
+Quote Post
ArtemKAD
сообщение Sep 28 2013, 10:25
Сообщение #15


Профессионал
*****

Группа: Свой
Сообщений: 1 508
Регистрация: 26-06-06
Из: Киев
Пользователь №: 18 364



Цитата
Доступ к этой функции пользователю закрыт.

Это как? Процедура в программе есть или ее нет? Как определяется "Один раз при выпуске."
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 8th July 2025 - 10:01
Рейтинг@Mail.ru


Страница сгенерированна за 0.01479 секунд с 7
ELECTRONIX ©2004-2016