Работа с ЖКИ на контроллере HD44780 и его аналогах

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Аватара пользователя
I-Basil
Потрогал лапой паяльник
Сообщения: 316
Зарегистрирован: Сб сен 04, 2010 22:04:39
Откуда: Украина

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение I-Basil »

vitalik_1984 писал(а):А не пробовали весь экран заполнять? может понятнее картинка станет?


В "идеале должно выглядеть так ( раньше так и выглядело с этим индикатором)
tranz.jpg
(37.17 КБ) 823 скачивания
А теперь это выглядит так
tranz 2.jpg
(37.04 КБ) 715 скачиваний
С другими индикаторами этой же линейки всё показывает как и прежде, т.е - как на первой картинке :cry:
Последний раз редактировалось I-Basil Пн авг 06, 2012 20:23:49, всего редактировалось 1 раз.
"... Не НАДО изобретать велосипед, а НЕОБХОДИМО!"
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение vitalik_1984 »

Чет я не пойму у нас что новый формат вложений появился, что я вложение как цитату вижу, а не как ссылку :dont_know:
В поисках истины человек развивается.
Аватара пользователя
I-Basil
Потрогал лапой паяльник
Сообщения: 316
Зарегистрирован: Сб сен 04, 2010 22:04:39
Откуда: Украина

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение I-Basil »

Сорри, уже исравил - вложения активны :oops:
"... Не НАДО изобретать велосипед, а НЕОБХОДИМО!"
Аватара пользователя
I-Basil
Потрогал лапой паяльник
Сообщения: 316
Зарегистрирован: Сб сен 04, 2010 22:04:39
Откуда: Украина

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение I-Basil »

Неужели никто не знает - где собака порылась :wink: ?
"... Не НАДО изобретать велосипед, а НЕОБХОДИМО!"
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение vitalik_1984 »

Вы показали на фото рабочее устройство вместо того, чтобы вывести все заполненные символы, чтобы было понятно матрица это или что.
И не нужно редактировать , нужно фото реальное :wink:
Тем более вы сами продиагностировали, если с этой же программой другой дисплей работает, то это точно мертв.
В поисках истины человек развивается.
Аватара пользователя
I-Basil
Потрогал лапой паяльник
Сообщения: 316
Зарегистрирован: Сб сен 04, 2010 22:04:39
Откуда: Украина

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение I-Basil »

Не знаю, может быть так понятнее
16х2.jpg
(86.27 КБ) 672 скачивания

МК с платы удалил, чтобы были видны те "квадраты, что пока ещё "остались в живых"... Кстати, обратил внимание, что при включении питания проскакивают и незаполненные ячейки, но тут же сразу и исчезают :cry:
З.Ы : ТО фото редактировалось из-за лени :oops: - не охота было вновь вставлять "дефективного" :)
"... Не НАДО изобретать велосипед, а НЕОБХОДИМО!"
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение vitalik_1984 »

На первом фото видно что не заполнена первая строчка на втором- нижняя А верхняя полностью заполнена.Значит уже понятно, что это не из-за плохого контакта матриц.Странная ситуация, конечно, больше похоже на то, что инициализация как то неправильно проходит.Пробовали прижать неиспользуемые выводы к минусу?Я так понял, что у вас по четырех битной шине подключено?
В поисках истины человек развивается.
Аватара пользователя
I-Basil
Потрогал лапой паяльник
Сообщения: 316
Зарегистрирован: Сб сен 04, 2010 22:04:39
Откуда: Украина

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение I-Basil »

Нет, не пробовал. Подключено по четырёх битной шине... Жаль, что у меня нет свободного ( под разборку) индикатора, уж тогда бы было проще вычислить - в чём причина
"... Не НАДО изобретать велосипед, а НЕОБХОДИМО!"
mr.boroda
Встал на лапы
Сообщения: 124
Зарегистрирован: Вт июл 10, 2012 00:13:27
Откуда: Белгородская обл.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение mr.boroda »

