FLProg
Вход на сайт
Логин:
Пароль:
Поиск
...
Статистика
Четверг, 21.06.2018, 02:06
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Внимание всем пользователям программы FLProg! В течении ближайших двух дней будет осуществляться переход на новую платформу
Чтобы продолжить общение на форуме вы можете перейти сюда
Сообщения оставленные на старом форуме будут утеряны безвозвратно
Приятного Вам Нового года и до встречи в новом 2018 году
С уважением Администрация flprog.ru
Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 4
  • 1
  • 2
  • 3
  • 4
  • »
Модератор форума: support, Сергей, Олег, Anydy  
Форум » Основной » Спросить у знатоков » Бегущая строка (Блок получения подстроки.)
Бегущая строка
Lisica Дата: Суббота, 23.12.2017, 19:11 | Сообщение # 1
Сержант
Группа: Проверенные
Сообщений: 35
Награды: 1
Репутация: 0
Статус: Offline
Просьба посмотреть знатокам, что я делаю не так.
По идее должно работать, но работает как то не правильно...
Прикрепления: 3435633.flp(55.8 Kb)


Сообщение отредактировал Lisica - Суббота, 23.12.2017, 20:34
 
pan Дата: Суббота, 23.12.2017, 20:07 | Сообщение # 2
Генерал-полковник
Группа: Проверенные
Сообщений: 1425
Награды: 44
Репутация: 42
Статус: Offline
а что смотреть то?  два блока это проект получения подстроки?
Цитата Lisica ()
По идее должно работать, но работает как то не правильно...
там нечему работать. пустой проект.
и при чем тут блоки сохранения в эпром?

для работы со строками есть блоки
 
Lisica Дата: Суббота, 23.12.2017, 20:22 | Сообщение # 3
Сержант
Группа: Проверенные
Сообщений: 35
Награды: 1
Репутация: 0
Статус: Offline
Цитата pan ()
и при чем тут блоки сохранения в эпром?
Именно, а где вы их увидели??? Я EEprom не пользовался...
Цитата pan ()
пустой проект.
Как так пустой?
Генератор генерит. Счётчик считает.
Блок вывода подстроки выделять должен строку из констатты с началом start и длиной 16 знаков.
Эту подстроку передаём на дисплей... Только передаётся что то не то...


Сообщение отредактировал Lisica - Суббота, 23.12.2017, 20:25
 
pan Дата: Суббота, 23.12.2017, 20:30 | Сообщение # 4
Генерал-полковник
Группа: Проверенные
Сообщений: 1425
Награды: 44
Репутация: 42
Статус: Offline
вот скаченный проект из первого сообщения

больше там ни чего нету
 
Lisica Дата: Суббота, 23.12.2017, 20:35 | Сообщение # 5
Сержант
Группа: Проверенные
Сообщений: 35
Награды: 1
Репутация: 0
Статус: Offline
Цитата pan ()
вот скаченный проект из первого сообщения
Извиняюсь - перезалил...
 
pan Дата: Суббота, 23.12.2017, 20:56 | Сообщение # 6
Генерал-полковник
Группа: Проверенные
Сообщений: 1425
Награды: 44
Репутация: 42
Статус: Offline
ок. как должно работать? опишите алгоритм

Добавлено (23.12.2017, 20:56)
---------------------------------------------
вероятно вам поможет это

 
Lisica Дата: Суббота, 23.12.2017, 21:07 | Сообщение # 7
Сержант
Группа: Проверенные
Сообщений: 35
Награды: 1
Репутация: 0
Статус: Offline
Цитата Lisica ()
Блок вывода подстроки выделять должен строку из констатты с началом start и длиной 16 знаков.Эту подстроку передаём на дисплей...
С каждым увеличением счётчика, на дисплей выводится 16 знаков, но с энного начала.
Без начальных пробелов - вроде движется, но с пробелами - что то происхдит странное...


Сообщение отредактировал Lisica - Суббота, 23.12.2017, 21:07
 
Labu55 Дата: Вторник, 26.12.2017, 00:24 | Сообщение # 8
Майор
Группа: Проверенные
Сообщений: 132
Награды: 4
Репутация: 4
Статус: Offline
Lisica
Попробуйте так:


Это упрощённая реализация ф-и прокрутки ПБ LED&KEY ТМ1638.
Прикрепления: 3966165.png(14.8 Kb) · Scrollind.flp(113.5 Kb)
 
Lisica Дата: Вторник, 26.12.2017, 01:11 | Сообщение # 9
Сержант
Группа: Проверенные
Сообщений: 35
Награды: 1
Репутация: 0
Статус: Offline
Цитата Labu55 ()
Попробуйте так:
Попробовал, и увидел. что вы в блоке получения подстроки выставили - до конца.
Выставил "до конца" у себя - заработало.
Значит в самом блоке ошибка закралась?
 
