Юзаем дисплеи от сотовых и других потаскунчиков.

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Аватара пользователя
hd44780
Встал на лапы
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение hd44780 »

SubDia писал(а):То есть Вы одновременно даете строб Write и устанавливаете CS. Уверены, что работает? Или запись осуществляется по заднему фронту сигнала записи?


Не уверен :)) ... В доке на ILI9320 они по очереди нарисованы, АВР-овский вариант так, кстати и делает :) :

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

void LCD_WR_REG(byte index,word val) 
{
 CS_L;
 RS_L;
 
 DATA_L=index;
 DATA_H=0;
 
 WR_L;
 nop;
 nop;
 WR_H;
 RS_H;
 DATA_L=(byte)val;
 DATA_H=(byte)(val>>8);
 
 WR_L;
 nop;
 nop;
 WR_H;
 CS_H;
} // LCD_WR_REG               

Это здесь я "пооптимизировал" на радостях.

Изображение
Это скрины из ДШ на дисплей. Какой там фронт у него активный - непонятно, в текст не вчитывался.
Вообще, может это и есть причина ступора.
Спасибо за наводку, вечером дома проверю, позже отпишусь.
Последний раз редактировалось hd44780 Пн окт 29, 2012 14:37:28, всего редактировалось 1 раз.
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение Satyr »

CS можно вобще намертво нажать и не трогать, если по шине больше никого нет.
Аватара пользователя
hd44780
Встал на лапы
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение hd44780 »

Satyr писал(а):CS можно вобще намертво нажать и не трогать, если по шине больше никого нет.


Пока никого, можно и так.
Но я предпочитаю CS дёргать, у меня в планах туда ещё 8-битный АЦП TDA8703 с параллельной шиной прицепить, так что может и помешать ...
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение SubDia »

hd44780 писал(а):В доке на ILI9320 они по очереди нарисованы, АВР-овский вариант так, кстати и делает

Еще бы на тайминги обратить внимание.
Я намедни провтыкал при запуске дисплея, невнимательно даташит листал, в итоге час ушел коту под хвост - слишком короткую паузу выдерживал перед установкой ресет в единицу. Вот так-то. =))
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
hd44780
Встал на лапы
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение hd44780 »

SubDia писал(а):Еще бы на тайминги обратить внимание.
Я намедни провтыкал при запуске дисплея, невнимательно даташит листал, в итоге час ушел коту под хвост - слишком короткую паузу выдерживал перед установкой ресет в единицу. Вот так-то. =))


Спасибо :) .

Сейчас так:

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

 // ************* Reset LCD Driver ****************
 LCD_TARGET_PORT_S = LCD_RES_BIT;       // RESET_H;
 delay_ms(1); // Delay 1ms
 LCD_TARGET_PORT_C = LCD_RES_BIT;       // RESET_L;
 delay_ms(10); // Delay 10ms
 LCD_TARGET_PORT_S = LCD_RES_BIT;       // RESET_H;
 delay_ms(50); // Delay 50 ms


На авре даже без последних 50 мс работает, это я перестраховался, но ДШ гляну.
SAM7 же гораздо быстрее авра крутится...
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение SubDia »

Если функция delay_ms(x) считает реальное время, то все равно, быстрее или нет. Установка/сброс ведь осуществляются по отсчету временных интервалов.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
hd44780
Встал на лапы
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение hd44780 »

SubDia писал(а):Если функция delay_ms(x) считает реальное время


Реальное - прерывания и прочее от PIT. Задержки правильные даёт. Наносекунды я не контролировал, а так, "на глазок", по светодиодику работает нормально.
Я имел в виду, что в авре у меня никаких специальных задержек между nReset=1 и началом программирования регистров дисплея нет. Поэтому там прямая зависимость от скорости проца и ассемблерного "мусора", который туда компилятор Си насуёт.
Аватара пользователя
hd44780
Встал на лапы
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение hd44780 »

спящий писал(а):я имел ввиду буквы представлены ввиде массива (7*6)


Лови, что есть :)) . Это моя библиотека для LPH7779. Компилятор - CvAVR. Работало на меге32. Там есть полный знакогенератор символов 6x8, других у меня всё равно нету.
Да и рисовал/кодировал я их, помнится, сам, на бумажке. Кто-то, может, смеяться будет, но не было тогда (2006 год) всех этих утилит разных ... А если и были, то мне их с моим тогдашним интернетом в виде 33кбит dial-up модема не сахар было что-то искать в интернете.

Кста. К тому вопросу про ILI9320.
#define LCD_DATA_BITS (AT91C_PIO_PA16 | AT91C_PIO_PA17 | AT91C_PIO_PA18 | AT91C_PIO_PA19 | \
AT91C_PIO_PA20 | AT91C_PIO_PA21 | AT91C_PIO_PA22 | AT91C_PIO_PA23 | \
AT91C_PIO_PA24 | AT91C_PIO_PA25 | AT91C_PIO_PA25 | AT91C_PIO_PA27 | \
AT91C_PIO_PA28 | AT91C_PIO_PA29 | AT91C_PIO_PA30 | AT91C_PIO_PA31 )

PA26 вообще никак нигде не конфигурировалась :))) . Умолчальная единица всё время висит ....
Вложения
lph7779.zip
(4.39 КБ) 203 скачивания
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение SubDia »

