Дисплеи от мобильных телефонов- осцилограммы работы

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Avarges »

Всё правильно. Вчера оптимизировал код, максимум удалось получить 12.7 кадров в секунду, не хватает времени контроллеру, а дисплейчик явно способен на большее.
Аватара пользователя
Зукс
Вымогатель припоя
Сообщения: 564
Зарегистрирован: Чт июл 21, 2011 19:56:10

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Зукс »

А если взять допутсим АРМ и сжать видео в жпег формате?
З.Ы. если кто незнает то есть такой формат видео где все кадры сжимаются в жпег. Помоему этот формат самый простой и не потребудется много времени для декодировки. Зато места будет занимать в десятки раз меньше... Вот только проблема как написать декодер или где взять готовый код для декодирования этого формата... :(
З.Ы. ЗЗЗЗЗ.ЫЫЫЫЫЫ...: Хотя кстати тут в теме ктото писал что АРМ потянет декодиролвку видео...
Шуруп забитый молотком держится намного лучше чем гвоздь закрученный отверткой!
Foks
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Foks »

Да, этот формат называется MJPEG (Motion JPEG).
Можно взять опенсоурсный.
Giggity giggity goo!
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Avarges »

А если взять допутсим АРМ и сжать видео в жпег формате?

Какой смысл? Ты раньше правильно писал: разжимать на компе и посылать по шине USB, это самое реальное.

Хотя кстати тут в теме ктото писал что АРМ потянет декодиролвку видео...

Современные форматы MPEG4 видео и H264 не потянет, особенно если ARM7 :)
Аватара пользователя
Зукс
Вымогатель припоя
Сообщения: 564
Зарегистрирован: Чт июл 21, 2011 19:56:10

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Зукс »

чтоб видео по юсб слать это еще и для компа нужно прогу какуюто типа захвата экрана или чтото типа а это тоже гемор. и еще не стоит забывать что сжатое видео уменьшает скорость потока. Мне когдато давно заказывали сделать видеоролик. Просьба заказчика была - сделать полные несжатые кадры. Так у меня это видео с 720 пикселями по горизонтали на старом компе так тормозило ужасно. А дело в том что поток большой. На сжатое видео нужно больше процессорного времени зато поток будет намного меньше. Я так понял на контроллерах еще никто не пробовал декодировать видео? Мне кажется стоит попробовать какойто формат попроще...
Шуруп забитый молотком держится намного лучше чем гвоздь закрученный отверткой!
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Avarges »

Зукс писал(а):Я так понял на контроллерах еще никто не пробовал декодировать видео? Мне кажется стоит попробовать какойто формат попроще...

Так попробуй :) Обычная вычислительная задача, главное чтоб контроллеру хватало ресурсов на распаковку. Не обязательно даже сразу за MJPEG браться, можно и что попроще: индексированные цвета, RLE.
Аватара пользователя
Зукс
Вымогатель припоя
Сообщения: 564
Зарегистрирован: Чт июл 21, 2011 19:56:10

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Зукс »

в ближайшее время буду начинать заниматся этим. Хотя меня больше интересует воспроизведение видео через юсб
Шуруп забитый молотком держится намного лучше чем гвоздь закрученный отверткой!
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Avarges »

Разобрался с дисплеем LPH9135-3 теперь:
Изображение
из телефона Siemens C72, 16 битный цвет выводится, размер экрана 128*128
отличия в инициализации небольшие, можно и в 12 битном цвете использовать, кино с SD карты сразу пошло в уголок выводится, без переделок. Цветопередача мне понравилась намного больше - желтый цвет почти то, что надо.

А вот подсветку от 5 вольт не запитать, подключал 12 вольт через 1.5кОм резистор.

