реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> 4-bit режим символьного LCD, Что будет, если передача одной половины будет пропущена?
Энтомолог
сообщение Jul 2 2017, 10:53
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 147
Регистрация: 24-01-07
Пользователь №: 24 741



Имеется индикатор на контроллере HD44780 / KS0066. В 4-bit Режиме данные передаются за 2 такта. Что будет, если одна из половинок будет потеряна? Все последующие символы превратятся в белиберду? Как с этим бороться? Или просто использовать 8-bit режим и с 4-bit не заморачиваться?
Go to the top of the page
 
+Quote Post
ViKo
сообщение Jul 2 2017, 11:11
Сообщение #2


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Используйте 4-битовый режим и ничего не теряйте.
Go to the top of the page
 
+Quote Post
Lagman
сообщение Jul 2 2017, 11:48
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 875
Регистрация: 28-10-05
Пользователь №: 10 245



Если данные будут теряться то не поможет и 8 битный режим.
Go to the top of the page
 
+Quote Post
Энтомолог
сообщение Jul 2 2017, 11:59
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 147
Регистрация: 24-01-07
Пользователь №: 24 741



Цитата(ViKo @ Jul 2 2017, 14:11) *
Используйте 4-битовый режим и ничего не теряйте.


Я готов взять вас на работу, чтобы вы лично следили, чтобы ни одна посылка не потерялась.

Цитата(Lagman @ Jul 2 2017, 14:48) *
Если данные будут теряться то не поможет и 8 битный режим.


В 8-bit режиме пропуск данных означает пропуск буквы. Эта ошибка уйдет, как только экран буде обновлен. В 4-bit режиме, насколько я понимаю ситуацию, это приведет к искажению всего, что будет после.
Go to the top of the page
 
+Quote Post
adnega
сообщение Jul 2 2017, 13:20
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Энтомолог @ Jul 2 2017, 14:59) *
В 8-bit режиме пропуск данных означает пропуск буквы.

Не всегда: пропустите управляющую команду - и получите непоймичто навсегда.
По уму нужно не только данные освежать, но и конфигурацию.
Скорее всего, 4-битный режим увидит, что половинки относятся не к одной команде, а к команде и данным
и как-то разрулит это.
Go to the top of the page
 
+Quote Post
Lagman
сообщение Jul 2 2017, 13:31
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 875
Регистрация: 28-10-05
Пользователь №: 10 245



Цитата(Энтомолог @ Jul 2 2017, 14:59) *
В 8-bit режиме пропуск данных означает пропуск буквы. Эта ошибка уйдет, как только экран буде обновлен.

Вы забыли что там еще 3 управляющих pina участвует.
В любом случае потеря данных будь то 4 бит или 8 бит называется одним словом гавнокод! Нельзя писать так программы.
Go to the top of the page
 
+Quote Post
Энтомолог
сообщение Jul 2 2017, 13:41
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 147
Регистрация: 24-01-07
Пользователь №: 24 741



Цитата(Lagman @ Jul 2 2017, 16:31) *
Вы забыли что там еще 3 управляющих pina участвует.
В любом случае потеря данных будь то 4 бит или 8 бит называется одним словом гавнокод! Нельзя писать так программы.


С чего вы взяли, что потеря данных может случиться только из-за программной ошибки?
Go to the top of the page
 
+Quote Post
ViKo
сообщение Jul 2 2017, 13:56
Сообщение #8


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Энтомолог @ Jul 2 2017, 14:59) *
Я готов взять вас на работу, чтобы вы лично следили, чтобы ни одна посылка не потерялась.

Я как-то написал программу, которая работала с таким ЖКИ. Работал и работала, ничего не теряла. По документации все сигналы сформировал, так даже и править не пришлось. rolleyes.gif На работу - не, не пойду, я недостаточно усидчив для такой работы. laughing.gif
Go to the top of the page
 
+Quote Post
Lagman
сообщение Jul 2 2017, 14:52
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 875
Регистрация: 28-10-05
Пользователь №: 10 245



Цитата(Энтомолог @ Jul 2 2017, 16:41) *
С чего вы взяли, что потеря данных может случиться только из-за программной ошибки?

Тогда точно ни 4 ни 8 бит вам не помогут и за все время существования HD44780 никто еще не жаловался на железо, надо делать железо правильно и все будет работать как надо.
Go to the top of the page
 
+Quote Post
adnega
сообщение Jul 2 2017, 16:10
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Энтомолог @ Jul 2 2017, 16:41) *
С чего вы взяли, что потеря данных может случиться только из-за программной ошибки?

Цитата
Энтомоло́гия (от др.-греч. ἔντομον — насекомое + λόγος — слово, учение) — раздел зоологии, изучающий насекомых

Ваш ник намекает, что с багами встречаетесь часто))

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

А какие проблемы проверить поведение при потере 4 бит?
Go to the top of the page
 
+Quote Post
adnega
сообщение Jul 2 2017, 17:17
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Попробовал в потоке портить каждый 5000 байт (теряю 4 бита).
Дисплей промаргивает, но продолжает работать, т.е. синхронизация на границе байта работает.
Скорее всего, за счет сигнала RS, т.к. передаю не только данные, но и управляющие коды.
Go to the top of the page
 
+Quote Post
Энтомолог
сообщение Jul 2 2017, 21:35
Сообщение #12


Частый гость
**

Группа: Свой
Сообщений: 147
Регистрация: 24-01-07
Пользователь №: 24 741



Цитата(adnega @ Jul 2 2017, 20:17) *
Попробовал в потоке портить каждый 5000 байт (теряю 4 бита).
Дисплей промаргивает, но продолжает работать, т.е. синхронизация на границе байта работает.
Скорее всего, за счет сигнала RS, т.к. передаю не только данные, но и управляющие коды.


Спасибо, это полезная информация.
Go to the top of the page
 
+Quote Post
Baser
сообщение Jul 3 2017, 15:44
Сообщение #13


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(Lagman @ Jul 2 2017, 17:52) *
Тогда точно ни 4 ни 8 бит вам не помогут и за все время существования HD44780 никто еще не жаловался на железо, надо делать железо правильно и все будет работать как надо.

Да надоело уже всем на HD44780 совместимые контроллеры жаловаться, уж больно старые, вот и тихо нынче sm.gif
У них врожденная недоделка - регистры конфигурации можно только записывать, прочитать для проверки нельзя.
А проверять нужно, т.к. при сетевом питании устройства и непрерывном режиме работы эта конфигурация иногда слетает, что программно определить невозможно. Приходится регулярно проводить переинициализацию. И если при 8-и битной шине это "на глаз" незаметно, то при 4-х битной видно "подмаргивание". Но с этим приходится мириться.
Я обычно применяю 4-х битную шину для экономии и переинициализирую каждые 10 сек.
Тысячи приборов десятки лет нормально работают.
Go to the top of the page
 
+Quote Post
Lagman
сообщение Jul 3 2017, 19:19
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 875
Регистрация: 28-10-05
Пользователь №: 10 245



Цитата(Baser @ Jul 3 2017, 18:44) *
Да надоело уже всем на HD44780 совместимые контроллеры жаловаться, уж больно старые, вот и тихо нынче sm.gif

Ну не знаю, сетевое питание, 4-х битное включение, 24/30/365, на промышленном microPC x86 через LPT , под DOS/micrium, работает без сбоев.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 22:32
Рейтинг@Mail.ru


Страница сгенерированна за 0.01457 секунд с 7
ELECTRONIX ©2004-2016