Помогите с дисплеем wh1602. Не выводит русский язык. Пробовал с #pragma +\- не хочет...
Потом скачал lcd_rus.h начал выводить вообще полный бред, и буквы бегут влево
Вывожу так чищу, gotoxy, putsf,
Английский выводит нормально
Изображение
Изображение
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение vitalik_1984 »

Только что в соседней теме ответили
Это проблема компилятора
библиотека от Danko
Если это не поможет, то можно вывести в цикле все символы по очереди от 1 до 255 и посмотреть какие отвечают за русские буквы.
Вообще еще и в даташите описано что в каких ячейках хранятся.
В поисках истины человек развивается.
mr.boroda
Встал на лапы
Сообщения: 124
Зарегистрирован: Вт июл 10, 2012 00:13:27
Откуда: Белгородская обл.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение mr.boroda »

vitalik_1984 писал(а):Только что в соседней теме ответили
Это проблема компилятора
библиотека от Danko
Если это не поможет, то можно вывести в цикле все символы по очереди от 1 до 255 и посмотреть какие отвечают за русские буквы.
Вообще еще и в даташите описано что в каких ячейках хранятся.


Как раз эту библиотеку от данко я и скачал... Попробую цикл...
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение vitalik_1984 »

а родную .lib внутри папки установки поменяли?
В поисках истины человек развивается.
Кинг
Встал на лапы
Сообщения: 145
Зарегистрирован: Пн дек 07, 2009 19:29:29

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Кинг »

подскажите есть какой нибуть дисплей размером 4х2 см чтоб цепануть его к Avr ?
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение vitalik_1984 »

Это наверно 8x2 вам размер экрана?вот дисплейчик или всего дисплея?Если всего дисплея, то только какие нибудь телефонные подбирать.
В поисках истины человек развивается.
Аватара пользователя
Coldheart
Прорезались зубы
Сообщения: 244
Зарегистрирован: Пт сен 10, 2010 20:39:32
Откуда: Украина Луганская обл.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Coldheart »

Доброго времени суток Ув. Радиокоты!

Есть Дисплейчик WH1602 и контроллер Мега8(частота 8 МГц)
Вот бьюсь над ним уже очень длительное время, пытаюсь приручить.
А ему хоть бы что!
Что только не пытался в него посылать, уже кучу статей и даташитов перечитал.
Код то усложнял, то упрощал. Уже в элементарщине записал все.
Не отвечает он мне взаимностью! Прям горе какое-то :cry:
Задача - выдать на него единичку!
Подскажите где ошибки?

Код: Выделить всё

include "m8def.inc"

.CSEG
      
      ldi r16,0b11111111      ;Настройка портов
      out DDRB,r16

      ldi r16,0b00000111
      out DDRD,r16
   

                        ;Инициализация
   
      rcall Delay30m         ;Ждем 30 мс
   
      ldi r16,0b00110000      ;Шина 8 бит 2 строки   
      out PortB,r16

      ldi r16,0b00000000   
      out PortB,r16

      rcall Delay40mk         ;Ждем 40 мкс
   
      ldi r16,0b00110000      ;Шина 8 бит 2 строки   
      out PortB,r16

      ldi r16,0b00000000   
      out PortB,r16

      rcall Delay40mk         ;Ждем 40 мкс
   
      ldi r16,0b00110000      ;Шина 8 бит 2 строки   
      out PortB,r16

      ldi r16,0b00000000   
      out PortB,r16

      rcall Delay40mk         ;Ждем 40 мкс

      
      ldi r16,0b00111000     ;Установка параметров   
      out PortB,r16

      
      ldi r16,0b00001000      ;Выключение дисплея   
      out PortB,r16

      ldi r16,0b00001100      ;Включение дисплея   
      out PortB,r16

      
      ldi r16,0b00000001      ;Очистка дисплея
      out PortB,r16

      
      ldi r16,0b00010100      ;Сдвинули курсор вправо      
      out PortB,r16

      ldi r16,0b00000110      ;Установка режима ввода данных   
      out PortB,r16

      ldi r16,0b00000100      ;RS=1
      out PortD,r16
   
      ldi r16,0b00110001      ;Записали "1"   
      out PortB,r16
      
      


