Страница 1 из 1

Подключение МК к дисплею от Nokia 3310

Добавлено: Пт авг 31, 2012 15:41:29
Volgol_555
Всем привет. Использую дисплеи от Нокиа 3310 уже пол года, всегда вылезает следующий косяк:
Если выключить питание и затем снова включить через 1 или 5 сек - дисплей полностью заполняется пикселями и никак не реагирует. Если выключить и включить минуты через 2 - все работает как надо. Если вышеописанные действия выполнять с зажатым в правой руке проводом идущим от MISO Atmega8 к RES дисплея дисплей сразу же показывает выводимую информацию!
Объясните, пожалуйста, сие явление ("зажатый провод в руках") и как его можно устранить?!

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Пт авг 31, 2012 21:07:36
korsaj
Скорее всего вся проблема в сбросе. Как то я возился с таким дисплеем, так пока не сделал нормальный сброс он работал не стабильно. тоже надо было полностью выключать и с ново включать. Суть нормального сброса ща не скажу - исходник (писал на делфи для ЛПТ порта) на другом компе, посмотрю только в понедельник. А пока выложите свою инициализацию.

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Вс сен 02, 2012 22:31:19
Volgol_555
Вот инициализация
void LcdInit ( void ) //инициализация SPI и дисплея
{
LCD_RST_PIN = 1; //настроили порты ввода/вывода
delay_ms(50); //SPI Control Register – SPCR
SPCR = 0x50; //Enable SPI: No interrupt, MSBit first, Master mode, CPOL->0, CPHA->0, Clk/4
LCD_RST_PIN = 0; //дернули ресет
delay_ms(100);
LCD_RST_PIN = 1;

LCD_CE_PIN = 1; //Disable LCD controller

LcdSend( 0x21, LCD_CMD ); //LCD Extended Commands
LcdSend( 0x06, LCD_CMD ); //Set Temp coefficent
LcdSend( 0x13, LCD_CMD ); //LCD bias mode 1:48
LcdSend( 0xAA, LCD_CMD ); //Set LCD Vop (Contrast)0xC5 или 0xC8 - китай 0xAA - ориг.
LcdSend (0x20, LCD_CMD ); //Horizontal addressing mode.
LcdSend (0x0C, LCD_CMD ); //normal mode.

};

Я в нете взял готовое не сильно вникая - поэтому тонкости все не знаю...
БП на Atmega (zoomer).rar
Исходник цельный!
(371.75 КБ) 258 скачиваний

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Пн сен 03, 2012 07:49:16
korsaj
Да вроде все так:

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

//==================ФУНКЦИЯ НАЧАЛЬНОЙ ИНИЦИАЛИЗАЦИИ ЖКИ (LPH7779) ==================
void Init_LPH7779 (void) // функция инициализации ЖКИ (LPH7779)
{
DelayMC(10);
RES_HG=0;                        //Сброс
DelayMC(10);
RES_HG=1;                        //Окончание Сброса
DelayMC(10);
CS_HG=0;                         //Устройство выбрано
D_C_HG=0;                       //Переключаемся на ввод команд
putch_SPI(0b00100001);     //включить питание, Горизонтальная адрессация, расшир.сист.команд(H=1)
putch_SPI(0b11000101);     //Запись Vop0,Vop2,Vop6=1 в регистр ;B'00010001' 
putch_SPI(0b00010011);     //Bs0,Bs1 установить необходимые напряжения питания 
putch_SPI(0b00100000);     //включить питание, Горизонтальная адрессация, обычная.сист.команд(H=0)
putch_SPI(0b00001100);     //нормальный режим отображения D=1 E=0
DelayMC(10);
CS_HG=1;                         //Устройство не выбрано
clr_HG(505);                      //Подпрограмма очистки экрана
}

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Пн сен 03, 2012 08:27:19
Volgol_555
Да...похоже. Тогда в чем ещё может быть проблема?)

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Пн сен 03, 2012 10:40:05
korsaj
Зажимая рукой провода вы экранируете провода и увеличеваете их емкость. А длинна шлейфа у вас какая? Возможно увеличивается спад одного из сигналов, попробуйте поиграть величиной задержек.

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Пн сен 03, 2012 10:44:32
Volgol_555
Ок. Попробую задержки другие поставить. Т.к. интерфейс SPI длина провода около 10 см!

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Пн сен 03, 2012 11:42:52
korsaj
Я тут архивчик выложеный табой посмотрел и процедурц посылки байта на дисплей. Я думаю не стоит так часто СЕ и переключать (DC - вроде нормально переключается только при смене типа данных, но возможно надо немного подождать после переключения). Лучще вначале переключить выводы СЕ и DC (если надо), а у же потом вызывать подпрограмму передачи данных. А из подпограммы убрать переключение DC.

ЗЫ. Первый раз на форуме вижу человека который Компасом пользуется для черчения схем..

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Пн сен 03, 2012 12:30:39
Volgol_555
Спасибо за внимание - на днях испытаю - отвечу!

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Ср окт 17, 2012 21:11:20
Volgol_555
Ни варианты с задержками, ни манипуляции с CE и DC не получились (делал вроде как сказали, но дисплей, тогда вообще не отвечает). Что ещё можно попробовать?
Спешу уточнить, что частично проблема решилась так: я подтянул Res дисплея резистором 1к на +5V и кондером 0,22мкФ на землю (как в микроконтроллерах). Дисплей стал отлично показывать без прикладывания пальца, но если быстро включить и выключить питание - секунды за 1.5, то на дисплее отображаются все пиксели!..

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Чт окт 18, 2012 07:02:57
korsaj
Я в дисплеях всегда управляю сбросом дисплея с помощью мк.

Re: Подключение МК к дисплею от Nokia 3310

Добавлено: Сб окт 20, 2012 13:04:48
Volgol_555
Спешу сообщить, что я ошибся((( у меня нога D/C (а не RES)- это из-за нее глючит!!! Проводки хилые по изоляции, поэтому такая фигня, но может можно ещё и программно откорректировать? помогите переписать прогу в таком случае)а то у меня ничего с ней не выходит. На данный момент у меня на D/C кондер в 0.1 мкФ (на землю)