Обсуждаем цифровые устройства...
Ответить

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пт янв 18, 2019 12:50:14

Думаю, что вот здесь BOB51 очень хорошо добавил в код цикл ожидания.

Все остальное в записи по ЕЕПРОМ сделано из книжки... Я от себя ничего не добавлял. Может ЕЕПРОМ затирается при включении нагрузки? Может поля какие, типа наводок?

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пт янв 18, 2019 13:17:49

проблема слета ипрома известна давно например в теликах но там оно не фатално-hghbltncz все проавить ручками проблнма состоит в снижени питаня при запси лечится ее ьлокироыкой супервайзером в питале

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пт янв 18, 2019 14:05:36

Ну за телики/шмелики не скажу (ибо пока не сталкивался с автономными ЕЕПРОМками в практике самоделок)...
А в обычных проектах...
Помимо общих рекомендаций даташита при перезаписи важна стабильность питания.
Посему - динамическая индикация с пропуском тока через выводы МК не лучшее решение...
Или индикацию "стопорить" надо...
:roll:

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пт янв 18, 2019 14:08:48

Так если прерывания запрещены, то и она застопорена...

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пт янв 18, 2019 14:17:55

Для гарантии добавим верификацию содержимого после записи и смену адреса ячейки на случай отказа.
И там еще возможны два варианта записи
в одном цикле и стирание и запись
в одном цикле стирание в другом запись.
Что более удобно/гарантировано надежно, тем и пользуемся.
:beer:
И не факт, что при мощной помехе содержимое ОЗУ не слетит.
(искровой разряд в питание к примеру).
:twisted:

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пт янв 18, 2019 14:26:25

Мне абсолютно лень ковырять старый код на ассемблере... Я жутко стараюсь сутками разобраться с СТМ32, хотя бы чуть-чуть. Уже перечитал все по Си. Раз 15 прочитал, что такое структуры и как их использовать, раз 10 прочитал про указатели.
Голова стала квадратная. Вроде понятно, и не понятно одновременно.
Потом путаница с этими библиотеками, уже 10 ссылок прочитал форумов всяких про то, что использовать СПЛ или ХАЛ. Сам склонился к ХАЛ.
И т.д. и т.п.
Не могу все же понять, почему с АВРками было попроще. Хоть и забросил их практически. ))))

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пт янв 18, 2019 14:36:14

...другие схемы пробовал на 2313, но там так же почему то епром слетает...

Код:
WDT_off:
   CLI
   WDR
; Clear MCUSR
   CLR   R17
   OUT   MCUSR,R17
; Write logical one to WDCE and WDE
   LDI   R16,1<<WDCE|1<<WDE
   OUT  WDTCSR, r16
; Turn off WDT
   NOP
   OUT  WDTCSR,R17

Попробуйте вставить в исходник этот код. Ноги растут отсюда.
Note: If the watchdog timer is not going to be used in the application, it is important to go through a
watchdog disable procedure in the initialization of the device. If the Watchdog is accidentally
enabled, for example by a runaway pointer or brown-out condition, the device will be reset, which
in turn will lead to a new watchdog reset. To avoid this situation, the application software should
always clear the WDRF flag and the WDE control bit in the initialization routine.

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пт янв 18, 2019 14:40:50

:shock:

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пт янв 18, 2019 15:39:59

СТРАХОВКА...
8)

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Сб янв 19, 2019 06:55:42

Нет, продолжение процедуры инициализации камней с прерыванием WDT OVERFLOW, у которых WDE изначально не определен. В отличие от камней, где определён. :)


TOMIKC А программатор нормально программирует EEPROM?
Код:
.ESEG
.org   10
EE_LIMIT_HI:
   .DB   126
EE_LIMIT_LO:
   .DB   -55
Вложения
WDT_tiny2313_m8.PNG
(21.62 KiB) Скачиваний: 420

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Сб янв 19, 2019 10:32:13

