разве это норма что символы идут справа налево? Должны слева направо...Labu55 писал(а):А в мониторе порта с учетом того, что Вы отправляете, всё в норме
Бегущая строка
Бегущая строка
Последний раз редактировалось Lisica 26 дек 2017, 19:28, всего редактировалось 1 раз.
Бегущая строка
Уважаемый Lisica. Вы случайно не пробовали в супермаркете засунуть в пакет на 5кг. товара весом 10? Надеюсь с этим у Вас всё в порядке. Так почему в регистр данных HD44780, предназначенный на обработку 2х16 символов должны залезть Ваши ( 012345678910ryrnhtttd6 г ар рк6ш6347877856444тгь6гььннроаоечрerteayrnu65744hme6mu6u4y)+ данные счетчика. Неужели вывод в ком порт Вас не натолкнул ни на какие мысли по этому поводу?Lisica писал(а):разве это норма
Вы всё ещё нуждаетесь в ответе на этот вопрос?Lisica писал(а):разве это норма
Бегущая строка
Ну да 80х8, и ещё 40-битный регистр сдвига и I2C шина до индикатора, и реку рвёт в самом тонком месте. Просто мне кажется что у человека готовое решение его проблемы уже было в 9-м сообщении а дальше... спортивный интерес переключился на второй проект, потом третий с "данными- 101символ (кириллица по 2байта)" которые не может выводить. Извините если ошибаюсь да и помочь больше ничем не могу. Всем удачи.pan писал(а):ну по даташиту
Последний раз редактировалось Labu55 27 дек 2017, 18:48, всего редактировалось 1 раз.
Бегущая строка
Предел 16 - значит должно 16 и не более. 16 ведь влезут да? Отрежте сколько нужно, но, всё равно не будит работать правидльно.Labu55 писал(а):должны залезть Ваши
Или Вы думаете, что я именно ту строку буду пихать?
Не хотите понять меня просто...
А я объяснял... Речь ведь не о том сколько влезет в дисплей, а о неправильности работы блока выделения подстроки.
Читайте внимательно выше, если не поймёте, всё равно. то переспросите. а лучше в скайпе, голосом.
Добавлено (27.12.2017, 19:51)
---------------------------------------------
Это не проэкты а макеты, в которых блок выделения должен выделять 16 символов, будь там хоть и пятьсот в строке....Labu55 писал(а):спортивный интерес переключился на второй проект, потом третий с "данными- 101символ
Я просто пытался Вам объяснить чего я хочу, но вы читаете по диагонали. наверное.
Последний раз редактировалось Lisica 27 дек 2017, 19:52, всего редактировалось 1 раз.
Бегущая строка
Уважаемый Lisica. Поймите, действительно трудно понять человека, который пытаясь доказать свою правоту перепрыгивает с одной задачи на другую. Что-же давайте разложим по полочкам.
Извините что каждым своим ответом заставляю Вас подумать и прийти к ответу самостоятельно. Ошибаются в этом мире все, а вот признают свои ошибки единицы. Я тоже не претендую на абсолютную истину в своих словах и пытаюсь Вас понять. По прежнему желаю Вам удачи и приятных праздников.
В блоке одна строка кода _GSFS1 = (String("")).substring(0); Исправте как должно быть.Lisica писал(а):неправильности работы блока выделения подстроки
Правильно до того момента пока у Вас символы ANCII.Lisica писал(а):Предел 16 - значит должно 16
А Вы 18 сообщение как читали. Ваш проект(макет) - всё нормально работает у меня. А своё какLisica писал(а):но вы читаете по диагонали
Я что-то сделал не по Вашему? И сколько по-Вашему в строке символов "до конца", не от 1 до 120? Или ответ, что в монитор порта выводятся все данные правильно противоречат скрину? Если противоречат- научите монитор читать киррилицу.Lisica писал(а):Ничего не меняйте и проверьте.Потом замените в блоке вывода подстроки константу на "до конца"
А Вы взаправду считаете что остальные 500-16 ни коим образом не используют вычислительные ресурсы, или шины данных неисчерпаемой ширины и скорости?Lisica писал(а):16 символов, будь там хоть и пятьсот в строке
Как приходят так и идут. Включите счётчик на уменьшение, пойдут как Вы хотите.Lisica писал(а):разве это норма что символы идут справа налево
Извините что каждым своим ответом заставляю Вас подумать и прийти к ответу самостоятельно. Ошибаются в этом мире все, а вот признают свои ошибки единицы. Я тоже не претендую на абсолютную истину в своих словах и пытаюсь Вас понять. По прежнему желаю Вам удачи и приятных праздников.
Бегущая строка
Уважаемый Labu55,
Просьба таки перечитать вс это сообщение.
Берём проэкт из самого первого сообщения, дополняем выводом в компорт.
загружаем в ардуину и смотрим.
На дисплее печатаются 16 пробелов 16 раз потом идут не пробелы.
Вот и возникает вопрос - почему, ведь в Блоке вывода подстроки начало
строки задаётся генератором то есть 1,2,3........ и так далее. сброс по
окончании просто сейчас не нужен.
Должна на выходе этого блока быть строка:
16 пробелов
15 пробелов и 1
14 пробелов и 12
и так далее.
на дисплее же и в ком порту пропечатываются(повторюсь) 16 пробелов 16 раз
и не пробелы выводятся справа налево.
Теперь, убираем пробелы в строке перед не пробелами, компилируем, загружаем. смотрим.
Упс, строка "лезет" как и надо, то есть
1234567891011121
2345678910111213
3456789101112131
Всё как задумывалось - справа на лево.
И заметте. в обоих случаях общая длина строки больше 16ти знаков.
Теперь вопрос - на что так влияют пробелы, что блок начинает с ума сходить?
Попробовал подставить не 16, а 5 пробелов перед знаками, то, выводит 21 пробел. почему то...
Я не доказываю, а констатирую факт. и не перепрыгиваю, ето один и тот же проэктик, только с разными приправами.Labu55 писал(а):Поймите, действительно трудно понять человека, который пытаясь доказать свою правоту перепрыгивает с одной задачи на другую.
Просьба таки перечитать вс это сообщение.
Берём проэкт из самого первого сообщения, дополняем выводом в компорт.
загружаем в ардуину и смотрим.
На дисплее печатаются 16 пробелов 16 раз потом идут не пробелы.
Вот и возникает вопрос - почему, ведь в Блоке вывода подстроки начало
строки задаётся генератором то есть 1,2,3........ и так далее. сброс по
окончании просто сейчас не нужен.
Должна на выходе этого блока быть строка:
16 пробелов
15 пробелов и 1
14 пробелов и 12
и так далее.
на дисплее же и в ком порту пропечатываются(повторюсь) 16 пробелов 16 раз
и не пробелы выводятся справа налево.
Теперь, убираем пробелы в строке перед не пробелами, компилируем, загружаем. смотрим.
Упс, строка "лезет" как и надо, то есть
1234567891011121
2345678910111213
3456789101112131
Всё как задумывалось - справа на лево.
И заметте. в обоих случаях общая длина строки больше 16ти знаков.
Теперь вопрос - на что так влияют пробелы, что блок начинает с ума сходить?
Попробовал подставить не 16, а 5 пробелов перед знаками, то, выводит 21 пробел. почему то...
Я в кодах не силён, так что констатирую только факты неправильной работы.В блоке одна строка кода _GSFS1 = (String("")).substring(0); Исправте как должно быть.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Lisica 28 дек 2017, 00:48, всего редактировалось 1 раз.
Бегущая строка
Lisica,
Ваша настойчивость забрала у меня ночь сна. Проверил Ваш первый проект- результат отличается от Вашего. В частности этого нету, хотя это уже не важно.
Ваша настойчивость забрала у меня ночь сна. Проверил Ваш первый проект- результат отличается от Вашего. В частности этого нету, хотя это уже не важно.
Дальше взял предложенный Вам мой второй вариант, как образец, сделал свой блок для получения подстроки, чтобы проверить наверняка Ваше утверждение о глючности штатного и заново собрал проект. Протестировал. Потом тоже самое проделал в версии 2.5.1. Более подробно в подготовленном отчёте. Поздравляю ошибка есть 100%, но вот сказать точно где возникают ошибки, в программе или при компиляции не могу пока. Уже не хватает сил для проверки генерируемого кода, но по логике- раз различаются результаты в разных версиях FLProg, то тут и гвоздям быть. Тут не помешала бы помощь опытных ребят, чтоб не тревожить раньше времени Ув. Автора. Всё что необходимо собрал в архиве, подробные комментарии всего по месту. Благодарю Вас за внимательность и целеустремлённость.На дисплее печатаются 16 пробелов 16 раз
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Бегущая строка
Ну наконец то подружились Фома с Ерёмой...Labu55 писал(а):Поздравляю

