Дисплей LCD 4004

Тип MDLS40466

Пользовательские блоки для вывода информации на дисплеи и индикаторы, управления тачскрином, различными клавиатурами, добавления русских шрифтов для вывода на дисплеи типа HD44780
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Ответить
aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Дисплей LCD 4004

#1

Сообщение aidar_i » 14.03.2019{, 14:31}

В форуме задавали вопрос на счет дисплея LCD 4004 (MDLS40466).
Накидал основные ПБ.
Два варианта подключения. Внимание: Для смены варианта подключения меняется только главный блок!

Блоки
LCD4004.ubl
(52.33 КБ) 151 скачивание
Первый вариант: параллельное подключение на библиотеке LiquidCrystal440.
Библиотека
Liquidcrystal440.rar
(6.96 КБ) 147 скачиваний
Пример
Пример LCD 4004.flp
(142.97 КБ) 169 скачиваний
Второй вариант: подключение по I2C.
Эти файлы библиотеки установить в штатную библиотеку LiquidCrystal_I2C с заменой одноименных.
LiquidCrystal4004_I2C.rar
(4.01 КБ) 135 скачиваний
Пример
Пример LCD 4004_2C.flp
(139.31 КБ) 156 скачиваний
С этими библиотеками и ПБ работают и другие размеры дисплеев.
В Протеус здесь.
Подключение по I2C там же.
Последний раз редактировалось aidar_i 16.03.2019{, 13:25}, всего редактировалось 10 раз.

KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

Дисплей LCD 4004 (библиотека Liquidcrystal440)

#2

Сообщение KulibinOrsk » 14.03.2019{, 14:39}

Если бы на I2C + кирилицу -я бы не пожалел, прикупил бы дисплей для теста.

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Дисплей LCD 4004 (библиотека Liquidcrystal440)

#3

Сообщение pan » 14.03.2019{, 16:14}

KulibinOrsk писал(а):
14.03.2019{, 14:39}
Если бы на I2C
если написать 4 строки длинной 40 символов, да по i2c, представьте на сколько "замрет" ардуина

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Дисплей LCD 4004 (библиотека Liquidcrystal440)

#4

Сообщение Sancho » 14.03.2019{, 16:40}

pan, Лёха, поспорю.
Если грамотно подойти к написанию блока, отправлять по изменениям, то особо заметно не будет.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Дисплей LCD 4004 (библиотека Liquidcrystal440)

#5

Сообщение pan » 14.03.2019{, 18:01}

Sancho, ну я говорил про полную запись
pan писал(а):
14.03.2019{, 16:14}
4 строки длинной 40 символов
то есть " распространенное" использование как в большинстве проектов народ использует.

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Дисплей LCD 4004 (библиотека Liquidcrystal440)

#6

Сообщение aidar_i » 14.03.2019{, 18:36}

Здесь по i2c обсуждали https://forum.arduino.cc/index.php?topic=492553.0

Аватара пользователя
Alias
Лейтенант
Сообщения: 481
Зарегистрирован: 27.11.2017{, 13:15}
Репутация: 36
Откуда: Rus44
Имя: Michael
Контактная информация:

Дисплей LCD 4004 (библиотека Liquidcrystal440)

#7

Сообщение Alias » 15.03.2019{, 09:09}

pan писал(а):
14.03.2019{, 18:01}
я говорил про полную запись
А научите, как правильно отправлять данные?
Сейчас как-раз хочу задействовать 2004 на кучу информации, часть которой статична для страницы, часть - разнообразные параметры.
Для статики достаточно вывести один раз несколькими блоками, а меняющиеся числа как? На каждый отдельный блок данных выделять плату, работающую по условию? Изменился конкретный параметр - запустили плату с блоком.
Я для себя пока так и не вывел оптимального правила применения дисплеев. Если правильно понимаю, то блок вывода информации будет отправлять данные на дисплей в каждом цикле независимо от того, есть обновления данных или нет, вход En на штатном блоке просто включает его.
Буду признателен за краткие пояснения тонкостей работы с выводом на дисплей для таких как я непрограммистов!
Спасибо!

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Дисплей LCD 4004 (библиотека Liquidcrystal440)

#8

Сообщение pan » 15.03.2019{, 09:23}

Alias, конкретно эти блоки не смотрел что там и как.
а по поводу штатных - правильно делаете.
пожалуй было хорошо в настройках блока дисплея изменять назначение входа EN, - не отображать инфу (как сейчас) или просто не обрабатывать блок.
это уже вопрос к автору.

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Дисплей LCD 4004

#9

Сообщение aidar_i » 15.03.2019{, 11:52}

Сейчас мой блок работает в режиме отображения информации, после подачи на En импульса (через R триггер, например), информация не будет обновляться при каждом цикле. Далее информацию можно стирать только блоком очистки экрана.
В штатных стоит автоочистка при изменении длины строки. Можно сделать и к штатной библиотеке такие же блоки.

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Дисплей LCD 4004

#10

Сообщение aidar_i » 15.03.2019{, 20:21}

Протеус
Adafruit Alphanumeric LCD 4004.rar
(26.25 КБ) 111 скачиваний
I2C.
Alphanumeric LCD 4004_I2C.rar
(27.81 КБ) 102 скачивания
Подключение с помощью модуля I2C из Китая
Connection.txt
(825 байт) 126 скачиваний
Отправлено спустя 18 минут 52 секунды:
KulibinOrsk писал(а):
14.03.2019{, 14:39}
Если
Кириллицу можно добавить с блоками , выложенными в форуме. Правда не более 8 букв кириллицы одновременно.

Выложил в первом сообщении блоки и для I2C.

tronik1
Рядовой
Сообщения: 62
Зарегистрирован: 05.10.2017{, 12:34}
Репутация: 2
Имя: Сергей

Дисплей LCD 4004

#11

Сообщение tronik1 » 07.08.2019{, 22:52}

Почему при выводе информации на дисплей 2004 у меги2560 на совсем других выводах в других платах где по логике должна статически висеть единица, то эта единица дергается. И причем чем больше информации выводится, тем сильнее дергается вывод. У меня на этих выводах твердотельное реле, которое включает пускатель двигателя. Ток вот если много выводится информации на дисплей, то очень сильно дергается этот пускатель. Как быть?

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Дисплей LCD 4004

#12

Сообщение aidar_i » 08.08.2019{, 07:14}

Где проект?
Если убираете дисплей, не дёргается?
Скорее что то напутали или помехи.

tronik1
Рядовой
Сообщения: 62
Зарегистрирован: 05.10.2017{, 12:34}
Репутация: 2
Имя: Сергей

Дисплей LCD 4004

#13

Сообщение tronik1 » 08.08.2019{, 07:55}

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

Аватара пользователя
nalnik
Подполковник
Сообщения: 1324
Зарегистрирован: 14.05.2016{, 17:12}
Репутация: 100
Откуда: Кисловодск
Имя: Александр

Дисплей LCD 4004

#14

Сообщение nalnik » 08.08.2019{, 08:04}

tronik1 писал(а):
07.08.2019{, 22:52}
то эта единица дергается.
Скажите, а как Вы подключили питание на дисплей? Надеюсь Вы его НЕ к 5v МЕГИ подключили?
Я хочу быть добрее, но люди сами нарываются.

tronik1
Рядовой
Сообщения: 62
Зарегистрирован: 05.10.2017{, 12:34}
Репутация: 2
Имя: Сергей

Дисплей LCD 4004

#15

Сообщение tronik1 » 08.08.2019{, 08:39}

импульсный блок питания 220/12 30вт - понижаюций модуль LM2596s 12/5в - плата TP4056 для зарядки 18650 - повышающий модуль - MT3608 на выходе 5в. Эти 5в паралельно подключены на мегу на пин +5В, на 8-канальный блок твердотельных реле, на дисплей. По току смотрел на все хватает, просадок нет, плюс еще кандер на 1000мкф паралельно выходу 5в. Но опять же повторяю Если дисплей пуст и на нем нет никаких засвеченых символов то ногу (и соотвественно пускатель) не дергает, с увеличением колличества символов увеличивается строб на выходах.

Отправлено спустя 1 минуту 18 секунд:
Пробовал подключать дисплей и по I2C и напрямую -разницы нет.

Отправлено спустя 1 минуту 45 секунд:
На меге еще и gsm модуль sim800l, но он подключен к TP4056 на питание 4в., а к меге по одному из юартов.

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Дисплей LCD 4004

#16

Сообщение aidar_i » 26.06.2021{, 21:26}

tronik1 писал(а):
08.08.2019{, 08:42}
импульсный блок питания 220/12 30вт - понижаюций модуль LM2596s 12/5в - плата TP4056 для зарядки 18650 - повышающий модуль - MT3608 на выходе 5в. Эти 5в паралельно подключены на мегу на пин +5В, на 8-канальный блок твердотельных реле, на дисплей. По току смотрел на все хватает, просадок нет, плюс еще кандер на 1000мкф паралельно выходу 5в. Но опять же повторяю Если дисплей пуст и на нем нет никаких засвеченых символов то ногу (и соотвественно пускатель) не дергает, с увеличением колличества символов увеличивается строб на выходах.

Отправлено спустя 1 минуту 18 секунд:
Пробовал подключать дисплей и по I2C и напрямую -разницы нет.

Отправлено спустя 1 минуту 45 секунд:
На меге еще и gsm модуль sim800l, но он подключен к TP4056 на питание 4в., а к меге по одному из юартов.
Старый вопрос тут, оказывается, висит, решили?
Проблема, мне кажется, в повышающем модуле. С ним у меня были проблемы.

tronik1
Рядовой
Сообщения: 62
Зарегистрирован: 05.10.2017{, 12:34}
Репутация: 2
Имя: Сергей

Дисплей LCD 4004

#17

Сообщение tronik1 » 01.07.2021{, 09:42}

aidar_i писал(а):
26.06.2021{, 21:26}
tronik1 писал(а):
08.08.2019{, 08:42}
импульсный блок питания 220/12 30вт - понижаюций модуль LM2596s 12/5в - плата TP4056 для зарядки 18650 - повышающий модуль - MT3608 на выходе 5в. Эти 5в паралельно подключены на мегу на пин +5В, на 8-канальный блок твердотельных реле, на дисплей. По току смотрел на все хватает, просадок нет, плюс еще кандер на 1000мкф паралельно выходу 5в. Но опять же повторяю Если дисплей пуст и на нем нет никаких засвеченых символов то ногу (и соотвественно пускатель) не дергает, с увеличением колличества символов увеличивается строб на выходах.

Отправлено спустя 1 минуту 18 секунд:
Пробовал подключать дисплей и по I2C и напрямую -разницы нет.

Отправлено спустя 1 минуту 45 секунд:
На меге еще и gsm модуль sim800l, но он подключен к TP4056 на питание 4в., а к меге по одному из юартов.
Старый вопрос тут, оказывается, висит, решили?
Проблема, мне кажется, в повышающем модуле. С ним у меня были проблемы.
Да, решил, там была ошибка в коде. Одна переменная одновременно в разных местах была 0 и 1. Поэтому и колбасило.

Ответить

Вернуться в «Дисплеи, индикаторы и клавиатуры»