Часы MT4 индикатор времени Clock v1 2. Скачать индикатор часов Clock для метатрейдер 4

Рейтинг честных бинарных брокеров за 2020 год:

Часы реального времени

В данной статье рассматривается пример создания часов рального времени. На индикатор будет выводиться точное время, а двоеточие на нем будет моргать раз в секунду. Точное время будет автоматически устанавливаться во вермя компиляции прошивки.

Описание компонентов

В нашем проекте мы используем:

Часы реального времени

Мы используем модуль с часами реального времени от Seeed Studio. Они построены на базе микросхемы DS1307 от Maxim Integrated. Из элементов обвязки она требует три резистора, часовой кварц и батарейку, которые уже имеются на данном модуле. Модуль обладает следующими свойствами:

Суть часов реального времени в том, что при наличии батарейки, они могут идти даже если основное устройство обесточено. Мы с такими часами сталкиваемся постоянно в ноутбуках или цифровых фотоаппаратах. Если достать из этих устройств аккумулятор, а через некоторое время вернуть их обратно, то время не сбросится. В этом заслуга часов реального времени, Real Time Clock (RTC).

Все необходимые библиотеки можно скачать с официального сайта.

Индикатор

Мы используем четырёхразрядный индикатор от Seeed Studio. Основное в индикаторе — микросхема TM1637, представляющая собой драйвер для отдельных 7-сегментных разрядов. В данном модуле используется 4 разряда. Модуль обладает следующими свойствами:

Данный модуль мы используем для показа времени: часов и минут. Удобство модуля в том, что подключается он всего по двум проводам и не требует программной реализации динамической индикации, поскольку все уже реализовано внутри модуля.

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

Библиотека для данного модуля также может быть скачана с сайта производителя.

Подключение

Модуль часов реального времени необходимо подключить к выводам SCL/SDA, относящимся к шине I²C. Также необходимо подключить линии питания (Vcc) и земли (GND).

Лучшие русскоязычные брокеры:

Линии SDA/SCL имеют собственные отдельные пины на Arduino, однако внутри они так или иначе подключены к пинам общего назначения. Если рассмотреть Arduino Uno, линии SDA соответствует пин A4, а SCL — A5.

В комплекте с модулем поставляется шлейф с мама-контактами, которые удобнее подключать к Troyka Shield. Однако отдельные пины SDA и SCL на ней не выведены, поэтому мы осуществили подключение прямо через пины A5 и A4.

В плане подключения индикатора — все гораздо проще. Выводы CLK и DIO можно подключить к любым цифровым выводам. В данном случае используются 12-й и 11-й выводы соответственно.

Написание прошивки

Функция setup должна инициализировать часы реального времени и индикатор, а также записывать время компиляции во внутреннюю память часов реального времени. Все действие, а точнее, чтение времени из RTC и вывод его на индикатор, будет производиться в функции loop .

Код для этого выглядит следующим образом:

Теперь загружаем этот код в среду разработки, компилируем и заливаем. Смотрим на дисплей — бинго! Время на дисплее — время компиляции.

Объяснение функции getInt

Для начала необходимо понять, откуда же в массиве compileTime появляется время. Оно появляется в этой строчке:

unsigned char compileTime[] = __TIME__;

Компилятор вместо __TIME__ подставляет строку, содержащую время компиляции в виде __TIME__ = «hh:mm:ss» , где hh — часы, mm — минуты, ss — секунды.

Вернемся к коду, который необходимо объяснить:

В массиве string , передаваемом в качестве параметра в функцию getInt , мы получаем символ с индексом startIndex и следующий за ним, чтобы в итоге получить двухзначное целое число. Однако, изначально это не число, а пара символов. Чтобы получить число по символу, нам необходимо вычесть из этого символа символ нуля ( ‘0 ‘): ведь в таблице ASCII все символы цифр идут одна за другой, начиная с символа нуля. Поэтому код int(string[startIndex]) — ‘0’) , дословно, делает следующее: «Берем символ номер startIndex , вычитаем из него символ нуля и переводим в целочисленный тип».

Проблемы

Да, этот код рабочий, и часы будут идти. Однако, если отключить питание, а через несколько минут включить, то после включения время время вновь станет тем, которое было при компиляции.

