WH1602A иногда сбоит, нужен совет

provincial
Offline
Зарегистрирован: 03.11.2013

Всем привет! Собрали систему сигнализации с котельной, на приемной стороне стоит Winstar 1602A. Для вывода сообщений используется библиотеки LineDriver, LiquidCristalExt, LiquidCristalRus.

Собственно проблема в том, что при смене сообщения на экране иногда выводятся некорректные данные. Перед выводом чищу предыдущий экран lcd.clear();

Длина шлейфа 45 см. По питанию прям на дисплее установлена керамика 1 мкФ, электролит 100 мкФ. Все собрано в металлическом шкафике. Передача данных осуществляется по радиоканалу.

Что подскажите добрые люди? :)

vvadim
Offline
Зарегистрирован: 23.05.2012

А без кода и подсказок не будет, даже от добрых людей.

kisoft
kisoft аватар
Offline
Зарегистрирован: 13.11.2012

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

provincial
Offline
Зарегистрирован: 03.11.2013

vvadim, я не зря написал именно в железной ветке, т.к. на макетке все хорошо работает.

kisoft, я знаю, что чем короче, тем лучше, однако по возможности компоновки (выполнение ТЗ на изготовление) иначе не сделать. Это просто необходимо принять как данность... Радиоканал пока опустим, это так, в качестве справочной информации, модуль вносил правда помехи по питанию, но я их подавил LC-фильтром.

Хочу попробовать изменить тайминги в библиотеке, хотя при первоначальном взгляде они больше заявленных в даташите.

По поводу телепатов: зависимость примерно следующая:

1) может в строке сама по себе дописаться буква

2) дисплей может перепутать символ, строку, наложить слова, как буд-то ему действительно не хватает времени четко принять команды.

Смотрел осциллографом ноги на дисплее, фронты не совсем плохие. Может на шлейф ферритовое кольцо надеть с обоих концов? Или дисплей экранировать?

Monsel
Offline
Зарегистрирован: 27.10.2013

provincial пишет:
Может на шлейф ферритовое кольцо надеть с обоих концов? Или дисплей экранировать?

Или с бубном потанцевать вместо выкладывания схемы ?

kisoft пишет:
Схему  функциональную с указанием длинных участков. На моей практике все глюки с такими дисплеями укладываются в некорректное подключение или некорректные задержки.

шлейф 45см при LCD для SPI/TWI или параллельного интерфейса?

 

provincial
Offline
Зарегистрирован: 03.11.2013

Схема элементарная, шлейф из 11 проводников прям с ног ардуино на выводы дисплея: 

01LiquidCrystalRus lcd(7, 6, 5, 4, 3, 2); // RS, E, DB4, DB5, DB6, DB7
02.......
03if (...)         
04           lcd.clear();
05           lcd.setCursor(2, 0);
06           printf("Связь ОК.");
07           lcd.setCursor(2, 1);
08           printf("Ошибок нет.");
09........
10if (...)
11     lcd.clear();
12     lcd.setCursor(0, 0);
13     printf(" Ошибка связи ");
14     lcd.setCursor(2, 1);
15     printf("с котельной! ");

 

kisoft
kisoft аватар
Offline
Зарегистрирован: 13.11.2012

Какая Ардуино? Кварц стандартный? 8, 16, 20 МГц.

vvadim
Offline
Зарегистрирован: 23.05.2012

vvadim пишет:

А без кода и подсказок не будет, даже от добрых людей.

Monsel
Offline
Зарегистрирован: 27.10.2013

provincial пишет:
Схема элементарная, шлейф из 11 проводников прям с ног ардуино на выводы дисплея:

Совет очень простой -  передавать последовательным интерфейсом RS485, радиоканалом, RS232 или на крайний случай даже TTL  без преобразования в 232. Лишняя плата Micro, поставленная при LCD не разорит ваш  бюджет ?

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Источник наводок- ёмкость между близколежащими  сигналами в параллельных  жилах шлейфа.

1 вариант: Чередовать в кабеле земля-сигнал взяв шлейф от IDE HDD.

2 вариант: В сигнальные линии последовательно Ом по 100, затянет фронты, но сократит время переходного процесса.  Это снизило бы добротность возникающих колебаний.

3 вариант, простой, для пробы: Я бы попробовал нагрузить сигналы на стороне ЛСД резисторами пару килоом на землю. Это нагрузило бы линию хоть каким-то согласующим сопротивлением.

Я за первый вариант. Однозначно.

 

 

provincial
Offline
Зарегистрирован: 03.11.2013

Наконец-то ответ, соответствующий проблеме! 

Спасибо, trembo, я попробую ваши варианты!

xstramento
Offline
Зарегистрирован: 19.10.2013

provincial пишет:
Наконец-то ответ, соответствующий проблеме! Спасибо, trembo, я попробую ваши варианты! 

палка о двух концах  - внесением в ПОЛОСКИЙ шлейф через один проводников GND уменьшите перекрестные помехи за счет уменьшения емкости и индуктивности (отодвигание проводников), но существенно возрастет емкость всех проводников к GND.

provincial
Offline
Зарегистрирован: 03.11.2013

Monsel, 485-й хорош, в случае более дальней передачи.

provincial
Offline
Зарегистрирован: 03.11.2013

xstramento пишет:

provincial пишет:
Наконец-то ответ, соответствующий проблеме! Спасибо, trembo, я попробую ваши варианты! 

палка о двух концах  - внесением в ПОЛОСКИЙ шлейф через один проводников GND уменьшите перекрестные помехи за счет уменьшения емкости и индуктивности (отодвигание проводников), но существенно возрастет емкость всех проводников к GND.

Хорошо, разнесем и нагрузим со стороны LCD на GND.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

xstramento пишет:

...... но существенно возрастет емкость всех проводников к GND.....

А вот как-раз не это главное, по переменному току все проводники шлейфа

"как-бы соединены с землёй" и добавление к каждому ещё одного увеличит ёмкость в два раза,

но главное- куда через эту ёмкость пойдёт наводка:  на соседа или в землю.

Да и десятки-сотни пикофарад легко зарядит любой активный (не с резистором привязки) выход процессора.

Да и с резистором у меня Далласы работают на сотне метров гирляндами с резистором 1 кОм.

От скуки как-то померял ёмкость линии - 7000 пик

А осциллографом там  смотреть страшно, звенит, но всё работает.

provincial
Offline
Зарегистрирован: 03.11.2013

Что характерно, вынул всю требуху, принес домой для доработки и... LCD работает четко. Видимо на работе фон помех выше. Иначе объяснить не могу.