пятимесячный таймер обратного отсчета?

Я новичок в электронике, поэтому у меня просто есть идея в голове, и я не знаю, как ее реализовать. Я хочу сделать обратный отсчет для события в ближайшие 5 месяцев. Формат отображения такой:

DDD HH MM SS

Дни имеют 3 цифры, часы, минуты и секунды имеют 2 цифры, и я хочу показать числа на 7-сегментных дисплеях. Я просто хочу показать оставшееся время до определенного времени, в какой-то день в октябре. Я хочу сделать это с PIC или чем-нибудь, что вы предлагаете.
Я погуглил, но нашел схему MM:SS обратного отсчета . Я не могу расширить его для решения моего вопроса. Как мне это сделать?

Вы хотите это на 7-сегментных дисплеях, ЖК-дисплее, ...? В любом случае, это будет очень похоже на схему ЧЧ:ММ — не могли бы вы показать нам, что вы нашли для этого?
+1, чтобы противостоять пролету вниз. Конечно, этот вопрос можно было бы улучшить, но помочь ОП понять, какими могут быть эти улучшения, гораздо полезнее, чем молчаливое голосование против.
To Netmoon: Что именно вы подразумеваете под "сделать это с... TTL"? PIC — это микроконтроллер, тогда как TTL, т.е. транзистор-транзистор-логика, представляет собой набор стандартов логической сигнализации, используемых различными электронными компонентами, включая некоторые микроконтроллеры. Что касается самого вопроса, пожалуйста, отредактируйте вопрос, чтобы описать с соответствующими ссылками ваши выводы на данный момент, чтобы другие участники могли понять, как далеко вы продвинулись на пути к своей цели, и какой уровень ответа поможет вам лучше всего.
@anindo & camil: отредактировано ... надеюсь, я смогу правильно объяснить свой вопрос.
Я бы сделал это, используя микроконтроллер с чипом RTC (или встроенный RTC на вашем микроконтроллере, как у некоторых микроконтроллеров). Считывайте с RTC каждую секунду, а затем вычисляйте разницу между вашей целевой датой/временем и текущей датой/временем. Вероятно, есть лучшие способы сделать это.

Ответы (3)

Чтобы расширить дисплей для отображения DDD MM HH, вам потребуется еще пять линий ввода/вывода для DDD и SS. Микротроллер PIC16F84A, показанный на связанной схеме, имеет только 13 линий ввода-вывода, и все они используются. (Если вам не нужны выходы зуммера и реле, то потенциально у вас есть два запасных выхода, но, как я упоминал выше, вам нужно пять.)

Поэтому, если вы хотите остаться с микроконтроллерами серии PIC16F в своей связанной схеме, я бы расширил ее, чтобы удовлетворить ваши потребности, используя PIC16F883, который имеет 24 контакта ввода-вывода. (Они делают микроконтроллеры PIC16F с 18 и 20 контактами ввода-вывода, но только в корпусах SMD, и я предполагаю, что вам нужны сквозные отверстия). Просто добавьте еще пять выходов, идущих на дополнительные транзисторы, такие как T1-T4, управляющие пятью новыми семисегментными дисплеями, и входы ag дисплеев на параллельную шину, выходящую из блока резисторов R5-R11.

Для кристалла вам нужно выбрать тот, который имеет максимально строгий допуск, чтобы свести дрейф к минимуму. Таймер 1 PIC16F883 может работать от часового кристалла 32 кГц 30 ppm .

С точки зрения программного обеспечения настройте Timer1 на прерывание один раз в секунду. Используйте кнопки Set и Select, как и в предыдущем приложении, чтобы установить начальные значения DDD:HH:MM:SS. При каждом прерывании обновляйте дисплей — уменьшайте секунды, когда они переходят от 00 к 59, уменьшайте минуты и т. д.

как я объяснил выше, я новичок, но когда прочитал ваш ответ, я понял, что я должен начать читать о PIC, верно? у меня всего 20 дней на создание этой схемы, я хочу подарить ее своей подруге и просто сделать ее счастливой. но я думаю, что 20 дней слишком мало для чтения и понимания PIC. Можете ли вы привести меня к лучшему справочнику, книге или веб-сайту, которые помогут мне создать эту схему как можно скорее?
Это может быть слишком амбициозно, чтобы выполнить его за 20 дней, если вы не можете уделять этому много времени каждый день. Оба более ранних проекта были написаны на языке ассемблера PIC16, а не на C, так что вам нужно сначала изучить его — или вы можете написать программу с нуля на C, если знаете этот язык. Вам нужно будет получить техническое описание для PICF883 и загрузить систему разработки от Microchip. (продолжение)...
Вам понадобится книга, посвященная ассемблеру, например, «Микроконтроллер PIC: ваш личный вводный курс», третье издание или C — PIC Microcontrollers — Programming in C. Наконец, вам понадобится программатор, такой как PICKit 3 , для программирования PIC.
большое спасибо. это полный ответ, который я ищу :). я знаю, но я очень стараюсь понять и выполнить эту миссию за 20 дней ;) . я голосую за этот ответ и начинаю читать эти книги, а иногда проверяю эту страницу на наличие других предложений. Спасибо :)

Я настоятельно рекомендую вам использовать ЖК-дисплей вместо связки 7-сегментов. Вы можете легко настроить цифры. Сборка печатной платы будет намного проще. Гораздо меньше пайки и проще программно.

ЖК-дисплей можно использовать с прямым подключением 8 контактов. Я рекомендую вам 2x16 LCD с чипом HD44780. В сети можно найти много примеров для HD44780.

Что касается таймера, я рекомендую RTC (часы реального времени). Эксп. ДС1302. Эти чипы предназначены для хронометража в реальном времени. Таким образом, вам не нужно использовать какие-либо прерывания таймера PIC и счетчик для этой работы.

если вы посмотрите на схему , к которой подключен OP, вы увидите, что 7 проводов, идущих к сегментам ag, подключены параллельно ко всем дисплеям, а сегменты мультиплексированы.
Идеальная ссылка. Спасибо. Не знал эту микросхему 4543. Но я думаю, что сегменты не мультиплексированы. Я думаю, что транзисторы T1-T4 предназначены для определения рабочего сегмента.

Самый быстрый способ сделать это — использовать плату на базе Arduino. Получите плату, модуль часов, подобный этому https://www.sparkfun.com/products/99 , и соедините их вместе. Вам, вероятно, понадобится Mega, чтобы иметь достаточно контактов ввода-вывода для управления дисплеями. Задавайте любые вопросы по программированию на StackOverflow (сайт вопросов и ответов по программированию).

Или — вот проект с платой типа Arduino под названием «Teensy» для создания дисплея, подобного машине времени Delorean в «Назад в будущее». http://learn.adafruit.com/delorean-time-circuit/background У него есть список деталей и пример кода, который можно адаптировать.