Глюк еепром атмега328р
- Войдите на сайт для отправки комментариев
Добрый, никто не сталкивался с глюками еепром атмега328р?
Есть прошивка, читаются - записываются данные (изредка). Вот я выставил себе там в ячейке памяти там значение температуры пусть 10 градусов. И при включении ее читаю стандартно EEPROM.read
Потом в какой-то момент включил. И бац уже там 40 градусов взялось. (я ничего не меняю, не делаю) - просто тупо вкл. выкл. изредка. - заметил в принципе такое при вкл.
Таких устройств на одинаковой прошивке создано десятками, до сих пор такого не было. И таких глючных уже точно пару есть устройств. Блоки питания, кварцы, ну понятно одинаковы по схеме, но понятно что из разных партий.
Может быть еепром внутри кристалла глючит? или может кварц примешан? фьюзы стандартные от ардуино уно, еепром сейв понятно не стоит.
нам все хрустальные шары переколотили. слепые мы.
Железо atmega328p - кварц на 16, стандартная обвязка - блоки питания 5в (норм. с фильтрами), + lcd 2004
Представим прошивка в loop чисто eeprom.read(0). И там было значение 10. И выводиться на экран.
Вот вкл- выкл. устройство. И там на какой-то раз уже читается значение 40. Вот, все стало читаться, там уже такое. Бывали ли у когото глюки еепром или может что-то влиять на такое. Например кварц. или фьюзы - ну например.
Бывали ли у когото глюки еепром или может что-то влиять на такое. Например кварц. или фьюзы - ну например.
Бывали. Обычно на такое влияют либо кривой код на запись, либо проблемы с питанием. Но так как вы не приводите ни кода, ни схемы - я думаю вам тут не помогут. Идите ищите экстрасенсов в другом месте.
Странные люди... Зачем писать на форум и что-то спрашивать, если не готов предоставить полную информацию о проблеме?
Может быть еепром внутри кристалла глючит? или может кварц примешан?
Вкл/выкл всему виной, к гадалке не ходи.
Представим прошивка в loop чисто eeprom.read(0). И там было значение 10. И выводиться на экран.
Разве тут где-то я указал что есть где-то код записи? Вот весь код. eeprom.read(0) и lcd.print();
По поводу схемы написал минимальную инфу, так как устройство изготовлено одинаково во многих экземплярах, на печатных заводских платах и работает нормально. А задал вопрос в аппаратных темам те, кто собирает десятками и сотнями устройства на атмегах - не наблюдалось ли такое? Что вот рабочее устройство, изготовляется на одной прошивке и т.д. но вот есть проблемы с памятью. Может кто-то в Китае брал и были браки с еепромом (или вообще такое бывает), а может есть специфика во фьюзах. Заметил единое отличие что случайно при прошивке вот бод левел отключил (как бы должно вообще работать лучше тогда без контроля питания).
Может бод левел влияет (был 2.7), может у кого то было что вот кварц не 16, а 15.9 и аут (ну вдруг).
Железо - блоки питания идентичны, разводка, запчасти (замена на другие не помогает) - самое стандартное включение атмеги. Это не собрано устройство на коленке один раз с самым дешевым бп и деталями и мне нужна помощь в разводке схемы.
Включи bod, конечно же он влияет.
ЗЫ: Значение в ячейке eeprom меняется или только вычитывается неверно?
Меняеться.
bod влияет на еепром?
Разве тут где-то я указал что есть где-то код записи? Вот весь код. eeprom.read(0) и lcd.print();
ну что вы дурачков-то из нас строите?
если нет кода записи - откуда в нулевой ячейке какие-то данные?
Заметил единое отличие что случайно при прошивке вот бод левел отключил (как бы должно вообще работать лучше тогда без контроля питания).
если у вас схема при отключенном контроле питания работает ЛУЧШЕ - это значит что напряжение очень нестабильное и часто уходит ниже уровня BOD. Провалы напряжения - прямой путь к ошибкам ЕЕПРОМ, но, как правило, проявляется это при записи в ЕЕПРОМ, а не при чтении. Хотя, если у вас напряжение все время прыгает - то и читаться может неправильно, но менятся значения в ЕЕПРОМ не должны.
Поэтому-то я и спрашиваю - откуда в ЕЕПРОМ берется это значение 10 и обновляете ли вы его, меняете ли это число или оно записано туда один раз и не меняется никогда, ни при каких обстоятельствах?
Как вариант сделать некий шаблон, допустим было 10_10 а записал 12_12. Итого четыре байта + контрольную сумму прилепить. Всего пять байт и в четыре раза меньше вероятность отказа системы.
Ну не, чудо однозначно, годами работают устройства, например у меня автополив огурцов летом, как поставил время полива 20:30 пару лет назад, так оно и стоит.
Железо atmega328p - кварц на 16, стандартная обвязка - блоки питания 5в (норм. с фильтрами), + lcd 2004
Представим прошивка в loop чисто eeprom.read(0). И там было значение 10. И выводиться на экран.
Вот вкл- выкл. устройство. И там на какой-то раз уже читается значение 40. Вот, все стало читаться, там уже такое. Бывали ли у когото глюки еепром или может что-то влиять на такое. Например кварц. или фьюзы - ну например.
Стопицот раз писано, хоть атмел и клянется, что исправил, но, на всякий случай, начинай EEPROM писать не с 0-го адреса, а с 0х10.
Кому чудо, а кому "фак"товый факт:) Вопрос выборки. На годами проверенной схеме и настройках фюзов работающий без нареканий, проблемы начались с EEPROM после закупки микроконтроллеров из Китая. Не смотря на то, что они были в ленте, в некоторые там явно был уже зашит код. В итоге около 5% из этой партии вернулось с диагнозом "теряются настройки". Если прошить EEPROM и включить на постоянку или положить на полку, то всё хорошо. А вот если постоянно дёргать питание, то, в худшем случае, уже через десяток включений EEPROM "бился"
я конечно лентами такое количество не беру, но заказчики последние, до 22 года брали большие объемы у прямых дистрибьюторов, ни о каких Китайцах разговор и не идет. В вашем значит случае не форум надо насиловать, а поставщиков кривых чипов. И да, как выше уже писалось - писать выше нулевого адреса, да и код мы не видели, хз что у вас за эксперименты.
Вы бы читали кому отвечаете :) И моя описанная ситуация была более 10 лет назад
И моя описанная ситуация была более 10 лет назад
Вам продали партию бушных камней со стертой до дыр EEPROM - то же мне, бином Ньютона )))
Да мне, как бы, и всё равно:) Я написал про этот случай, потому, что TS задал вопрос - а может ли портится содержимое памяти, а andycat утверждает, что нет, это чудо и такого быть не может. Я написал - да, может.
Спасибо за ответы)
У меня схема при отключенном контроле питания работает ХУЖЕ - вот в чем странно.
Один раз записано значение. Меняется когда я его изменяю кнопками, но специально не нажимаю, не меняю. Это когда готовая прошивка.
И так же просто читать - когда в прошивке только еепром.read() и lcd.print. Было 10, вкл-выкл. какое-то количество раз, стало 40.
Спасибо за ответы)
У меня схема при отключенном контроле питания работает ХУЖЕ - вот в чем странно.
goto №8.