Распайка из гугла правдивая:
Pin number Pin name Pin Description I/O
1 LCD_CS Chip Select (active low) O
2 LCD_RESET Module Reset (active low) O
3 LCD_DC Data / Control Indicator O
4 LCD_CLK Serial Clock O
5 LCD_DATA Serial Data O
6 VDD Power Supply 2.9V DC O
7 GND GND O
8 LCD_ID LCD ID (usually not used) I
9 BL_A Backlight Anode O
10 BL_K Backlight Cathode O

Изображение
Аватара пользователя
БАТАРЕЙКУС
Потрогал лапой паяльник
Сообщения: 346
Зарегистрирован: Сб фев 07, 2009 19:21:25

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение БАТАРЕЙКУС »

Avarges писал(а):Научился я все-таки на атмеге8 кино гнать на этот экранчик,
на ютубе видео выложил:

Изображение
http://www.youtube.com/watch?v=PqPR8k5EV-A


а не могли бы вы поподробней рассказать каким образом вам удалось вывести видео на экран, какой формат видео использовали, и каков алгоритм программы
Мечтатель - не тот, кто сидит на диване и думает о несбыточном, а тот, кто всеми силами стремится воплотить несбыточное в реальность.
Foks
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Foks »

Уже же описали это всё - кадры несжатые были, т.е. просто набор пикселей :dont_know: Что еще не понятно? Какой алгоритм? Три вложенных цикла - кадр, строка, столбец - это даже алгоритмом сложно назвать.
Giggity giggity goo!
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Avarges »

Foks, немного не так - без вложенных циклов, порядок такой:

1. Подготавливается файл с потоком пикселей в формате RGB 444.
2. Инициализируется дисплей в режиме цветов - 12 бит.
3. Задаём дисплею размер квадрата и дальше непрерывно выгружаем подготовленный файл с пикселами: читается 1 байт по SPI с SD карты и сразу отправляется в дисплей.
Аватара пользователя
Bonio
Прорезались зубы
Сообщения: 230
Зарегистрирован: Вт сен 27, 2011 21:23:36

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Bonio »

Avarges писал(а):Научился я все-таки на атмеге8 кино гнать на этот экранчик,
на ютубе видео выложил:
http://www.youtube.com/watch?v=PqPR8k5EV-A

А не могли бы вы исходники показать?
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Avarges »

Bonio писал(а):
Avarges писал(а):Научился я все-таки на атмеге8 кино гнать на этот экранчик,
на ютубе видео выложил:
http://www.youtube.com/watch?v=PqPR8k5EV-A

А не могли бы вы исходники показать?

Они у меня уже переправлены под дисплей 9135, там всё в кучу. Могу в личку кинуть "как есть".

Если вопрос в том как получить максимальный FPS, тогда ответ прост.

Эту процедуру вывода одного пиксела...

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

void LCD_Pixel(char xPos, char yPos, char color) {
   Send_to_lcd( CMD, 0x2A );
   Send_to_lcd( DAT, xPos );
   Send_to_lcd( DAT, 127 );

   Send_to_lcd( CMD, 0x2B );
   Send_to_lcd( DAT, yPos );
   Send_to_lcd( DAT, 127 );

   Send_to_lcd( CMD, 0x2C );
   Send_to_lcd( DAT, color );
}


...использовать ТОЛЬКО для вывода одного пиксела.

Чтобы посылать кадр на весь экран делать лучше так:

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

   // Сначала задается размер квадрата
   Send_to_lcd( CMD, 0x2A ); // по горизонтали
   Send_to_lcd( DAT, 1 ); // координата левого угла
   Send_to_lcd( DAT, 100 ); // правого

   Send_to_lcd( CMD, 0x2B ); // по вертикали
   Send_to_lcd( DAT, 1 ); // верхнего
   Send_to_lcd( DAT, 80 ); // нижнего

   // Командой 2С сообщаем дисплею, что пикселы пойдут
   Send_to_lcd( CMD, 0x2C );

   // Отправляем в дисплей пикселы в любом количестве
   // рисуются они попиксельно слева направо и сверху вниз
   // когда кадр отрисуется то начинает рисоваться следующий поверх
   Send_to_lcd( DAT, color ); // Вывод первого пиксела
   Send_to_lcd( DAT, color ); // второго
   Send_to_lcd( DAT, color ); // третьего
   ....