Labu55 Дата: Вторник, 26.12.2017, 01:31 | Сообщение # 10
Майор
Группа: Проверенные
Сообщений: 132
Награды: 4
Репутация: 4
Статус: Offline
Цитата Lisica ()
в самом блоке ошибка закралась?
Ошибок не находил, просто вышедшие за пределы дисплея символы не мешают в Вашем/моём случаях, а операции их удаления избыточны здесь. Хотя помнится мне, что на 0.96" OLED дисплее, те символы что не влезают в дисплейную строку вылазят вначале/накладываются.
У Вас фиксированная длина строки (отсчёт счётчика) а у меня автонастраиваемая.


Сообщение отредактировал Labu55 - Вторник, 26.12.2017, 01:34
 
Lisica Дата: Вторник, 26.12.2017, 01:37 | Сообщение # 11
Сержант
Группа: Проверенные
Сообщений: 35
Награды: 1
Репутация: 0
Статус: Offline
Цитата Labu55 ()
просто вышедшие за пределы дисплея символы не мешают в Вашем/моём случаях,
Но почему тогда фиксированная константа длины строки в 16 символов даёт непредсказуемые эффекты.
PS я в железе проверяю. Pro mini Mega328 и 16х2 дисплей с I2C
 
Labu55 Дата: Вторник, 26.12.2017, 01:40 | Сообщение # 12
Майор
Группа: Проверенные
Сообщений: 132
Награды: 4
Репутация: 4
Статус: Offline
Цитата Lisica ()
тогда фиксированная константа длины строки в 16 символов
Потому, что после того как начальное значение стало 15- конечное будет_ 15-16=-1. Нужно применить ф-ю min(начальное значение, конечное значение)


Сообщение отредактировал Labu55 - Вторник, 26.12.2017, 05:46
 
Lisica Дата: Вторник, 26.12.2017, 01:47 | Сообщение # 13
Сержант
Группа: Проверенные
Сообщений: 35
Награды: 1
Репутация: 0
Статус: Offline
Цитата Labu55 ()
Потому, что после того как начальное значение стало 15- конечное будет_ 15-16.
А если начальное 14, тогда 14+16???
Должно же, по логике прибавляться 16... зачем отнимать то?

Добавлено (26.12.2017, 01:47)
---------------------------------------------
Да и с начала непонятки...
Первые 16 пробелов должны проплывать и тянуть основное слово, то есть с началом 1 уже должна появиться первая буква надписи. А на практике получается - 16 раз копируется 16 пробелов, потом уже начинает выплывать надпись.
Ладно, я спать, завтра на работу.


Сообщение отредактировал Lisica - Вторник, 26.12.2017, 01:48
 
Labu55 Дата: Вторник, 26.12.2017, 03:00 | Сообщение # 14
Майор
Группа: Проверенные
Сообщений: 132
Награды: 4
Репутация: 4
Статус: Offline
Цитата Lisica ()
А если начальное 14, тогда 14+16
= 30 -это длина всей строки, а если начальное сдвинулось до 17+16=33 где взять недостающие 3 символа? Теперь понятней?

Добавлено (26.12.2017, 01:59)
---------------------------------------------
Цитата Lisica ()
потом уже начинает выплывать надпись
Это и есть прокрутка когда появляется по одному символу. Не подходит, поменяйте в блоке сложение строк местами пробелы и строку или Создавайте свой собственный эффект как Вам заблагорассудится выбором колличества пробелов(других символов) до/после строки в блоке сложение строк. В приложении то-же самое, но так как Вы хотите. smile

Добавлено (26.12.2017, 03:00)
---------------------------------------------
Цитата Lisica ()
16 раз копируется 16 пробелов
Об каком проекте речь, предложеном мной или Вашем с неизвестным методом формирования строки?
PS Кажется в описании блока получения подстроки раньше было написано о назначении Входа Конец. Вы наверное туда ввели длину всех сложеных строк? Попробуйте поставить значение 15 или второй проект.
Прикрепления: Scrollind2.flp(146.6 Kb)


Сообщение отредактировал Labu55 - Вторник, 26.12.2017, 05:45
 
Oleg_UA Дата: Вторник, 26.12.2017, 03:38 | Сообщение # 15
Лейтенант
Группа: Проверенные
Сообщений: 91
Награды: 6
Репутация: 4
Статус: Offline
Как раз для подобных нужд был сделан блок biggrin
Прикрепления: Test.flp(124.9 Kb)
 
Форум » Основной » Спросить у знатоков » Бегущая строка (Блок получения подстроки.)
  • Страница 1 из 4
  • 1
  • 2
  • 3
  • 4
  • »
Поиск:

FLProg © 2018
uCozЯндекс.Метрика