Allegria ! сумасшедший часовщик назад !!

Название намерено провокационное, потому что это было бы:

I DISPLAY A Matrice: HW SW ТЕХНИЧЕСКИЕ И ПРИМЕНЕНИЕ

Это потому, что я собираюсь описать, являются точечно-матричным дисплеем 8×8 (7×5 8×5) стремясь понять методы как аппаратное и программное обеспечение для их использования. Для этого я произвел некоторые прототипы (были такие современное состояние) цифровые часы, которые используют только эти матрицы. В нем говорится, что характеристики HW практически идентичны (она просто изменяет булавку) как COMMON ANODE, что общий катод. Поэтому перед входом в частности, в’ основываясь на некоторых видео, чтобы показать некоторые из этих прототипов.

NB: для отображения видео: Судьба нажмите суль ссылку: Откроется диалоговое окно с запросом, следует ли сохранить или открыть файл. Видео можно увидеть с Windows Media Player или аналогичный для WMV файлов.

Мини-Binary Clock

Это видео демонстрирует, как простая матрица 8×8 Вы можете отображать часы “RAIL”. Если он думал, что в виду время назад, вместо того, уже представлены в другой статье шахты !

Каскад часы

В этом видео, отдельные значения часов отображаются по точкам: последовательность показывает формирование значений, начиная с левой стороны с десятками часов, а затем следовать до минуты. Второе сканирование отображается с помощью СИД / пиксел третий слева на дисплее.

Скользящие часы

Большие символы, которые составляют часы, минуты и секунды, чтобы прокрутить справа налево на неопределенное время. Учитывая время, необходимое для формирования характера, вы теряете около 2/3 секунд между полным и последующим отображением.

Часы слова

В этом последнем видео часов “условно-досрочное освобождение”. В этом случае не следует использовать матричный дисплей, но конкретное устройство: в DL2416T. Это дисплей “умный” состоящий 4 цифры с несколькими сегментами, которые могут отображать номера, буквы и некоторые специальные символы. Это устройство, в настоящее время устарели, Теперь она доступна в обновленной версии, но, к сожалению, довольно “дорогой”. Те, в моем распоряжении проистекают из раскулачивание некоторых Матричных принтеров лет 80/90. Как вы можете видеть из видео, это единственный прототип закончил (печатные платы как с дисплеем и частью “главный” с микро Arduino_Nano и управляющей электроникой).

ХАРАКТЕРИСТИКИ MATRIX DISPLAY

В Интернете есть много изображений и примеров использования этих матриц: Они могут быть помощь appronfondire их конкретного использования. Тем не менее, многие примеры являются поверхностными и, по-моему, не является исчерпывающим. Так что я буду описывать только результат исследований и личного опыта. Любая ссылка случайна.

На рисунке ниже видно,: дисплей 8 ил×8, модуль, который находится как на дисплее своего контроллера (MAX7219), логическое расположение назначается и управляется эскизом, и, наконец, назначение контактов матрицы на модуле. L’ он расположен на ориентации модуля дисплея имеет одну позицию (8 правый и пин-код 8 влево) при этом, если он перевернут, очевидно, она не включается надлежащим образом. Из четвертой фигуры вы можете проверить назначение штифта дисплея с тем контроллером (MAX7219), Таким образом, можно сделать вывод, которые являются катоды (Я буду называть “DIGIT“) и каковы аноды (Я буду называть “Сегменты“). Дисплей в вопросе COMMON CATHODE.