А как Вы запихнули результаты ком порта в текстовый файл? Это так, на будущее.
И этот же блок выделения подстроки вставил в анализатор громкости, то
работает чётко, но там нет пробелов, только прямоугольники Малевича.
Добавлено (28.12.2017, 09:47)
---------------------------------------------
Просмотреть, в ide код и выудить что там не так.Labu55 писал(а):программе или при компиляции
Может программа вставляет в ide пробелы в какой то заумной кодировке,
может библиотека i2c как то связана с этим.
может библиотека самого дисплея.......
ЗЫ. Иногда, после прошивки дуины, на дисплей выводяятся крякозяблики. Ресет не помогает, только перевтык питания, это хоть из за чего?
Бегущая строка
но Вы то, что-то поняли из всего диалога кроме желаемого, того что ошибка действительно есть? Очень надеюсь, что -да. И то что, для нахождения скрытой ошибки нужно устранить явные, как-то счётчик до бесконечности, некорректные данные (как по длинне так и по содержимому) и не менять начальные условия (задачи). Поведенческая психология (бихевиоризм) у большинства людей одинаковая - ухватиться за явное и считать оппонента объектом с аналогичным багажем навыков, знаний и мышлением, если false вначале, то true дальше теряет значение. Меня кое-чему научила эта ситуация. Эх пойду- ка я проверять польз. блок ТМ1638 с похожим алгоритмом бегущей строки, который уже 3 месяца гуляет (думал успешно) по людях. Подозреваю что в нашей ситуации признак окончания строки (NULL) принимается за пробел, или присходит наоборот.Lisica писал(а):подружились Фома с Ерёмой
Обычным Copy-Past_ом. ПраваяКнопкаМыши на поле.как Вы запихнули результаты ком порта в текстовый
[spoiler=Спойлер][/spoiler]
HD44780 не получила команду на очистку (что должно происходить при инициализации) - такой Блок 1602.Lisica писал(а):Иногда, после прошивки дуины, на дисплей выводяятся крякозяблики.
Попробуйте с насущного, необходимого, елементарного - ссылка.Lisica писал(а):Я в кодах не силён
Добавлено (28.12.2017, 12:13)
---------------------------------------------
Непредусмотреные символы (кириллица?).Lisica писал(а):прямоугольники Малевича
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Labu55 28 дек 2017, 12:55, всего редактировалось 1 раз.
Бегущая строка
Почему непредусмотренные? Самый последний символ в таблице, вывожу как \377Labu55 писал(а):Непредусмотреные символы (кириллица?).
Это я понял.Labu55 писал(а):но Вы то, что-то поняли из всего диалога кроме желаемого, того что ошибка действительно есть?
Тоже в курсе.Labu55 писал(а):для нахождения скрытой ошибки нужно устранить явные
И не успел сказать ещё утром спасибо, что таки не покинули меня в одиночестве, а прислушались к моему нытью.
ЗЫ, кое что в личку написал.
Бегущая строка
Вам свои "спасибо" я уже раздал, а теперь "ДОБРО ПОЖАЛОВАТЬ В МИР FLPROG", надеюсь мы все здесь надолго. Сил и вдохновения нашему Уважаемому Автору.Lisica писал(а):не успел сказать
Добавлено (28.12.2017, 14:15)
---------------------------------------------
символы выводятся переменной типа unsigned char (макс. значение 255 с учётом 0). Протоколом передачи передаются порядковые номера символов в таблице ANCII. Кириллица, японица, китаеца, арабика, гречиха (шучу в названиях раскладок) подменяются на уровне знакогенератора (представление в виде матрицы точек, или битовых массивов для 7-ми сегментного дисплеев)для тех же латинских символов. Очень часто в Ардуино пренебрегают беззнаковыми типами данных и загоняют символы строки в знаковые char, о чем очель ласково предупреждает компилятор. Почему ласково? Потому, что компилирует правильно но говорит что другие компиляторы могут это сделать неправильно или что ему тоже может взбрести что-то в голову и он не отвечае за результат. С кириллистическими индикаторами не работал, потому мне немного знаком только метод вышеописанный выше (на уровне библиотек или подмены). Как-то так. Если кто-то увидел мои заблуждения- искренне прошу вывести бред на чистую воду. Я учусь.Lisica писал(а):Почему непредусмотренные? Самый последний символ в таблице, вывожу как \377
Последний раз редактировалось Labu55 28 дек 2017, 14:29, всего редактировалось 1 раз.
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Бегущая строка
Каждому символу соответствует ОДИН байт.
Отображаемый символ зависит от таблицы, зашитой в пзу индикатора.
Алфавиты(в пзу) могут быть абсолютно разные( как написано в посте выше).
Плюс несколько дополнительных, пользовательских, символов.
P.S. datasheet наше всё.
P.P.S. Недешёвый дисплей с ДВУМЯ страницами кодов знакогенератора.
Отображаемый символ зависит от таблицы, зашитой в пзу индикатора.
Алфавиты(в пзу) могут быть абсолютно разные( как написано в посте выше).
Плюс несколько дополнительных, пользовательских, символов.
P.S. datasheet наше всё.
P.P.S. Недешёвый дисплей с ДВУМЯ страницами кодов знакогенератора.
Последний раз редактировалось Sancho 28 дек 2017, 15:13, всего редактировалось 1 раз.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Бегущая строка
Ох, уж эти Яндексы. Пришлось срочно смотаться в Америку, что-бы посмотреть, и вернуться. Спасибо поправили по делу, хоть учился в 90-х, но материал наверное излагали с 70-х, а может бэд секторы в памяти , или приобретённая зависимость от китайских CGROMов, ну и попытка унифицировать ответ и для монитора порта(терминальной программы).Sancho писал(а):от таблицы,
А вот и вторая часть марлезонского балета
[spoiler=таблицы ANCII][/spoiler]
Кто-же, в своём уме будет засовывать ещё 127 байт в таблицы ANCII to 7-segData (Etc) ради нескольких символов кириллицы? Вот и извращаются, то в оперативку помещают, а чаще подменяют неиспользуемыми с первой части.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Labu55 28 дек 2017, 15:57, всего редактировалось 1 раз.
Бегущая строка
агаLabu55 писал(а):А вот и вторая часть
, в этих таблицах символ - квадрат малевича и 178 и 219, я нашёл таблицу, где 255
но у меня оно вывелось только тогда, когда 255 перевёл в восмиричный код 377
а 255 выводило как иероглиф, похожий на маленькую еденицу.
Во, идея, вывести с генератора во вторую строку числа, а в первую знак, соответствующему этому числу, и сравнить с таблицами.
Добавлено (28.12.2017, 16:55)
---------------------------------------------
Ну вот.. Теперь иде ругается на строку сложения со слешем...
_gtv1 = ((String("\")) + ((String(_count1P, DEC))));
Что я опять не так делаю?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Lisica 28 дек 2017, 16:57, всего редактировалось 1 раз.
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Бегущая строка
Слэш - "/".Lisica писал(а):Ну вот.. Теперь иде ругается на строку сложения со слешем...
"\" - обратный слэш...
Добавлено (28.12.2017, 17:12)
---------------------------------------------
Просто замени и будет счастье
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Бегущая строка
не будит... коды символов вводятся с обратным слешем "\"Sancho писал(а):Просто замени и будет счастье
"\1\2\3\4........" и т д и т п
на дисплее с прямым слешем выводятся /1 /2.........
но не символы из таблицы.,
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Lisica 28 дек 2017, 17:21, всего редактировалось 1 раз.
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Бегущая строка
Теперь идею уловил, но думаю, просто нужно посмотреть на марку чипа на плате или библиотеку немного подправить, чтобы понять что-к чему.Lisica писал(а):не будит... коды символов вводятся с обратным слешем "\"
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Бегущая строка
Делал я блок бегущая строка . Длина строки не имела значения. Помню что там где не справлялся "Блок получения подстроки" пришлось добавить много логики. Получилось слишком громоздко. Поищу и если найду выложу.
Последний раз редактировалось cmept-27 28 дек 2017, 18:17, всего редактировалось 1 раз.
OK
Бегущая строка
А иде может ругаться на сложение с обратным слешем из за библиотеки?Sancho писал(а):или библиотеку немного подправить, чтобы понять что-к чему.
Ага... но на "каплях" не написано...Sancho писал(а):на марку чипа на плате
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость