Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
  • Страница:
  • 1
  • 2
  • 3
  • 4

ТЕМА: Хороший, но странный таймер на ATMEGA 8

Хороший, но странный таймер на ATMEGA 8 25 апр 2016 15:25 #1

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
Собственно по этой статье

Всем хорош, короме:
на 28 ноге МК, при установке времени лог "1", но как только запускаешь таймер - там "0", который при срабатывании переходит опять в "1".
Очень странная логика. Напряг фантазию, но не смог понять где такое может быть необходимым :S

Не заня об этой особенности, решил вставить его в стиральную машинку (у меня древний BOSH без столь полезной штукенции).
Реле должно замыкать кнопку "ПУСК" на стиралке.
Но при таком поведении выхода МК (28 нога) машинка сразу включается хоть при каком положении дверцы.

Решил проблему при помощи 555 таймера (в режиме ждущего мультивибратора): подцепил запуск таймера на 27 ногу МК (там за 20 сек до срабатывания, есть сигнал с частотой 1Гц). Таким образом, мультивибратор однократно срабатывает (что б релюшка не клацала) и всё работает.

Но ведь это не правильно :pinch:

Питання до шановного Soir:
Возможно ли переписать программу (без изменения схемы) что бы 28 нога МК веля себя более прилично?
Я имею ввиду что на ней всё время лог "0", а только во время срабатывания лог "1"?
А на 27 ноге МК за 5 сек до срабатывания появлялась лог "1", которая становилась лог "0" при срабатывании и в ждущем режиме?
Последнее редактирование: 25 апр 2016 15:28 от accеpt.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 25 апр 2016 15:45 #2

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
Со всего этого мало понятно что и как. В статье несколько схем, прошивок, на 28-выводе лог.1 не увидел...
Пишите ТЗ заново, тогда я посмотрю, чем смогу помочь.
Администратор запретил публиковать записи гостям.
Спасибо сказали: accеpt

Хороший, но странный таймер на ATMEGA 8 25 апр 2016 16:56 #3

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
Схема вот эта


Описание(всё, как в статье).
Кнопки и джампер:
1. кнопками S1(час) и S2(мин) устанавливается время срабатывания от 1 мин до 99 час 59 мин (т.е. формат времени ЧЧ:ММ).
2. кнопка S3(пауза/пуск): останавливает или запускает таймер. Первое нажатие после введения времени запуска - "пуск"; второе - "пауза"; третье - "пуск" с остановленного времени, и т.д.
3. кнопка S4 (стоп): сбрасывает введённое время и/или полностью останавливает отсчёт времени.
4. джампер на порту РВ0: если замкнут, то при резервном питании продолжатеся отсчёт времени.
5. джампер на порту РВ0 разомкнут, то при резервном питании происходит остановка отсчёта. На индикаторе(при подаче основного питания) ранее введённое время.

Индикация:
6. средняя точка(точки ":") - во время отсчёта мигают с частотой 1Гц. Во всех остальных режимах - просто светятся.
7. если в работе осталось меньше десяти часов, ведущий ноль убирается.
8. если осталось меньше часа, на индикатор выводятся ММ:СС.
9. если осталось меньше минуты, на индикаторе 00:СС.
10. если пропало основное питание, то индикация гасится(см. п.4-5).

Выходы-входы:
10. при срабатывании, на порту РС5 - логическая "1". Во всех остальных случаях(пауза, остановка отсчёта) - лог "0".
11. за пять секунд до срабатывания, на порту РС4 появляется лог "1", которая становится лог "0" в момент срабатывания. Во всех остальных случаях там "0".
12. порт РВ5 проверяет наличие основного питания, при отсутствии которого МК вёдёт себя как в п.4,5,10).
Последнее редактирование: 25 апр 2016 19:00 от accеpt.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 26 апр 2016 11:14 #4

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
accept пишет:
3. кнопка S4 (стоп): сбрасывает введённое время и/или полностью останавливает отсчёт времени.
Что значит "и/или"? Выражайтесь конкретнее. Пока не работает.
Вложения:
Последнее редактирование: 30 апр 2016 16:05 от Soir. Причина: Обновление вложения
Администратор запретил публиковать записи гостям.
Спасибо сказали: accеpt

Хороший, но странный таймер на ATMEGA 8 26 апр 2016 18:55 #5

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
"и/или" = если идёт отсчёт, то при нажатии остановка(не пауза); при вводе, если ошибся, то при нажатии сбрасывате в 00:00.

Как-то так.

За прошивку - огроменное спасибо! Я попробую её завтра или послезавтра(надо стиралку раскурочивать).
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 27 апр 2016 10:56 #6

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
accept пишет:
если идёт отсчёт, то при нажатии остановка(не пауза); при вводе, если ошибся, то при нажатии сбрасывате в 00:00.
Доработал.

accept пишет:
Я попробую её завтра или послезавтра(надо стиралку раскурочивать).
Не спешите, проверьте на макете или хотя бы в симуляторе.
Администратор запретил публиковать записи гостям.
Спасибо сказали: accеpt

Хороший, но странный таймер на ATMEGA 8 27 апр 2016 15:03 #7

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
я не умею симулировать.
а на макетке это не менее муторошно(куча проводков) чем скоростная разборка-сборка машинки :cheer:

Спасибо за корреткировку прошивки!
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 27 апр 2016 15:05 #8

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
accept пишет:
а на макетке это не менее муторошно(куча проводков) чем скоростная разборка-сборка машинки
Это кому как, но последствия разные.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 30 апр 2016 14:31 #9

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
перепрошил.
1. Цифры, мне так кажется, немного мерцают.
2. Сразу горят 0:00 (без первого "0").
3. При изменении часов (более 9) появляется первый ноль, минуты меняются как надо.
4. При установке 5 минут на дисплее "0:05: Как бы сделать так, что бы при старте и выбраном времени до 10 минут отображались бы минуты и секунды (5:00) и точки мигали при отсчёте?
5. Кнопка START не запустила отсчёт. Может по этому на дисплее постоянно "0:05" и точки не мигают?
6. Кнопка RESET сбрасывает введённое время.

А больше ничего проверить не могу.
Последнее редактирование: 30 апр 2016 14:32 от accеpt.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 30 апр 2016 16:10 #10

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
accept, прошелся (прошивка, Proteus, макет) по всем Вашим замечаниям - ничего не подтвердилось.
Проверьте правильность установки FUSE.
Сотрите EEPROM при прошивке МК.
Ну и схема, монтаж, исправность деталей, питание...

В прошивке выявил один недочет - при reset не сбрасывались секунды. Исправил. Вот и все. Прошивку перезалил.
Администратор запретил публиковать записи гостям.
Спасибо сказали: accеpt

Хороший, но странный таймер на ATMEGA 8 30 апр 2016 17:22 #11

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
Плата работала и работает, МК стирал перед записью.
Фузы проверил.
Схемы сравнил (из архива и старую).
Теперь при старте Ваш ник и время "0:01".

...такое ощущение что кнопка ПУСК не работает.
Ещё заметил - когда касаюсь пинцетом общего провода у кнопок то идёт перезапуск.
Подцепил порт RESET МК на +5 В через 10к.
Без изменений.

Прошил старую прошивку -всё работает как и работало. Потыкал пинцетом общий провод - всё норм.
:blink:
Последнее редактирование: 30 апр 2016 17:23 от accеpt.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 30 апр 2016 17:59 #12

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
Не знаю. Перепрошиваю, включаю - все работает. Чего только не касался пинцетом - сбоев нет. И это все на макете, опутанном проводами.
Попробовал прошивку из статьи, тоже работает. Вот в ней как раз и заметны мерцания индикатора, если установить FUSE, как там указано.

Считайте прошивку, EEPROM и FUSE из своего МК и дайте на них посмотреть.
Администратор запретил публиковать записи гостям.
Спасибо сказали: accеpt

Хороший, но странный таймер на ATMEGA 8 30 апр 2016 18:09 #13

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6

Вложение Новыйточечныйрисунок-2.png не найдено


А прошивку чем?
Последнее редактирование: 30 апр 2016 18:25 от accеpt.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 30 апр 2016 18:33 #14

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
Чтение Flash - прошивка.
Чтение Eeprom - ...
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 30 апр 2016 19:04 #15

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
Фузы вроде правильно стоят.
Прошивку считал(скрин выше). Верификацию проходит...

Вложение Новыйточечныйрисунок-2-3.png не найдено

Последнее редактирование: 30 апр 2016 19:12 от accеpt.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 30 апр 2016 20:49 #16

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
accept пишет:
Прошивку считал(скрин выше).
Мне нужен не скрин, а считанный hex-файл. Но в общем-то, главное были FUSE. Вроде на месте.
Подумаю еще, пока не понимаю, почему у Вас не работает.
На выводе 19 какое напряжение с моей прошивкой?
Администратор запретил публиковать записи гостям.
Спасибо сказали: accеpt