Делая так в 8 раз ускоряется вывод 1 пиксела, потому что на один пиксел вызываем Send_to_lcd только 1 раз, а не 8
Аватара пользователя
Bonio
Прорезались зубы
Сообщения: 230
Зарегистрирован: Вт сен 27, 2011 21:23:36

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Bonio »

Спасибо, Avarges. Если не трудно, скните исходник в личку. :)
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Avarges »

Скинул.

Появилась у меня одна шальная мысль. Ведь эти дисплеи требуют последовательной загрузки данных, а что если взять внешнюю мс 74HC165, её тактировать от 32 МГц, к мк она подключается по параллельному интерфейсу, а выгружает последовательно. На базе атмеги8 нарастить в 2-3 раза FPS чтобы.

Сам сейчас подключил через чип CP2102 мк к компу, получил 1Мбит канал по USB. Но чтобы отрисовать один кадр 128*128 нужно передать 32768 байт, то есть в теории 2.7 фпс по такому каналу, на практике без оптимизации сразу получил жалкие 1.8 фпс :(
Думал раньше, что чип CP2102 способен выдать честные 12Мбит USB Full-Speed, ошибся.
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение SubDia »

Ну допустим. А что с синхронизацией? Как осуществлять тактирование HC165-й? Кто будет давать контроллеру сигнал о передаче следующего байта? Контроллер самостоятельно эти операции не проделает (скорость маловата будет), давать такт на HC165 с внешнего источника бессмысленно - не будет синхронизации с МК. Тут бы с ПЛИСиной поэкспериментировать..
Avarges писал(а):Думал раньше, что чип CP2102 способен выдать честные 12Мбит USB Full-Speed, ошибся.

А я раньше думал, что CP2102 - преобразователь UART->USB.
Вы документацию на CP2102 смотрели? Там черным по белому написано: " Baud rates: 300 bps to 1 Mbits" :)
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
Кислый
Поставщик валерьянки для Кота
Сообщения: 2095
Зарегистрирован: Чт апр 08, 2010 18:50:01
Откуда: Краснодар
Контактная информация:

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Кислый »

Я вас поздравляю.
А давайте заглянем сюда :
http://www.silabs.com/products/interfac ... ridge.aspx

Features
USB 2.0 compliant, full-speed (12 Mbps)
No external crystal required
Up to 1024 Bytes of EEPROM or EPOM
User-programmable custom Baud rates
Supports all modem interface signals
Baud Rates: up to 2 Mbps
Industrial temp
–40 to +85 °C
RETI ;рети-рети интеррапт, через шины данных тракт, через память, через порт, возвращайся в главный код
@hobbyelectronics
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение SubDia »

Кислый писал(а):USB 2.0 compliant, full-speed (12 Mbps)

Ну и что? Этого можно было даже не приводить.
А теперь заглянем сюда: http://www.sparkfun.com/datasheets/IC/cp2102.pdf
Asynchronous Serial Data BUS (UART)
z All handshaking and modem interface signals
z Data formats supported:
- Data bits: 5, 6, 7, and 8
- Stop bits: 1, 1.5, and 2
- Parity: odd, even, mark, space, no parity
z Baud rates: 300 bps to 1 Mbits
z 576 Byte receive buffer; 640 byte transmit buffer
z Hardware or X-On/X-Off handshaking supported
z Event character support
z Line break transmission
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
Кислый
Поставщик валерьянки для Кота
Сообщения: 2095
Зарегистрирован: Чт апр 08, 2010 18:50:01
Откуда: Краснодар
Контактная информация:

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение Кислый »

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

Re: Дисплеи от мобильных телефонов- осцилограммы работы

Сообщение SubDia »

Ясно. Но Avarges, видимо, все же рассчитывал на все 12М..
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Ответить

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