Так то ж действует только если собака фузами разрешена (предусмотрено применение в программе).
Если WDTON=1 и не предусмотрен запуск WDT в программе то страховку вставлять не обязательно.
:roll:

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Сб янв 19, 2019 12:34:12

TOMIKC А программатор нормально программирует EEPROM?
имеете ввиду вообще или в данном случае?
вообще нормально писал, тест и работа подтверждали, а в данном случае авр студио вроде вроде не компилировала файлы еепром.
еще вопрос, код WDT... в инициализации произвольно можно вставить, либо какая очередность нужна? конечно после завершения предыдущей, не в разрыв.

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Сб янв 19, 2019 13:58:11

В программе есть
.ESEG
но данных нет. Вот студия и не генерирует .eep
Я ставлю инициализацию WDT в начале.
BOB51 писал(а): предусмотрен запуск WDT в программе то страховку вставлять не обязательно.
Вас не послушаю и буду обязательно.
...the application software should always clear the WDRF flag and the WDE control bit in the initialization routine.

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Сб янв 19, 2019 14:29:40

Для тех случаев, когда собака выключена... и в последствии в самой программе включение WDT не предусматривается...
Это только перестраховка с лишней тратой ПЗУ.
:dont_know:
Это все равно, что проинициализировать ВСЕ неиспользуемые аппаратные ресурсы для активного применения.
Допустим тот же неиспользуемый таймер или UART...
А затем ни разу их в проекте не использовать...
(Не путать с обязательной инициализацией принудительного отключения неиспользуемых аппаратных средств, что активны после сброса).
При том, что в шаблон-заготовке проекта в качестве библиотечной опции присутствие такой заготовки вполне закономерно.
:roll:

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Вс окт 20, 2019 06:23:43

У меня вообще ничего не заработало, начиная с запуска на дислее хрень какая-то... Вот какой раз нехорошим словом авторов вспоминаю, высрали и плюнули, а ты мучайся...
Увидел схему, отзывы вроде хвалебные расписал плату под смд и т.д.
А в результате эта хрень мало того что запустилась только 1 раз, так еще потом и хрень полезла всякая, собирал для аквариума а остался в полном разочаровании и невелении, так еще автов и с разрядами непонятно сделал, у мне вся задом наперед((( Фузов на главной странице нету, вообщем ппц

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Вс окт 20, 2019 10:03:43

alexhaf
На кого так осерчал? В этой теме как мин. 2 проекта. Если нет фузов, как оно заработает? Любую конструкцию мало спаять, нужно ещё отладить и настроить.

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Вс окт 20, 2019 19:00:38

Увидел схему, отзывы вроде хвалебные расписал плату под смд и т.д.

Схему в студию для обозрения… алгоритм какой нужен? Опиши подробности… если плата сделана без ошибок то алгоритм можно любой залить под требуемую задачу. :)

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Пн окт 21, 2019 23:12:44

Вообщем ребят, схема и прошивка отсюда! Мечтал по быстрому сотворить для аквариума обогреватель и получил дУдкУ :shock: , 3 раза подряд, до этого уже 2 проекта таких же пустых...
Почему тини2313? Потому что даром валяется... Нет шим у нее внутреннего решил тело в дело пустить...
А когда развел и прошил получил разочарование, т.к. автор толком КАТОДЫ не отметил куда какикие, я делал по даташиту на индикатор, а оказалось автор в ПРОТЕУСЕ распиновку другую делал...
Тема термостата отсюда


И еще что главное, что она работает на охлаждение, а мне нужно на нагрев :cry: (по падению ниже заданной включать по достижении выключать) , т.е. инвертировать как-то вход

Ниже схема мной перерисована, т.к. делал под СМД и хотел не слишком вылезть за габариты индикатора, т.к. люблю компактность)

Добавлено after 18 minutes 51 second:
Схему в студию для обозрения… алгоритм какой нужен? Опиши подробности… если плата сделана без ошибок то алгоритм можно любой залить под требуемую задачу. :)