B:
      rjmp B

Delay30m:               ;Задержка 30 мс            

    ldi  r18, 2
    ldi  r19, 56
    ldi  r20, 173
L1: dec  r20
    brne L1
    dec  r19
    brne L1
    dec  r18
    brne L1
    nop
   ret

Delay40mk:               ;Задержка 40 мкс

    ldi  r18, 106
L2: dec  r18
    brne L2
   ret


Изображение
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение vitalik_1984 »

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

Вот я уже помог парню,который тоже мучался.Можно как идею посмотреть и доработать.
Читать отсюда
Ошибка примерно похожа на вашу.
В поисках истины человек развивается.
uk8amk
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение uk8amk »

Судя по коду вы нарушили все правила работы с экранчиком.
1. Каждая команда сопровождается строб импульсом по линии Е.
2. Для выполнения посланной команды надо подождать какоето время, т.е. вызвать подпрограмму задержки.
Аватара пользователя
Coldheart
Прорезались зубы
Сообщения: 244
Зарегистрирован: Пт сен 10, 2010 20:39:32
Откуда: Украина Луганская обл.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Coldheart »

Ну да! Все исправил. Все заработало! Крутяк!! Суппер!
Благодаря коду Виталика1984. Очень прозрачно и понятно написано!
Спасибо огромное! :beer:
Только один нюанс остался!
В Протеусе работает а на реальном дисплее - нет (((
Может быть такое что задержки слишком длительные?(это всеобщий вопрос по ЖК)
Изображение
pokk
Вымогатель припоя
Сообщения: 574
Зарегистрирован: Вт ноя 02, 2010 17:46:37

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение pokk »

Подскажите, как вывести число с плавающей точкой.

Спойлер

Код: Выделить всё

#include <mega128.h>
#include <stdio.h>
#include <delay.h>
// Alphanumeric LCD functions
#asm
   .equ __lcd_port=0x15 ;PORTC  // Для изменения порта подключения вставляем вместо .equ __lcd_port=0x15 ;PORTC (исходя из даташита стр. Register Summary)
#endasm                        // .equ __lcd_port=0x1B ;PORTA или .equ __lcd_port=0x18 ;PORTB или .equ __lcd_port=0x12 ;PORTD (даташит atmega16)

#include <lcd.h>

float x; //
char lcd_buffer[33];


void lcd_show(void)
{
x=0.3; 
lcd_gotoxy(0,1);
sprintf(lcd_buffer,"x=%f", x);
lcd_puts(lcd_buffer);
}
void main(void)

    lcd_init( 16 );               /* инициализация на 16 символов */
while (1)  {
 
   lcd_show();
       };

      // Place your code here
       }

     



делаю так но он что-то нечего не выводит (при целых числах работает )

Код: Выделить всё

int x; // 
...
sprintf(lcd_buffer,"x=%u", x);
...
Аватара пользователя
vitalik_1984
Поставщик валерьянки для Кота
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение vitalik_1984 »

делаю так но он что-то нечего не выводит (при целых числах работает )

Вроде правильно.Киньте весь проект.

В Протеусе работает а на реальном дисплее - нет (((

Возможно он работает, но вы не видите, что там с контрастом?

Может быть такое что задержки слишком длительные?(это всеобщий вопрос по ЖК)

задержки не могут быть большими, ведь все происходит лишь по спаду сигнала Е , то что происходит между этими спадами уже не важно.
А вот слишком короткая пауза может привести к тому, что будут пропущены некоторые команды.
В листке данных о контроллере дисплея или самого дисплея все необходимые паузы описаны.
В поисках истины человек развивается.
Ответить

Вернуться в «Периферия»