Хороший, но странный таймер на ATMEGA 8 30 апр 2016 21:03 #17

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
Так понимаю, у Вас в DIP, 19 нога это PB5.
Там у меня 0.
Подцепил его на +5В...
Заработало!!!! :woohoo:
От что значит правильно поставленный вопрос :whistle: Я то этот порт не использовал (зачем в машинке отслеживать питание) но в старой прошивке функция была, вот и оставил.

Только как-то интересно получается: ставлю минуту, отсчитывает, на дисплее 0:00 и потом резко 0:01.

И ещё просьба.
Можно ли сделать так, что бы на порту PC5 всё время был "0", а когда сработает и до сброса, "1".
Сейчас "0", когда идёт отсчёт "1", потом опять "0".
Последнее редактирование: 30 апр 2016 21:20 от accеpt.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 01 мая 2016 06:12 #18

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
accept пишет:
Я то этот порт не использовал...(зачем в машинке отслеживать питание)...
И дальше что? А как же Ваше описание в сообщении №3? Как же Ваше заявление: "Описание(всё, как в статье)"? Джампер теперь тоже не нужен? Мне теперь переписывать половину программы из-за того, что Вы не можете внятно сформулировать то, что Вам нужно? Или Вы издеваетесь?
На лицо явное и, кстати, неоднократное несоблюдение моих правил. Кажется, уже предлагал Вам их почитать.
Поэтому мои действия такие:
1. Доработкой этого проекта займусь не раньше, чем через неделю.
2. Работу над остальными Вашими проектами тоже приостанавливаю.
Таким образом, у Вас появится время еще раз все обдумать и внести при необходимости изменения в описания проектов. Тогда и продолжим работу.

accept пишет:
Только как-то интересно получается: ставлю минуту, отсчитывает, на дисплее 0:00 и потом резко 0:01.
После завершения отсчета на индикатор выводится установленное время.
Администратор запретил публиковать записи гостям.
Спасибо сказали: accеpt

Хороший, но странный таймер на ATMEGA 8 01 мая 2016 09:36 #19

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
Всё нужно! И джампер и функция.
Я такой таймер, после Вашего усовершенствования, хочу пристроить в такую розетку.

Давая описание желаемого, всё списал со статьи. Кроме одного - лог.уровни портов РС4 и РС5.
Считал что Ваша прошивка, залитая в существующую плату, даст нужное поведение вышеуказанных портов.
Так оно и получилось (кроме РС5, вот тут бы подшаманить чутка).

За что спасибо! B)
Откуда я мог знать, что РВ5 так себя будет вести? :unsure: Очевидно, что Вы решили задачу несколько иначе, чем в статье. Ведь заливал я Вашу прошивку в готовую плату, где порт РВ5 висел в воздухе!

Вот и вся недолга.
Так что Ваш упрёк несколько несправедлив.
И переписывать ничего не надо, мне не сложно один проводок припаять.

В любом случае - спасибо и за труды и за терпение! :cheer:

Про вывод времени после срабатывания.
Думаю что это лишнее, но если это вызывает сложность - то пусть останется.


з.ы. с Праздником!
Последнее редактирование: 01 мая 2016 09:42 от accеpt.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 02 мая 2016 12:22 #20

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
accept пишет:
...(зачем в машинке отслеживать питание)...
....Всё нужно! И джампер и функция...
То не нужно, то нужно... Если нужно, то извольте изготавливать согласно схеме. Если не нужно - не задавайте мне лишнюю работу.
accept пишет:
...Описание(всё, как в статье).
accept пишет:
Давая описание желаемого, всё списал со статьи. Кроме одного - лог.уровни портов РС4 и РС5.
Скажите, мне что, надо было положить рядом два описания и искать отличия?
Если пишете, ВСЕ как в статье - то Вы и получаете прошивку с алгоритмом, как в статье. Или Вы пишете свое описание, или ссылаетесь на статью.

