Страница 1 из 2
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 00:07
Nureke
Всем доброго дня. Подскажите пожалуйста. Как можно разбить целое 4-х значное число на 4 отдельные цифры.
Есть счетчик воды. На дисплее 1602 все замечательно считает. Счет в литрах от 1 до 1000. Больше не надо. Потом вручную делается сброс счетчика. Но необходимо поменять дисплей на матрицу 8х8 на мах7219 (4 матрицы на одной дорожке). Необходимо чтоб каждая цифра была в отдельной матрице. Вижу выход такой: создать массивы из цифр с нуля до 9. И индексами выбирать на каждой матрице отдельно. И вот незадача - не могу разбить цельное число допустим 365 на отдельные 3, 6, 5 чтобы они считаясь индексами выбирали для себя цифру и отображали на каждой матрице свою цифру. Как это сделать, подскажите пожалуйста. Либо есть другой путь решения.
Заранее спасибо.
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 02:42
valand
можно через строки
выделение символа из строки 4х.flp
(смотреть внимательно настройки каждого блока в примере)
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 07:19
aidar_i
Есть в форуме ПБ для этой матрицы. Попробуйте поставить промежуток между цифрами побольше.
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 08:15
pan
какие строки...
тут проще простого
просто делите число на 10, остаток от деления будет младшим знаком.
потом еще на 10, снова запоминаем остаток. и так любой длинны число можно поделить на отдельные цифры
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 09:16
manjey73
могу код на C# дать, это же отображение числа в BCD формате ?
Пока не создавал пользовательские блоки в режиме Code, надо будет попробовать, или может кто по быстрому сделает ?
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 09:35
pan
а штатные блоки деление и остаток от деления чем не угодили
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 09:53
Sancho
Алексей - полностью согласен!
Вот когда ещё не было модуло, Спасибо Автору, появилось, делал так:
INT_to_5Digit_(CODE).ubi
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 09:57
manjey73
[ref=#ff8000]pan[/ref], я еще многого не изучал. Но вот то, что внутрь пользовательских блоков нельзя вставить так же пользовательский блок немного напрягает....
мне кажется кодовая функция была бы куда лучше, и чтобы было два выхода (или переключаемые), байтовый массив или строка.
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 10:43
pan
manjey73 писал(а): 13 мар 2019, 09:57я еще многого не изучал
вы пытаетесь решить проблему не поглядев даже на то какие есть штатные блоки?
и что они делают
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 11:00
rw6cm
[ref]manjey73[/ref],
[spoiler]
2019_03_13_10_52_16_FLProg_4.2.4.png
[/spoiler]
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 11:32
manjey73
А теперь 8 знаков сделайте, неплохая простынка получится...

Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 11:38
Sancho
manjey73 писал(а): 13 мар 2019, 11:32А теперь 8 знаков сделайте, неплохая простынка получится...

А плату после этого свернуть не судьба?
Тогда учите С++

Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 12:58
manjey73
Платы это не то, что выбирается типа Nano, Uno и так далее ?
Что это?, что-то вроде листов проекта ?
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 13:02
Nureke
Большое спасибо. Сегодня буду пробовать. Отпишусь.
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 13:05
rw6cm
manjey73 писал(а): 13 мар 2019, 11:32А теперь 8 знаков сделайте, неплохая простынка получится...

Вы простынок еще не видели ), кода в проекте пол сотни плат, в каждой из которых по сотни блоков )))
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 13:24
manjey73
[ref=#ff8000]rw6cm[/ref], тут если честно больше интересно скорость работы, рисовать блоками, где каждый чих что-то делает и отнимает ресурсы или написать блок в коде, в котором цикл и преобразование...
Я не очень большой знаток Arduino, но то, что там проц не гигагерцы это уж точно...
Но для этого надо тестить и пробовать... Я пока не разобрался как писать блоки на C
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 13:32
rw6cm
manjey73 писал(а): 13 мар 2019, 13:24где каждый чих что-то делает и отнимает ресурсы или написать блок в коде, в котором цикл и преобразование...

))
Если Вы собрались изучать С++, то ошиблись форумом, здесь Вас этому точно не научат.
А если собирать схемы, то добро пожаловать )
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 13:40
manjey73
[ref=#ff8000]rw6cm[/ref], меня не C++ интересует в данном случае, а толковые примеры переноса кода в пользовательский блок в режиме Code.
с С++ как-нибудь разберусь, либо адаптирую готовые куски кода из С# но вот как правильно прописывать при создании блока пока не разобрался... И главное как это протестировать, чтобы быть уверенным что код работает правильно ?
Симуляция если правильно понял только через Proteus ?
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 13:51
rw6cm
manjey73 писал(а): 13 мар 2019, 13:40толковые примеры переноса кода в пользовательский блок в режиме Code.
Сырой он очень, многое в нем не сделать, или придется по изгаляться, что не есть хорошо.
так что о компактности кода пока что говорить не приходится, хотя бы сделать чтоб работало )
Разбивка 4-х значного числа на цифры
Добавлено: 13 мар 2019, 14:18
seri0shka
Разбивка_4-х_значного_числа_на_цифры_(CODE).ubi
[ref]Nureke[/ref], вот написал, пробуйте. Там внутри в комментариях номерация разрядов иная, переписывал с другого блока. Должно работать.