Блин, я об этом в первую очередь подумал - специально опечатки искал в определениях. Да именно в этом месте ошибку и проглядел. =)
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
hd44780
Встал на лапы
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение hd44780 »

Заработал дисплей :)) .

Тормозит правда жутко, но это я где-то с задержками перестарался ....
Задержки, видимо придётся делать на nop-ах и холостых циклах.
В ДШ ни фига не сказано о задержке между nCS=0 и nWR=0.
Изображение
Изображение

Если кто понял, напишите ...
На авре я там никаких задержек не делаю, на там один такт и без них 62.5 ns (16MHz).
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение SubDia »

ну здесь действительно не указан этот интервал.
По диаграммам можно только сказать, что CS должен подниматься чуть позже, чем WR, а насколько - не совсем понятно.
Заработал, как я понимаю, после исправления опечатки?
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
hd44780
Встал на лапы
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение hd44780 »

SubDia писал(а):Заработал, как я понимаю, после исправления опечатки?


Я исправил ту опечатку с PA16 и nCS, nWR сделал как в авровском варианте.
Задержки как-то поправил:

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

// задержка
void _delay(int del)
{
  int i;
 
  for (i =0; i < del; i++)
  {
   asm ("nop");   // 1 цикл = 1/MCK=1/48MHz = ~0.2 ns
  } // for
} // _delay

Может и корявенько, но там и в ДШ непонятно ...

Часики заработали :)) . Доделаю остальное, выложу здесь или в ту базу дисплеев.
спящий
Потрогал лапой паяльник
Сообщения: 303
Зарегистрирован: Сб янв 08, 2011 13:48:41

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение спящий »

hd44780 писал(а):
спящий писал(а):я имел ввиду буквы представлены ввиде массива (7*6)


Лови, что есть :)) . Это моя библиотека для LPH7779. Компилятор - CvAVR. Работало на меге32. Там есть полный знакогенератор символов 6x8, других у меня всё равно нету.
Да и рисовал/кодировал я их, помнится, сам, на бумажке. Кто-то, может, смеяться будет, но не было тогда (2006 год) всех этих утилит разных ... А если и были, то мне их с моим тогдашним интернетом в виде 33кбит dial-up модема не сахар было что-то искать в интернете.

PA26 вообще никак нигде не конфигурировалась :))) . Умолчальная единица всё время висит ....


раскажи как мне ей воспользоваться?) как ее подключить?

cifra(); - сюда мне надо вставить число(букву).

я твой файл изменил осталась только таблица(у меня проект тоже в КВ)
Аватара пользователя
hd44780
Встал на лапы
Сообщения: 132
Зарегистрирован: Вт июл 14, 2009 09:27:37
Откуда: Донецк, Украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение hd44780 »

спящий писал(а):раскажи как мне ей воспользоваться?) как ее подключить?

cifra(); - сюда мне надо вставить число(букву).

я твой файл изменил осталась только таблица(у меня проект тоже в КВ)


Там же есть функция

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

// вывод символа
void lph_putchar ( byte ch )
{             
 byte bytes [ 6 ];
 byte flash *charData;
 int i;
 
 charData = fontTable [ ch ];
 
 for ( i = 0; i < 6; i ++ )
 {
  bytes [ i ] = charData [ i ];
 } // for

 lph_sendBytes ( bytes, 6, LCD_DATA );
} // lph_putchar

Аргумент - код символа в кодировке win1251. Она вытаскавает из таблицы байты, описывающие заданный символ.
Дальше рисуй эти пиксели на дисплее, как там положено...
Вместо этой lph_sendBytes впиши своё рисование.
Или непонятно, как именно символы закодировал?
спящий
Потрогал лапой паяльник
Сообщения: 303
Зарегистрирован: Сб янв 08, 2011 13:48:41

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение спящий »

скажите ,обязательно включать подсветку(LED+ 6вольт),работать будет без нее? можно подключить меньше допустим 5 или 3 В?
Аватара пользователя
demadsv
Встал на лапы
Сообщения: 117
Зарегистрирован: Чт фев 14, 2008 04:18:02
Откуда: украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение demadsv »

смотря какой дисплей,если TFT-то просто ничего не увидишь,а если типа сименского(LS020)то там вполне нормально без подсветки видно.
спящий
Потрогал лапой паяльник
Сообщения: 303
Зарегистрирован: Сб янв 08, 2011 13:48:41

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение спящий »

у меня nokia6100
Аватара пользователя
demadsv
Встал на лапы
Сообщения: 117
Зарегистрирован: Чт фев 14, 2008 04:18:02
Откуда: украина

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение demadsv »

там вроде надо подсветку,а вообще просто подключит без и посмотреть
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение SubDia »

та не, на диспе от N6100 без подсветки не видно ни хвоста.
5 вольт покатит, проверял когда-то. Светится слабее, но светится.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
спящий
Потрогал лапой паяльник
Сообщения: 303
Зарегистрирован: Сб янв 08, 2011 13:48:41

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение спящий »

чето незапускается экран,подсветка горит,экран молчит( в протеусе работает,как определить какой тип контроллера на дисплее FILIPS или EPSON,для них разные запуски?


ШЛЕЙФ коричневый,на одном одно на другом другое написано.
Последний раз редактировалось спящий Сб ноя 03, 2012 21:11:09, всего редактировалось 1 раз.
Ответить

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