accept пишет:
Откуда я мог знать, что РВ5 так себя будет вести?
Если Вы самостоятельно вносите изменения в схему, то должны предполагать, что схема будет работать по другому. Или даже не будет работать вообще, мало ли какие детали Вам покажутся лишними.
Поэтому мой упрек справедлив на все 100%.
accept пишет:
Очевидно, что Вы решили задачу несколько иначе, чем в статье. Ведь заливал я Вашу прошивку в готовую плату, где порт РВ5 висел в воздухе!
Решил иначе. Считаю, что в статье сделано неправильно и не экономично при работе от резервного питания.
accept пишет:
Про вывод времени после срабатывания.
Думаю что это лишнее, но если это вызывает сложность - то пусть останется.
Сложности в реализации никакой нет, но усложнится эксплуатация (мне все равно). И все, что не оговорено в ТЗ, делаю на свое усмотрение. Напишете, что выводить - выведу. Только сначала подумайте и описывайте подробно.
Вложения:
Администратор запретил публиковать записи гостям.
Спасибо сказали: accеpt

Хороший, но странный таймер на ATMEGA 8 02 мая 2016 13:09 #21

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
Вроде никаких изменений... как было время после срабатывания, так и осталось.
И порт РС5: во время отсчёта "1", как сработает и пауза - "0".
:dry:
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 02 мая 2016 14:03 #22

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
accept пишет:
как было время после срабатывания, так и осталось.
А что должно быть после срабатывания? Вы прочли мое сообщение полностью?

Soir пишет:
Напишете, что выводить - выведу. Только сначала подумайте и описывайте подробно.


accept пишет:
И порт РС5: во время отсчёта "1", как сработает и пауза - "0".
Не знаю, наводите порядок в прошивках. У меня работает.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 02 мая 2016 14:07 #23

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
После срабатывания - 0:00 и всё.

Порядок навёл, стёр все которые были и скчал повторно.
Порт РС5 - то што доктор прописал!
Дякую!
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 02 мая 2016 14:28 #24

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 4101
  • Спасибо получено: 1413
accept пишет:
После срабатывания - 0:00 и всё.
Я же просил - подумать и описать подробно. Ваше "всё" меняет алгоритм входа в настройки и даже будет влиять на состояние нагрузки.
Описывайте всю процедуру работы с меню и кнопками. Сначала и подробно.
Администратор запретил публиковать записи гостям.

Хороший, но странный таймер на ATMEGA 8 02 мая 2016 14:53 #25

  • accеpt
  • accеpt аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 128
  • Спасибо получено: 6
Всё без изменений, как было в сообщении №3.
Единственное что добавил - это индикация после срабатывания(выделил синим).
Кнопки и джампер:
1. кнопками S1(час) и S2(мин) устанавливается время срабатывания от 1 мин до 99 час 59 мин (т.е. формат времени ЧЧ:ММ).
2. кнопка S3(пауза/пуск): останавливает или запускает таймер. Первое нажатие после введения времени запуска - "пуск"; второе - "пауза"; третье - "пуск" с остановленного времени, и т.д.
3. кнопка S4 (стоп): сбрасывает введённое время и/или полностью останавливает отсчёт времени.
4. джампер на порту РВ0: если замкнут, то при резервном питании продолжатеся отсчёт времени.
5. джампер на порту РВ0 разомкнут, то при резервном питании происходит остановка отсчёта. На индикаторе(при подаче основного питания) ранее введённое время.

Индикация:
6. средняя точка(точки ":") - во время отсчёта мигают с частотой 1Гц. Во всех остальных режимах - просто светятся.
7. если в работе осталось меньше десяти часов, ведущий ноль убирается.
8. если осталось меньше часа, на индикатор выводятся ММ:СС.
9. если осталось меньше минуты, на индикаторе 00:СС.
10. если пропало основное питание, то индикация гасится(см. п.4-5).
10-1. после срабатывания на индикаторе 0:00.

Выходы-входы:
11. при срабатывании, на порту РС5 - логическая "1". Во всех остальных случаях(пауза, остановка отсчёта) - лог "0".
12. за пять секунд до срабатывания, на порту РС4 появляется лог "1", которая становится лог "0" в момент срабатывания. Во всех остальных случаях там "0".
13. порт РВ5 проверяет наличие основного питания, при отсутствии которого МК вёдёт себя как в п.4,5,10).
з.ы. если реализация п.10-1 ведёт к переписыванию программы, то оставьте как есть.
Последнее редактирование: 02 мая 2016 14:55 от accеpt.
Администратор запретил публиковать записи гостям.
  • Страница:
  • 1
  • 2
  • 3
  • 4
Модераторы: wolf2000, Vakula, Айнцвайдрайченко