Причина, почему я назвал катоды “DIGIT” и аноды “Сегменты” Она приходит от того, как она управляется из аппаратного или программного обеспечения, дисплея и соответствующего контроллера. Эти дисплеи можно сравнить с дисплеем 7 сегменты + 1 определяется как “A”, “В”, “С”, “D”, “Е”, “F”, “г”, “DP” (десятичная точка или восьмой сегмент). Каждый столбец 8 LED / пиксель матрицы (см третьей фигуры) Это может быть дисплей 7+1 сегменты, а затем массив можно сравнить с цепочкой 8 отобразить segmenti. Для того, чтобы включить один LED / пиксель достаточно применить булавку “катод” колонны к наземному и пин-код “anodo” единственный сегмент к логическому значению “1” (+5V падение через R). Е’ ясно, что для того, чтобы сформировать символ или ряд необходимо включить LED / пиксель в соответствии с заданным форматом, в то же время (Стойкость del'immagine для глаз): или использовать мультиплексирование. Это не имеет смысла для подключения цифр и сегментов (8+8 штырь) к выходам микроконтроллера (с резисторы, очевидно, падают) и ненужные программные осложнения.

В своих проектах я всегда думаю, что “Principe” от “регистр сдвига” потому что только с 3 контактный способен приводить в цепочку 8 матрицы соединены в каскад друг с другом или 8 дисплеем 7 сегменты. С ограничением (Тогда мы увидим, что это не так) : соло модули “ОБЩИЙ CATHODE”. Этот чип (низкие затраты, если модуль с таким большим количеством дисплея стоит 1,5 а 5 евро) является MAX7219. Основные особенности:

  • 3 PIN-код для вождения (НАГРУЗКА / ЧАСЫ / DATA_IN).
  • Мультиплексирование integrato.
  • запланировано Диммируемый.
  • Вывод data_out для подключения другого дисплея.
  • Управляет индифферентно как для отображения сегмента, что матрицы.
  • 7 регистры для оперативного управления и 8 за я цифра.
  • Ограничение яркости даже с внешней стороны с триммером.

Как использовать и ПРОГРАММА ЧИП MAX7219

Используя этот чип в настоящее время для всех проектов, связанных с управлением дисплеем представляет собой матрица или сегментированная светодиодная матрица также для RGB. О RGB LED вскоре я публикую “РОЖДЕСТВЕНСКАЯ ЗВЕЗДА” хотя это не сезон !. Мы углубить затем с чипом и пин-кодом различных регистров:

DG0 / DG7 привод катодов дисплея, SEG_A / SEG_DP Летающие анодов дисплея. Per я отображать Matrice DG0 / DG7 Они относятся к столбцам в то время как SEG_A / DP Они ссылаются на отдельные светодиоды / колонки pixex. L’ Распределение сегментов / Свинец и его двоичное значение должно быть настроено в реестре “ДАННЫЕ” имея в виду, что бит “DP” юдоль 128 (0x80). штырь ОТ Это относительно входных данных , шпилька Загрузка / Cs выберите чип, шпилька CLK обеспечивает часы и, наконец, шпильку DOUT Это то, что позволяет каскадное соединение другого чипа для максимума 8. Последний контактный “ISET “для регулировки значения яркости путем подключения R 10K (один один триммер) к положительному полюсу.

Давайте посмотрим запись:

Использование и значение отдельных регистров:

  • регистрация 0: положить “0x00” Он служит только для отображения в цепях. (0не ВВЭР никаких операций для конкретного дисплея).
  • бревна 1/8: Эти регистры, которые учитывают отдельные сегменты для зажигания отдельных сегментов (см ЗАРЕГИСТРИРУЙТЕСЬ формат данных).
  • регистрация 9: Decode_Mode: Она должна скинуться, чтобы увидеть, если он используется код BCD или ничего.
  • регистрация 10: Яркость Изменение. значение 0 а 15. С нулевым значением не получит от дисплея, но его минимальной яркости. Вы можете сделать световые эффекты в результате чего этот регистр из 0 а 15 в прогрессивном и ритмичных образом.
  • регистрация 11: предел сканирования: на самом деле он должен указать, сколько цифр сканируются: таблица на таблицы показывает значения, которые будут назначены.
  • регистрация 12: рабочий режим (Неисправность). Переменный значение этого регистра (дает 0x00 0x01) Вы получаются путем включения или выключения дисплея (без потери текущей стоимости). Это может помочь создать эффект мигания чередовать два значения измеренной путь.
  • регистрация 13/14: нет.
  • регистрация 15: Тест устройств: Вы получаете освещение всех светодиодов, подключенных.

В основном для выполнения конкретной команды, пожалуйста, отправьте на чип 2 байт: адрес регистра и значение, которое должно предполагать, как функции одного и того же команды: например, как правило, начинают вы должны послать последовательность: “0C00“.

 

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ УПРАВЛЕНИЯ

Вот самая интересная часть: как управлять этими дисплеями. В сети, очевидно, Вы можете найти множество примеров и библиотек, и в начале я скачал несколько из этих библиотек: LEDCONTROL е LEDCONTROLMS и используется для первых испытаний . Я не удовлетворен действительны, но pesonalmente почему я разработал свою принести пользу “Библиотека в своем роде” возможность управлять как катодный дисплей ANODO domune. Я определил “своеобразный” потому что она была написана не на линии, но на самом деле файл (.ино) который содержит все необходимые функции и реализованы для обеих матриц, для 7 сегменты. Е’ просто включить этот файл в эскизе, а затем сделать звонки. (Я оставляю за собой право конвертировать этот файл в библиотеке подлинного). Как вводные слова этой статьи касается матрицы, мы видим, как они могут управлять.

Во-первых, вы должны определить, сколько матрицы должны быть обработаны: один или более. Если для одного массива, не существует каких-либо особых проблем, когда дело доходит до connetterne более чем один должен быть принят или печатная плата или сделать полет соединений. Мы видим эту цифру:

Первая матрица соединена с микро с классическим штифтом НАГРУЗКА / DIN / ЧАСЫ: так что, если это только не нужно ничего. Со второго и далее соединений НАГРУЗКА / CLK соединены друг с другом, но второй массив (или третий и так далее) его ОТ Это связано с DOUT из предыдущей матрицы. Е’ Задача программного обеспечения правильной целевой матрицы. (Помните, регистр “нуль” ?) . Использование этого крошечного модуля облегчает подключение:

Входы, которые наблюдаются перед и выходной контакт являются VCC, GND, НАГРУЗКИ, CLK, DOUT. Для сдвижных часов прототипа или в каскаде, Я использовал 4 отображать размещены в этой печатной плате:

 

Слева от главного входа штифта, в нижней правой части выходного контакта для подключения любых других матриц. Пространство каждого модуля ограничено прямоугольниками в красном. Не пропустите VCC штифт и GND.

Мы, говорим, что мы делаем первые шаги по управлению. Первые операции, которые будут осуществляться в “настроить” ни эскизы: (в дальнейшем для “УСТРОЙСТВО” определить чип и “DISPLAY” отдельные цифры или столбцы матрицы). Все эти операции должны быть выполнены для каждого “устройство” настоящее время. Следует отметить, что, когда система, в большинстве случаев, вы будете иметь самодиагностику чипа, который будет включаться все светодиоды, для которых она может быть хорошей идеей, чтобы выполнять эти операции до любой другой в противном случае вы будете иметь сохранение светодиодов горит.

  • Назначение выводов микро чипа в качестве выходного.
  • Сделать Shutdown для инициализации микросхемы.
  • Установка яркости.
  • Набор для кодирования.
  • Установите тестовый режим.
  • Установить “Лимит сканирования”.

Все эти операции осуществляются через функцию в моей библиотеке определяется как “Led_MX_Init” который устанавливает контакты, выполняет инициализацию и присваивает метод “Катодные” O “ANODO” общий. Для удобства для отладки этой библиотеки я также добавил (через флаг в INIT) возможность просмотра последовательного вывода значения для отправки записей. Для развития библиотеки я реализовал эскиз, который, последовательный, Наладить диалог через меню, которое позволяет выполнение всех функций библиотеки для обеих матриц для отображения 7 сегменты.

Я уточнил, что чип может управлять только дисплей с общим катодом: правда, в определенной степени, потому что вы можете также использовать эти общие аноде, но следующие меры:

  • Livello HW: инвертировать сигналы DG0 / DG7 вставляя HEX INVERTER (74LS04). Таким образом, аноды приходят к правильному логическому значению.
  • A SW уровень: активировать флаг “ACMODE” Функция INIT в библиотеке. При наличии этой активации функций, которые управляют светодиодами / пиксель инвертировать значение, переданное через’ специальная функция (Led_Value = ~ Led_Value;).
  • В состоянии’ искусство библиотека использует эту функцию только для отображения 7 сегменты.

Пусть мы теперь специально для каждого из часов ранние прототипы описаны методы и приемы, используемые в развитии одного и того же. Как дело доходит до часов, ясно, что нам нужно RTC из которого следует читать дату и время. Там нет конкретных спецификаций: Вы можете использовать DS1307 О Ds3231 или PCF8583 (модель vetusto). Единственным отличием является чтение регистров и способа декодирования. Кстати, я не использовал библиотеку для управления этой RTC: Я получить доступ непосредственно к регистрации с функциями библиотеки “провод“.

Бинарные часы: Это самый простой из всех остальных. Эскиз управляет одним устройством (матрица 8×8) и после инициализации устройства и проверки правильности работы RTC, выполняет цикл в функции “петля” чтение из регистров значения времени RTC, минут,секунд,день, месяц. Как формируются эти значения “BCD” (часы 12 Они в двоичном 0001 0010) нет декодирования не требуется для их визуализации. Давайте шаг назад: Я сказал, что матрица может рассматриваться как набор 8 дисплей, в котором каждый столбец представляет собой 8 сегменты (7+1) кодирование которого задается в регистре 1 для столбца 1, 2 для столбца 2 (и так далее для других столбцов) соблюдая кодирование введенного чипа (смотри рисунок “регистр данных“). Таким образом, фокус в том,: для каждого столбца выбора, а затем значение загружается “Знаменитые 12 часов” Они распределены следующим образом:

И так далее для всех остальных столбцов. И маска покрывает биты которых дисплей не является необходимым. Тогда, чтобы контролировать столбец чипа колонке (от 1 alla 8 но если только конкретный 1, 2, 4, 5, е 7) и это обеспечивает функции библиотеки “LEDMTX_Setcolumn” которые обеспечивают номер устройства, номер столбца и его значение.

Скользящие часы: Это более сложный, чем предыдущий, но не сложно, и это единственная причина, по’ Алгоритм, который определяет скольжение значений. Оно вписывается в этот контекст другой файл (Led_Tabel.ino) которая находится в виде массивов, какие двоичные конфигурации, которые должны взять на себя отдельные столбцы для представления числового символа (девять нулю) для обеих матриц для отображения 7 сегменты. Теперь, если эти дисплеи конфигурация определяется и недвусмысленная, для матриц, имеющих доступную сетку-×8 LED / пиксель становится свободным выбором разработчика для настройки различных номеров, как большинство радует.

Вот пример: для сегментированного дисплея нулевого номера имеет следующую конфигурацию: 0111 1110. Любая десятичная точка (сегмент “DP“) Он может быть вставлен ведущий к “1” бит 8 или, включив флаг в соответствующей функции. Таким образом, один байт для каждого номера и функции, которая выполняет дисплей, на который указывает массив в виде функции от числа. (нулевой кончик первого байта массива, второй, и так далее).

Различный является системой для массивов: В самом деле, для того же числа, что нужно хорошо 8 конфигурации, а именно: один байт для каждого столбца. Же номером ноль определяется следующим образом: “0,60,98,82,74,70,60,0“. Значения выражены в десятичной системе и конфигурации личный выбор. Отсюда следует, что функция, которая отображает номер должен указывать на первый байт каждой серии * 8 (“0” * “8” знак равно “0” и указывает на первый байт; “1” * “8” знак равно 8 и указывает на первый байт, который конфигурирует номер один). Затем колонна / колонна делает просмотр. На рисунке ниже приведен пример того, как они могут состоять из символов в сетке 8×8.

Сказав это, мы видим, что алгоритм разработан мной, чтобы отобразить значение часов, двигая справа налево по столбцам. Движение осуществляется по 4 устройства в общей сложности 4*8 знак равно 32 колонка: Затем создается массив 32 колонка. Я опускаю начальную часть установки (RTC, INIT 7219 и т.д.) а затем в цикле “петля” вы делаете:

  • Чтение регистров RTC
  • Расшифровка значений часов, минуты и секунды для того, чтобы получить отдельные значения десятков и единиц. Эти значения используются, чтобы указать вам в начале таблицы характеров отдельных групп 8 байт.
  • Начиная от стоимости десятков часов рутинный извлекает относительный побайтно из конфигурации таблицы и вставок в позиции 32 Массив значение извлекается по одному. Начало в этой точке массива сканирования от позиции “нуль” отображает содержимое первого столбца первого устройства влево и продолжается 32 позиции (Устройства 4 соединенных последовательно). После этого сканирования он смещается влево на одну позицию по массиву, и цикл начинается снова со следующего байта конфигурации. Когда цикл закончен 8 байт он продолжает с единицами часов до’ второго блока с одной и той же системе. Это, таким образом, получается скользящий эффект. Но между показаниями другого’ RTC и его полное отображение теряются 2/3 секунд за цикл.

В этот момент приходит в одном аспекте еще не рассматривается в управлении Display. Как я сказал, что устройства 4 соединенных последовательно. Тогда и направить все устройство (с начала до конца) зная, что каждая команда состоит из 2 байт (адрес / значение) Мы должны послать набор байтов, равное числу устройства, на котором целевые значения и команды:

Или, если устройство является четвёртой последовательность выглядит следующим образом: “0000 0000 0000 хххх“. (Если устройство было первой последовательности будет: “хххх“)

голубка: “0000” Это код NULL РАБОТА, “хххх” это команда для отправки на четвертое устройство (первый правый). Но сериализации из четвертой группы байтов (на практике последней). Чип получает первый 4 но поскольку байты в цикле принимает также после нуля, Скользящая различные байты от одного устройства. Ко всему этому она обеспечивает определенную функцию чтения из таблицы (подготовлены к 8 устройство) я 4 значения, очевидно, начиная с последнего. Е’ Но та же самая функция, которая определяет на основании количества устройств, чтобы отправить много байт.

Извините, но это легче сделать, чем сказать,. Я надеюсь, что было ясно, но ВНИМАНИЕ все относительно первой позиции устройства, к которому присвоен номер 1.

Каскад часы: Здесь мы более сложный, с точки зрения реализации, не те persentati до сих пор. Я признаю, что у меня были некоторые проблемы в построении правильного алгоритма для достижения эффекта, который вы видели в кино. Пропустив здесь также стандартные операции, которые выполняются в “настроить” чтобы перейти непосредственно к способу изобретения. Затем цикл “петля” Вы начинаете читать значения RTC, превращая их в десятки часов и минут, единиц часов и минут. Секунды отображаются миганием в третьем устройстве слева, светодиодный “DP” первого столбца на основании значения бита “1” секунд. Из фильма можно рассматривать как изначально все матрицы устанавливаются со значениями, мама, каждая матрица изменяется только тогда, когда значение, которое должно отображать изменения по сравнению с предыдущим. Если каждое значение считывается из RTC (десятки часов или минут, единицы часов или минут) изменение, то обновление его дисплей активируется. Таким образом, каждый 60 секунд (“около” так как полное отображение матрицы занимает мало времени) Он обновляет минуты или часы и т.д.. Для достижения эффекта “водопад” из отдельных светодиодов каждого столбца должны быть взяты из таблицы (были произведены три, так что вы можете изменить источник данных) единственный байт (с первого по восьмой) и он начинает мигать первый светодиод (немного 1) в 15 Миз, а затем продолжить с второй, но делает так, что сказал предыдущий светодиод продолжает гореть (в соответствии с конфигурацией характера). Нулевой байт пропускается. Цикл повторяется до завершения восьми байт. Когда этот цикл не передается следующему символу до завершения. я 15 Задержка мс между одной вспышкой и другой представляют собой компромисс между скоростью выполнения и желаемого эффекта. Очевидно, что мигание секунд не будет точным, особенно, если они изменяются в то же время час и минуту.(дает 23.59 а 00.00).

Это не легко описать этот механизм, Сам даже после того, как произведен и модифицирован путем добавления переменных параметров, Я с трудом могу ricomprenderlo (!!!). Если вы новичок в программировании, подпрограммы в достаточной степени комментировал следует понимать.

Говорящие часы: И вот’ последний (надеясь в то же время не иметь Скучаете). Я также хотел бы упомянуть об этом, чтобы сделать сравнение между различными модулями дисплея: в этом случае, вытащил из ящика старого материала, но по-прежнему полностью функциональный, это DL2416T конкретный дисплей сегодня заменен DLR2416. К сожалению, последний стоит дорого.

Разница между этими двумя моделями мы можем видеть его с этой цифрой:

Первый состоит из 4 отобразить segmenti (14 если бы я не считал неправильным) в то время как вторая матрица 7×5. На дисплее характеристики этих, совместимы, как обе функции контактных, Они могут быть суммированы:

  • 4 значный индивидуально адресуемые (“00”, “01”, “10”, “11”).
  • Устройство индивидуально адресуемые (два выбора контактный)
  • стираемая индивидуально.
  • Набор специальных символов, алфавитно-цифровой и числовой.
  • Автоматическое управление мультиплексирование.
  • питание 5 6V макс.
  • Управление курсором
  • Другие особенности в техническом описании каждого.

На рисунке ниже действительны для двух моделей, соединительный штифт:

Мы проверяем: 2 контактный для выбора (СП1 / 2), 2 контактный для управления курсором (ЦУС,CUE), два штифта для выбора цифр (A0 / A1), штырь CLR отмена, штырь BL для завершения работы без потери значений (полезно для blincaggio), 7 штырь (D0 / D6) и ВВОД ДАННЫХ, Наконец, штифт МЫ для записи значения. ВЫСОКИЙ-LOW-HIGH переход позволяет писать о том, что установлен. опытному оптимальное значение: 5нас.

то сложность подключения двух дисплеев (как и в прототипе), Я должен был производить печатную плату, как это:

Я разработал схему печатной платы, как сказал только служит корпус из двух дисплеев с помощью соединительных штырей параллельно D0 / D6 и доведение до подключения к “главный” я приколоть A0 / A1, МЫ, CL1, CL2, BL1, НД2. Я приколоть ЦУС е CUE В этом контексте они не используются и устанавливаются значения по умолчанию (логический уровень “0” е “1”). Особое замечание касается штифта CL1 / 2 е BL1 / 2: согласно спецификации для отмены отображения или его abblencamento мы независимы от выбора одного и того же дисплея: не может быть (но это выбор) соединенные параллельно, если вы хотите удалить или отключить один дисплей. Что ожидается позже в программном обеспечении. Здесь вместо печатной платы на основной плате для микро Arduino_Nano и два 74HC595.

 

Давайте двигаться дальше, то к сердцу прототипа.

Очевидно, что, учитывая количество соединений (6 на входных данных я) е 9 для команд, Они выбегали все Arduino шпильку (Один или Nano будет выходить из мега и т.д.), так что нам нужен другой подход, как можно видеть на этой диаграмме схемы:

На графике мы видим, 2 74HC595 (регистр сдвига) где в первых они определены в контактных выходах D0 / D6 относительно входных данных дисплея, а во втором команда штырьковый определены: Когда / A1, CL1 / 2, BL1 / 2, СП1 / 2. Две микросхемы соединены в каскад, и в соответствии с правилами регистра сдвига (прием данных в последовательном для передачи их параллельно). сигнал QH который подключается к ввод данных второй.

Схема связана с первой версией, что он не является строго необходимым, чтобы отделить сигналы О.Е., LE, CLK потому что он принимает сигнал по отдельности О.Е. который управляет выводом Поддержка / В7 (в противном случае они находятся в высоком импедансе). Е’ Однако мой выбор разделение сигналов. сигнал МИСТЕР (общий сброс) Он служит для сброса микросхемы. Команды контактный подключены к контакту Arduino; сигнал “МЫ” Это не зависит от остальных, и приписывается другим микро штифтом.

Что касается чипов 7219 Вы можете определить “умный” потому что в дополнение к функции регистра сдвига, нуждаются команды для активации функций, я 74hc595 они “глупый” потому что они просто ограничиваются получением последовательных битов, и если они > 8 передать последовательные биты к следующему чипа, и так далее. Пользуясь этой системой, алгоритм управления отображением индивидуально, может состоять в:

  • Отправить чип 8 Биты, относящиеся к конфигурации символов (8 всегда нулевые биты).
  • Отправить на следующий чип бита управления для выбора конфигурации дисплея и его цифры; операции, эти, осуществляется в последовательности.
  • Стабилизируйте сигналы, позволяющие’ О.Е. два чипа.
  • сигнал переключателя “МЫ” для фактического написания на дисплее.

Е’ Понятно, что приходится писать о 8 цифра (2 дисплей в 4 цифра) sigole буквы, которые составляют полный текст (как вы, возможно, видели фильм) Необходимо определить точную последовательность команд и символ, который будет отправлен . В связи с этим я построил следующую таблицу.

Когда вы будете читать эту таблицу ?. пример: Вы хотите загрузить дисплей “1” цифра “0” с характером: то вы послали на первый чип и значение символа в соответствии с чипом десятичного значения “62“. Компоновка бит на выходе (Q0 / В7) Это соответствует сигналам A1 / A0, НД2, CL2, CE2, BL1, CL1, СП1 которые я на логическом уровне “1” (нерабочая) или логический уровень “0” операционная. Не обманывайте цифры, указанные в таблице, как я привык, чтобы правильно вычислить значение, когда они равны нулю или один. Другое дело, иметь в виду, что в зависимости от того, как чипы были подключены к сигналам, а затем отобразить, она не говорит, что первый чип обязательно должен быть один для данных, или, что для сигналов.

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

  • Активация Солита из’ РТК с обычным контролирует наличие и эффективность, что в отсутствии системы.
  • Конфигурация штифта, соединенного с 74HC595 чипа.
  • В цикле “петля” считывание значений RTC, транскодирование того же и подготовки строки состоит из слов “ТАКИЕ ЧАСЫ ” значения времени (десятки и единицы) перемежаются с точкой, то “DEL ” день стоимость, перекодирование месяца и транскодирования недели. Таким образом, в конце строки будет содержать:
  • ТАКИЕ ЧАСЫ xx.xx хх мая ПЯТНИЦУ —-> пример. Промежутки между одним словом и другими получаются с характером “00” двоичный код, который ничего не производит видимое.
  • После построения строки, в соответствии с его фактической длиной вставляются в массиве D 8 позиция байт 8, первый символ строки.
  • Он выполняет цикл 8 циклы для отправки значений массива 8 дисплей дей цифры (набор конкретных команд для отображения и цифр и data_value).
  • Он поддерживает множество сдвига 8 байты справа налево.
  • Он повторяет цикл.

Его получают таким образом, скользящий эффект, который запрограммированная скорость 250мс можно считать оптимальной для просмотра.

 

ЗАКЛЮЧЕНИЕ:

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

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

Спасибо за внимание.

GVSOFT мая 2018

PS: если вы заинтересованы в эскизной и связанной с ними документации записи в gvsoft75@hotmail.com.

 

 

 

 

2 ответы
  1. theremino
    theremino говорит:

    Я видел вещи, или в одном из предыдущих безумных часов было объяснение того, как декодировать сигнал DCF77?
    Я попробовал товар, но не могу найти его.

Ответить

Хотите принять участие в обсуждении?
Вы можете внести свой вклад!

оставьте ответ