Схему добавил, авторскую и свою... Только не знаю кто ошибся в ОК разводке, автор или я... Т.к. авторская схема у меня знаки были задом наперед...

Логика работы проста: задаем температуру максимальную потом гистерезис, после от бездействия дисплей моргает пару раз и настройки сохраняются, но как на этом форуме начитался, что от неполажок электросети с EEPROM контроллера могут выпадать байты, и тут мне жизненно важно, чтобы сохраненные настройки никоим случаем не привели к закипанию воды в аквариуме, потому как повлекут гибель моей живности!

Видео проблемы:
Вложения
Моя плата термостата v2 nano.lay6
Это моя разводка платы, как видно уместил как только мог)
(59 KiB) Скачиваний: 255
Temper_cr.gif
Схема автора была нечитаема
(10.36 KiB) Скачиваний: 301
схема термостата тини2313.JPG
Моя схема, ибо автора была нечитаема и для разводки не годилась...
(93.26 KiB) Скачиваний: 265

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Вт окт 22, 2019 04:58:52

Подключение DS18B20 неправильное. Не знаю на сколько хорош истоковый повторитель, но транзистор будет греться и его тоже можно использовать в качестве нагревателя.
Вложения
Termostat_2313.PNG
(105.12 KiB) Скачиваний: 351

Re: Очередной термостат на Tiny2313 сбрасывает данные еепром

Вт окт 22, 2019 08:37:36

Мечтал по быстрому сотворить для аквариума обогреватель и получил дУдкУ :shock:

Всегда так бывает когда что-то делаешь «по-быстрому». Причём особенно не свой проект… :)

alexhaf писал(а):Только не знаю кто ошибся в ОК разводке, автор или я... Т.к. авторская схема у меня знаки были задом наперед...

Вы. :)) Нумерация разрядов указанных вами на плате должна начинаться с право налево. Вы решили что разряды необходимо считать с лево направо. Потому у Вас и получилось шиворот навыворот. Если есть сомнение, то перед разрисовкой ПП нужно проверить с какой стороны начинаются разряды «ткнув щупами в индикатор». :wink:

Вы всегда такой невнимательный или это только в данном случае? :?
Хорошо, что догадались показать рисунок ПП. Так как он не совпадает с рисунком Вашей схемы.

1. На печатной плате имеются резисторы на сегментах индикатора – на схеме их нет.
2. Транзистор на плате установлен правильно – а на схеме нарисован в виде «грелки»… не соответствует плате.
3. Подтяжка выхода датчика на плате отсутствует – на схеме она есть, но питающая шина датчика на схеме отсутствует (на плате она есть).
4. Резистор на вывод Reset (1) лучше уменьшить до 5…10 кОм. Конденсатор (С3) необходимо убрать - он включен неправильно.
5. На входе и выходе стабилизатора необходимо добавить конденсаторы. На входе неполярный, на выходе полярный.
Хотелось бы взглянуть на даташит индикатора. Какой используется?
Отображения с десятыми градусами? Или без десятых? Уставка тоже без десятых?
Логика работы проста: задаем температуру максимальную потом гистерезис, после от бездействия дисплей моргает пару раз и настройки сохраняются, но как на этом форуме начитался, что от неполажок электросети с EEPROM контроллера могут выпадать байты, и тут мне жизненно важно, чтобы сохраненные настройки никоим случаем не привели к закипанию воды в аквариуме, потому как повлекут гибель моей живности!

Не больше какого значения?
До какого значения?
Это зависит от исполнения питания МК. Вот Ваш вариант уже имеет проблемность.

Если температуру необходимо поддерживать круглогодично постоянной, то лучше её прописать программно без возможности изменения.

ЗЫ. Какие фьюзы прошивались? Или оставлены заводские установки?
Последний раз редактировалось Самсусамыч Вт окт 22, 2019 09:51:42, всего редактировалось 1 раз.
Ответить