Это происходит потому что после включения питания, вновь исполняется код, находящийся в функции setup . А он записывает в часы реального времени старое значение времени.

Чтобы этого избежать, нам необходимо еще чуть-чуть модифицировать код. Каждый раз в функции setup будет происходить подсчет «хэша» времени компиляции — будет рассчитываться количество секунд, прошедшее с 00:00:00 до времени компиляции. И этот хэш будет сравниваться с хэшем в EEPROM. Напомним EEPROM — память, которая не обнуляется при отключении питания.

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

Энциклопедия богатства:  Термины в бинарных опционах

Для записи/чтения числа типа unsigned int в/из EEPROM написаны две дополнительные функции EEPROMWriteInt и EEPROMReadInt . Они добавлены потому что функции EEPROM.read и EEPROM.write могуть читать и писать только данные типа char .

Заключение

В данной статье был показан пример работы с микросхемой часов реального времени RTC DS1307 и микросхемой-драйвером индикатора TM1637, также мы научились получать дату и время на этапе компиляции. Теперь, если выставить нужное время на часах, а потом отключить питание хоть на несколько часов, то после включения время вновь будет точным. Проверено!

Scheduled Maintenance

Access to your trading or demo account, account funding portal, and new account registration will be temporarily unavailable due to scheduled system maintenance. We apologize for any inconvenience, and thank you for your patience.

定期系统维护

定期系統維護

Planmäßige Wartung.

Zugriff zu Ihrem Handels- oder Demonstrationskonto, dem Kontofinanzierungsportal und der Neukontenregistrierung ist vorübergehend, wegen planmäßiger instandhaltung, nicht verfügbar. Wir entschuldigen uns für jedwede Unannehmlichkeit und danken für Ihr Verständnis und Ihre Geduld.

Mantenimiento programado

El acceso a su cuenta de trading o a la de demostración , al portal para dotar de fondos a la cuenta y al registro de nuevas cuentas no estará disponible temporalmente debido a un trabajo de mantenimiento. Le pedimos disculpas por las molestias y le agradecemos su paciencia.

Maintenance planifiée

L’accès à votre compte de trading ou votre compte démo, au portail d’approvisionnement des comptes, et à la page pour l’ouverture de nouveaux comptes sera temporairement indisponible pour cause de maintenance système planifiée. Nous nous excusons pour tout désagrément, et vous remercions pour votre patience.

Manutenzione programmata

L’accesso al tuo conto di trading o demo, al portale relativo al finanziamento del conto e la possibilità di registrare un nuovo conto non sarà temporaneamente disponibile, per via della manutenzione programmata del sistema. Ci scusiamo per eventuali inconvenienti e vi ringraziamo per la vostra comprensione.

Manutenção Programada

O acesso à sua conta de negociação ou de demonstração, portal de financiamento da conta e registo de novas contas estarão temporariamente indisponíveis devido à manutenção programada do sistema. Pedimos desculpa por qualquer incómodo causado e agradecemos a sua paciência.

Регламентное техобслуживание

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

Часы MT4: индикатор времени Clock v1 2. Скачать индикатор часов Clock для метатрейдер 4

Автор: Alexey_Sh
Опубликовано 10.09.2009

Дорогой РадиоКот! Присоединяюсь к поздравлениям. Долгие, как говорится, лета. В качестве подарка рискну предложить самый наверное оригинальный: часы. У РадиоКота их штук десять наверное. И точно такие же, на газоразрядных индикаторах уже есть. Ну что на это можно сказать? Такие же, да вот не такие! Ниже приведено их описание.

Несколько лет назад попались на глаза часы на газоразрядных индикаторах и чем-то заворожили. Стал собирать фотографии, схемы, описания. И сайт «Радиокот» был обнаружен именно благодаря этому «нездоровому» интересу. Копировать кого-то и повторять «как есть» не хотелось: как показывал опыт, делать свои ошибки гораздо приятнее и менее затратно, чем разбираться в чужих.
Много чего насобирал и стал размышлять, что же именно нужно. Запросы были весьма и весьма скромны: хотелось, чтобы показывало практически всё на больших красивых индикаторах, говорило человеческим голосом и било боем каждые 15 минут в дневное время и не било боем в ночное. Чтобы будило приятной музыкой по выбору пользователя, само себя корректировало по каналам GPS, DCF-77 и сигналам точного времени радиостанции «Маяк», управлялось от пульта по протоколу RC5, от компьютера по Bluetooth, а от пользователя — с помощью такого простого, распространённого и доступного всем способа как прямое мыслеуказание. Хотя бы. Но суровые будни с дефицитом времени и средств привели к варианту системы «простой». Что значит простой? В понимании автора это значит: 6 знакомест, время/дата, будильник, микроконтроллер + часы реального времени, одна печатная плата, динамическая индикация, доступная и недорогая элементная база. Да, динамическая индикация хуже статической, но проще аппаратно и ценою подешевле. Кроме того, в сети оказалось довольно много коммерческих проектов с динамической индикацией. То, что они продолжают существовать, говорит о достаточной надёжности такого подхода.
Что в результате получилось, можно увидеть на фото.

Изготовлено 4 экземпляра. Все запустились и работают. Правда, по очереди — блок питания один, и батареек на всех не хватает.
Основные характеристики часов SUNny_Clock:

Номинальное напряжение питания, В

Ток потребления, не более, мА

Ток потребления типичный, мА

Индикаторов типа ИН 14

Минимальная высота устройства без учета высоты ламп, мм

Минимальная высота устройства с учетом высоты ламп типа ИН 14, мм

Энциклопедия богатства:  Здоровье трейдера как его сохранить. Психологическое и физическое здоровье в трейдинге

Формат индикации времени

Формат индикации даты

Момент и продолжительность индикации даты

Последние 2 с каждой минуты

Количество кнопок управления

Дискретность установки времени срабатывания будильника, мин

Программных градаций подстройки яркости индикаторов

Описание схемы и конструкции часов SUNny_Clock.

Схема выполнена в OrCAD Capture 9.2 и построена на ATMega8 16AI в корпусе для поверхностного монтажа. Нумерация выводов микроконтроллера соответствует корпусу TQFP 32. Замена на микроконтроллер в DIP корпусе в рамках данного проекта не предусмотрена. Часы реального времени DS1307. Точность хода определяется параметрами часового кварца ZQ1. Какой поставите, так ходить и будут. В часах установлены газоразрядные индикаторы ИН 14, которые можно заменить на ИН 8 2 с учётом отличий по распиновке. Нумерация выводов индикаторов осуществляется по часовой стрелке со стороны выводов. У ИН 14 вывод 1 указан стрелкой.

Ахтунг! С индикаторами ИН 8 2 работа часов не проверялась.
Нумерация выводов транзисторов MPSA42 дана для корпусаTO 92. Впрочем, эти транзисторы в других корпусах имеют другие обозначения. У Philips они такие:

Канал связи упрощённой версии RS232 использовался в процессе написания программы микроконтроллера и его работа в окончательном варианте не предусмотрена. Звуковой излучатель BA1 имеет встроенный генератор и напряжение питания 5В. При соответствующем подключении подойдёт любой другой на напряжение 12В. Повышающий преобразователь напряжения выполнен на микросхеме MC34063A. (MC33063A). По распространённости и стоимости она несколько уступает таймеру 555, на котором можно построить такой преобразователь, однако дешевле и доступнее MAX1771. Неполярные конденсаторы керамика, полярные — электролиты Low ESR (например, EXR фирмы Hitano, FC Philips, CV AX Sanyo и т.п.). Если Low ESR недоступны, поставьте параллельно электролиту керамику или плёнку. Дроссель в повышающем преобразователе использован типа B82477 (EPCOS) 220 uH на ток 1.16A. Минимальное расчётное значение дросселя составляет 180 uH, минимальный расчётный ток дросселя составляет 800 mA. Не рекомендуется использование дросселя с меньшими значениями (зато с бОльшими рекомендуется :).
Дешифраторами работают два корпуса К155ИД1. В коммутаторе анодного напряжения использована оптопара TLP627. Предвосхищая вопрос, можно ли использовать вместо них распространённую схему на транзисторах MPSA42/MPSA92: теоретически можно, но для данной прошивки нужен дополнительный инвертор и не факт, что временнЫе характеристики ключей совпадут, а прошивка будет управлять динамической индикацией корректно. В общем, четкого ответа автор дать не может, так как им это решение экспериментально не проверено. Величины R23 и R24 предлагается подобрать самостоятельно, так как в авторском варианте они отсутствуют, а без них токи через запятые превышают допустимые уровни.
Пару слов о странностях с распределением сигналов по портам. При разработке схемы подразумевалось привлечение внешнего программиста. Он бы с ними и боролся. А у автора плата зато красиво развелась. Если бы автор изначально собирался программировать сам, то он ни в жизнь бы так сигналы не расставил. Ну а уж раз так расставил, то пришлось выкручиваться. Теперь о конструкции. Все элементы часов смонтированы на одной печатной плате заводского изготовления. Плата разработана под настольный вариант. На нижнюю сторону платы установлены стойки М3 высотой 25 или 30 мм для крепления к основанию корпуса. Печатная плата разработана в малораспространённой среди посетителей сайта среде OrCAD Layout 9.2 и содержит некоторое количество ошибок и «лишних» элементов (не прижились), поэтому не приводится. Желающим повторить часы придётся разрабатывать плату самостоятельно. До корпуса руки автора проекта по состоянию на сегодняшний буднишний день пока не дошли. Ниже приведены фото смонтированной платы часов.

