Страница 1 из 1

как вывести 3 знака на семисегментник по динамической

Добавлено: 11.08.2022{, 07:25}
fefar51702
горят только две цифры двойки
притом третий знак и не горит где и должн абыть двойка
индикатор имеет только входы под один знак с последующей динамическим распределением
2022-08-11_111833.png
2022-08-11_111833.png (8.47 КБ) 1415 просмотров
analoguedisplay_ched_4_bb (1).jpg
индикация.flp
(206.3 КБ) 48 скачиваний

как вывести 3 знака на семисегментник по динамической

Добавлено: 11.08.2022{, 11:05}
aidar_i
Пример подключения, мой термометр "Улица-Лоджия", индикатор подключен напрямую.
Термометр с 2мя DS18B20.flp
(655.6 КБ) 57 скачиваний

как вывести 3 знака на семисегментник по динамической

Добавлено: 11.08.2022{, 12:29}
Goosr
Судя по вашей схеме, вы скорее всего не правильно соединили в программе выходы модуля семисегментного индикатора с модулем сдвиговых регистров. То-есть нужно подключать r1-A2 r2-B2 r3-C2. Схемку семисегментного дисплея прилагаю. И непонятно для чего выборка цыфр, модуль семисегментного дисплея понимает строку в зависимости от количества разрядов.
СпойлерПоказать
4 bit 7 segment module.jpg

как вывести 3 знака на семисегментник по динамической

Добавлено: 11.08.2022{, 15:44}
fefar51702
aidar_i, пинов не хватает
Goosr, мне нужно три независимых друг от друга знака выводить поэтому и пробую сделать синхронизатор разрядов
плохо что автор не доработал его до такой возможности
как вы и сказали блок понимает только строку на все разряды сразу
есть предположние что я в цикл не попадаю но сообразить не могу куда перекинуть разряд

как вывести 3 знака на семисегментник по динамической

Добавлено: 11.08.2022{, 18:01}
Goosr
Вам надо независимые цифры собирать в строку, для этого есть SSUM

как вывести 3 знака на семисегментник по динамической

Добавлено: 13.08.2022{, 16:26}
fefar51702
Goosr, разделяет нормально через суматор

только второй день немогу понять почиму знаки еле заметно подёргиваются
судя по осцылографу частота на r1 r2 r3 - 161гц что вполне достаточно для динамики
но видимо проблема кроется в сути этой частоты она состоит из импульса в 600мкс и паузы в 5,3мс
вроде апаратный SPI
непонятно почиму частота низкая и почиму её составляющие дисбалансные для сегментов

как вывести 3 знака на семисегментник по динамической

Добавлено: 25.08.2022{, 06:43}
fefar51702
а как разбить два разряда на суматор для коректного отображения ?
2022-08-25_103641.png
2022-08-25_103641.png (6.65 КБ) 1092 просмотра
если послать 0-9 то нормально показывает
первое число номер меню и третье 0-9 а второе число пустое
но стоит подать число от 10 ... как первое число на дисплее сдвигается на второе а второе число передвигается на первое

если я в меню поставлю 5 то мне покажет 1 _ 5
если в меню поставить 23 то мне показывает 213 вместо 123

как вывести 3 знака на семисегментник по динамической

Добавлено: 25.08.2022{, 08:19}
Dryundel
fefar51702 писал(а):
11.08.2022{, 15:44}
если в меню поставить 23 то мне показывает 213 вместо 123
Потому, что во втором случае у Вас получается 4 разряда вместо 3. Пробел это тоже разряд.
Преобразуйте вторую строку в число, а лучше сразу возьмите это значение в числовом формате из блока меню. Дальше компаратор. Если число больше 9 то на второй вход сумматора подавайте пустую строку, если меньше - пробел. Через переключатель свитч.

как вывести 3 знака на семисегментник по динамической

Добавлено: 25.08.2022{, 09:41}
aidar_i
В моем примере выше показан как это решить.

как вывести 3 знака на семисегментник по динамической

Добавлено: 26.08.2022{, 06:05}
fefar51702
попробовал всеравно первые два числа меняются местами
2022-08-26_100036.png
2022-08-26_100036.png (8.65 КБ) 997 просмотров
меню.flp
(255.1 КБ) 37 скачиваний

как вывести 3 знака на семисегментник по динамической

Добавлено: 26.08.2022{, 17:21}
Dryundel
fefar51702 писал(а):
26.08.2022{, 06:05}
попробовал всеравно первые два числа меняются местами
Вы не вставили в свитч на вход 1 ничего. А надо вставить пустую строку.
Если ничего не писать туда, то константа не вставляется. Вставьте что то, сохраните, а потом снова откройте для изменения и бэкспейсом удалите все, после чего снова сохраните. Надо сделать так, что бы вход не был пунктирным.

как вывести 3 знака на семисегментник по динамической

Добавлено: 26.08.2022{, 18:18}
aidar_i
У него стоит пробел там.
fefar51702 писал(а):
25.08.2022{, 06:43}
показывает 213 вместо 123
вот это непонятно, как эти цифры могут поменяться местами, я понимаю ещё сдвиг направо.
Попробуйте на входа свитч подключить два сумматора: один с пробелом , другой без.

как вывести 3 знака на семисегментник по динамической

Добавлено: 27.08.2022{, 00:38}
Dryundel
aidar_i писал(а):
26.08.2022{, 18:18}
У него стоит пробел там.
Пробел на входе 0, а на входе 1 константа не установлена вообще, а надо пустую строку.

как вывести 3 знака на семисегментник по динамической

Добавлено: 27.08.2022{, 06:10}
fefar51702
извените я там ошибся когда паял эти два разряда как раз
местами поменял
но всеравно без пустой строчки неполучилось бы