Особо следует отметить монтаж индикаторов на печатную плату. Если вы вставите выводы индикатора в соответствующие им отверстия и по старой памяти затолкав стеклянные баллоны до упора (как обычно поступают с корпусами DIP) пропаяете выводы, то перевернув плату сможете наблюдать весело стоящие «в раскорячку» ИН 14 (или ИН 8 2). Дело в том, что индикаторы несколько кривоваты. Причём их кривоватость является индивидуальной для каждого конкретного экземпляра. Поэтому при монтаже индикаторы заталкиваем не до конца, прихватываем пайкой 3 вывода каждого из них единообразным способом и начинаем выравнивать по положению относительно печатной платы и относительно друг друга. Выбираем индикатор и смотрим, куда его нужно наклонить. Затем прогреваем вывод одного из трёх припаянных выводов прибора. После того как припой расплавился, измененяем положение индикатора в нужную нам сторону, отводим жало паяльника и, зафиксировав положение, ждём остывания припоя. Переходим к следующему выводу. И так до тех пор, пока не получим приемлемый результат. Иногда требуется «довернуть» индикатор в ту или иную сторону. Но не стоит переусердствовать в грубом физическом насилии над хрупким прибором в стеклянном корпусе.

Описание работы часов SUNny_Clock.
Программа микроконтроллера написана на BASIC-е. Это наверное не модно и вообще неправильно. Но автор честно и с упорством старался исправить ситуацию. Собирал книги по Си и Ассемблеру, клал их (в различных комбинациях: лицевой обложкой как вверх, так и вниз, иногда — в раскрытом виде) под подушку на время сна и под кота Ваську во время бодрствования. Катал их на общественном транспорте. Насколько известно автору, этот в высокой степени прогрессивный и теперь уже достаточно широко распространённый среди студентов ВУЗов метод имеет повышенную усвояемость. Однако, вопреки уверениям этих самых студентов (проклятые двоечники!) и высокой оценке качества книг котом Васькой, на автора вышеуказанный метод не подействовал. Так что выбирать особо не пришлось, а пришлось довольствоваться BASICом, остаточные сведения о котором сохранились с тех времён, когда аппарат сэра Клайва Синклера был способен выполнять роль домашнего компьютера.
Была произведена попытка разработки простого интуитивно понятного интерфейса пользователя. Что из этого получилось, судите сами. Управление производится всего 2 мя кнопками «MODE» (режим) и «SET» (установка).
Правила интерфейса пользователя:
1. Переход от режима к режиму происходит по кольцу кнопкой «MODE».
2. Установка значения производится кнопкой «SET».
3. Корректируемое значение либо мигает, либо имеет бОльшую яркость.
4. Установка значения секунд заключается в их обнулении.
5. Установка значения минут, часов, дня, месяца, года заключается в прибавлении 1 к текущему значению по кольцу до максимального значения, после чего значение обнуляется.
6. Установка минут срабатывания будильника производится от нуля с дискретностью 5 минут (00-05-10-15:55).
7. Если часы находятся не в основном режиме и нажатия кнопок прекращаются, то по истечении нескольких минут часы возвращаются в основной режим.
8. Отмена звукового сигнала будильника производится кнопкой «SET». При этом в следующий раз при достижении времени срабатывания сигнал будильника будет активирован.
9. Запятые в десятках и единицах секунд говорят об активности будильников 1 и 2 соответственно.
Режимы работы часов приведены ниже в таблице 2. Красным условно обозначены ярко горящие разряды, оранжевым — тускло подсвеченные разряды, чёрным — погашенные разряды. Для времени: Ч часы, М минуты, С — секунды. Для даты: Д — день месяца (число), М — месяц, Г — год. Для установки будильника: 1 — будильник 1, 2 — будильник 2, Х — нет значения (черный, погашен).

Энциклопедия богатства:  Приветственный пакет от брокера OptionTime

Первое включение, программирование контроллера и настройка.
Внимание! Схема содержит опасное для жизни напряжение! Будьте осторожны!
Проверьте правильность монтажа схемы. Затем проверьте цепи питания на предмет наличия короткого замыкания в оных. Если не нашли, попробуйте подать на вход питание от источника 12В. Если не пошёл дым, проверьте напряжение цепи питания D5V0. Как видно из названия, оно должно быть равным 5В. С помощью подстроечного резистора RP1 установите на выходе повышающего преобразователя напряжение величиной 190В (для указанных номиналов). Подождите минут 10: элементы схемы не должны заметно нагреваться. Особенно это касается дросселя высоковольтного преобразователя. Его перегрев говорит о неправильно выбранном номинале или о конструктиве со слишком малым рабочим током. Такой дроссель надо заменить на более подходящий.
Подключите программатор. Автор воспользовался AVR910 USB от премногоуважаемого Prottoss`а (Рыжкова Андрея), за что ему большое человеческое спасибо. Установите фьюзы согласно прилагаемому скриншоту программы AVRprog.

С этого момента понадобится элемент питания ВТ1 типа CR2032. На худой конец просто закоротите контакты панельки элемента питания, но тогда время и дату будете устанавливать каждый раз при прекращении подачи питания.
Запрограммируйте последовательно Flash и EEPROM микроконтроллера с помощью прилагаемых прошивок *.hex и *.epp соответственно. И именно в указанной последовательности. На индикаторах будет отображаться «21-15-00». Секунды при этом «пойдут». Если же вы всё ещё не подключили BT1, то вместо времени и даты увидите на индикаторах что-то вроде «05-05-05» и будете долго искать неисправность и ругать нехорошими словами автора. А автор не любит, когда его ругают нехорошими словами.
Установите требуемые значения времени, даты, будильников в соответствии с таблицей описания режимов работ. Когда дойдёте до настройки яркости, программно включите минимальную яркость индикаторов. Подстройте повышающий преобразователь таким образом, чтобы каждый из индикаторов светился с минимальной яркостью, но полностью. То есть, не должно быть так, что часть цифры индикатора светится, а часть нет. Затем программно выставьте максимальную яркость и проверьте свечение цифр индикаторов. Индикаторы не должны светиться чрезмерно, и не должно быть «объёмного» свечения. Коррекция яркости опять же производится с помощью RP1. После этого снова проверьте свечение при минимальной яркости и так далее до тех пор, пока не будут получены приемлемые результаты. Если же приемлемые результаты не будут получены, попробуйте подобрать номиналы анодных резисторов и повторить вышеуказанные действия. Всё! Настройка часов завершена.

Благодарности.
— РадиоКоту за то, что он есть.
— Авторам часов на газоразрядных индикаторах — за опубликованный материал и за то, что подвигли.
— Второй половине — за то, что есть, что подвигла и за помощь в написании ПО. Без её участия проект и сейчас, быть может, оставался на уровне обхода кривости схемы электрической принципиальной.
— Хвостатым членам семьи как преданным и внимательным помощникам, источникам хлопот и хорошего настроения.

Наши помощники — участники проекта SUNny_Clock на своих постах согласно боевому расписанию. К сожалению, не все сегодня с нами. Также на фото можно наблюдать кисть правой руки второй половины.

Рейтинг брокеров 2020:
Понравилась статья? Поделиться с друзьями:
Обучение торговле бинарными опционами в 2020 году
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: