Дисплей побольше с LPC1343

Уже не помню когда, но приобрел на eBay вот такой дисплей. 3.2 дюйма 320х240 пикселей 18бит/цвет.
Собственно добавляем 30 проводков, LPCXpresso, и 10 минут на переделывание кода и быстрый старт есть.
Основная проблема в том что LPC1343 не имеет ни одного полного 16-битного порта, ну что за западло. Кроме того нельзя найти даже две висьмибитных группы, что бы не пересекались с нужными выводами. то отладчик на порту висит, то SPI займёт. Та же STM32-Discovery имеет хороший порт (4-й кажется), на котором только 32кГц кварц висит. Да и другие порты не особо проблематично задействовать. Собственно к дискавери я и планировал изначально подключать дисплей, но как-то они не «сходятся» ни в одной плоскости и места много занимают. А лпц у меня имеются рассыпухой и можно развести плату под себя.
Вообщем пришлось шину данных бить на 3 группы для подключения к lpc1343, и получилось следующее:
Подключение
Далее создаем новый семихостинг проект в студии с использованием CMSIS, переносим пример, подправляем функции вывода и настройки (в архиве правленная версия, смысла тут дублировать код нет), запускаем и вуаля:

После этого пришла в голову идея посмотреть даташит не предмет частоты с которой данные можно гонять, за одно и узнал что в дисплее стоит контроллер HX8347-A.
У этого дисплея фотик уже не смог так чётко пиксели «увидеть» (кликабельно)
Подключение
Следующим шагом перенесу то, что было для Вывод текста на дисплей Nokia 1616. Ну и естественно интересен пример работы с тачскрином, но это в необозримом будущем.

UPD:

Пара слов о потреблении для страждущих. В активном режиме плата потребляет 3.5мА, при посаженном на ресает арме 3.2мА. Подсветка сейчас кушает 13мА, яркости достаточно, но думаю можно и поднять (на случай от солнца). Там светодиоды параллельно включены 4 штуки.

P.S.: Народ, куда можно с пользой затулить такой дисплей?
  • +2
  • 05 августа 2011, 01:44
  • angel5a
  • 2
Файлы в топике: src.zip, DSC02940.JPG

Комментарии (76)

RSS свернуть / развернуть
я б сделал из него мини монитор для беспроводной камеры, тока у камеры выход композитный, пришлось бы оцифровывать…
0
  • avatar
  • RomiX
  • 05 августа 2011, 09:55
Монитор для камеры за 800р 7 дюймов купить готовый можно вроде. тогда уже имеет смысл ещё и сохранять куда-нибудь видеосигнал снятый. только мне такая штука не к чему. Но спасибо за идею :)
0
Ы, где это такой за 800р?
0
Реально на этом LCD получить качество изображения как на картинке с ebay?
Какое вообще качество, по твоей субъективной оценке (контраст, размытость, насыщенность цвета)? Подсветка равномерная?
0
  • avatar
  • tank
  • 05 августа 2011, 10:23
Вполне можно. Главное подобрать картинку поярче. Все эти экранчики на ili9320-9328 (HX8347 — из этой же серии) практически одинаковые. Я выводил фотографию на подобный — тут. Живьем она выглядит гораздо лучше, чем получилось на фотографии.
0
Неплохо. Подсветка, как я понял, тоже нареканий не вызывает.
0
Я переделывал один экран с 5В на 3В питания и при этом подсветка испоганилась. Чем именно я ее испортил не понял, но с черным фоном выглядит нормально и хрен бы с ней. Теперь подсветка стала — такой
0
… я недавно купил такой же дисплэй и вот никак не соберусь его испытать. Если я правельно понял у него есть встроенный 3.3В стабилизатор и поэтому на VCC надо подавать 5В, а вот напряжения на управляющих пинах и шине данных должно быть 3.3В?
0
Нет. Они на 3В. На пять ставят буферы и стабилизатор на плату, моя переделка как раз и была в замене буферов перемычками и замыкании стабилизатора накоротко.
И сразу про режим. Режим выбирается перемычками на шлейфе, а т.к. китайцы имеют необъяснимую склонность к 51 серии, то и продают их с предустановленным режимом и80.
0
… а как узнать на сколько бит шина данных по умолчанию, и как ее поменять? я пробовал зависти дисплэй кодом для 8бит-ного интерфейса, ничего не получилось
0
Разрядность выбирается перемычкой на шлейфе. Обычно подписанной. У меня на одном индикаторе — 8 бит, а на втором 16.
0
у меня нет согласования уровней на плате. Только стабилизатор стоит, и есть площадка для её замыкания (что бы питать дисплей от 3.3В).
0
… а что, встроенный в этот модуль (TFT + touch screen) стабилизатор не надежный что все его коротят?
0
вы не так поняли. там есть специальные площадки, на которые можно напаять резюк нулёвку, что бы питать плату дисплея не от 5В, а от 3В.
0
… я почему спрашиваю… я подал на VCC 5V (предполагая что у него есть свой ставилизатор), а на управляющие пины и шину данных у меня приходит 3.3В от мк. Я не зжог ЛСД?
0
Я не сжег. У меня LPC1343 стоит у неё 3.3В питание. Дисплей от отдельного разъема USB запитан вообще. Но тем не мение всё живое, ни статикой не убило, ни разностью потенциалов при подключении. так же питание отваливалось от дисплея — по шине данных через защитные диоды питался и работал.
0
В описании дисплея было написано 5V tolerant. только я вот в этом не очень то уверен. у меня отвалился от дисплея провод питания, так он продолжал работать, питаясь по всей видимости через защитные диоды шины данных.
0
… еще такой вопрос, в даташите на HX8347-A описаны куча режимов и интерфейсов. А в каком режиме работает этот M68/i80?
0
Добавил про потребление
0
… а на какой частоте работаете?
0
36мег по идеи переферия, но так там неоптимальный вывод и дополнительные переключения следовательно. Вообще это именно «быстрый старт» без думания о чём бы то нибыло. Разве что разводку думал и собирал часа 2 :)
Нормальную проработку делать буду при наличии какой-нибудь цели, а цели пока к сожалению нет.
0
… а какая максимальная частота работы у этого контроллера (HX8347-A)?
0
Уважаемый, я даташит до сих пор не читал :)
0
Для ускорения весьма стоит перейти в режим 65535 цветов, тогда в 16 битном режиме одна точка будет выводится за один прием. Так же весьма неплохой прирост скорости дает отображение индикатора в память, как описывал комрад steel_ne, только этот режим доступен далеко не для всех МК.
0
  • avatar
  • PRC
  • 05 августа 2011, 23:09
У меня 16битный интерфейс, просто на LPC1343 нет полных 16битных портов, и в 2 половины что бы разбить надо «аппетитные» выводы занимать, вроде SPI и отладчика.
0
Уже не помню когда, но приобрел на eBay вот такой дисплей. 3.2 дюйма 320х240 пикселей 18бит/цвет.
Мне тоже такая радость пришла, недавно, всего за 700руб (с тачскрином и его контроллером), у наших барыг видел похожий за 2500руб, чтоб мы делали без наших братьев китайцев… Ближе к делу. Подсветку LED можно подключать напрямую к 3 Вольтам без токоограничительного резистора? Потребление 80 мА при этом несколько настораживает.
0
  • avatar
  • tank
  • 05 сентября 2011, 14:00
Я от 5В через резюк воткнул. потребление 80мА потому что там 4 соединенных параллельно светодиода. от 3 без резюков не пробовал, т.к. 3 у меня с экспрессо идут, а там контроллер перегревается при нагрузке.
0
… я подключаю напрямую к +3В и вроде ничего — работает
0
… если нужны коды инициализации, примеры подключения и т.д. советую iTead Studio покавырять, там такие модули называются ITDB02, мне этот ресурс помог да и тов. angel5a тоже :)
0
Отличный ресурс
0
Лежат у меня на полке 2 дисплея один вот такой:

его параметры:
Размер экрана — 3,5"
Разрешение 320х240 точек
262 000 цветов
Белая светодиодная подсветка
Touch Screen — экран чуствительный к нажатию
5 светодиодов пользователя
2 кнопки пользователя
Интерфейс — SPI, 8/16 Бит 8080, 8/16 Бит 6800, 9/16/18 Бит
Контроллер SSD2119
Даташит

И вот такой:


480x272, 4.3" диагональ, процессорный интерфейс(шина 16 бит и управляющие сигналы RD,RW,D/C,RST)
Контроллер SSD1963

Первый дисплей имеет резистивный тачскрин, но увы без контроллера.
0
  • avatar
  • Geban
  • 05 сентября 2011, 15:17
Сделал тестовый вывод двух цветов на дисплей. Нужные цвета выводятся вперемешку с мусором. Если задеть пинцетом землю, то некоторое время (до нескольких секунд) мусор не выводится, как будто какая-то паразитная емкость заряжается. Пучки проводов — как у автора, то есть о качественном земляном экране говорить не приходится. Подозреваю, из-за этого пролазит помеха, но где источник? Конденсаторы на питании не помогают, может нужен RC фильтр, и на подсветку отдельный.
0
  • avatar
  • tank
  • 16 сентября 2011, 16:32
подсветка там не шумит, если вы конечно импульсный преобразователь не воткнули. Может просто контакт где плохой на разъемах?
0
Да, контакт далеко не идеальный. Похоже дело в нем.
0
Здесь я описал похожий эксперимент, вывод картинки на uDisp320240 с ATmega128-й. Скорость вывода, конечно, маленькая, но использовался SPI. Если задействовать RGB-интерфейс и хорошо разобраться в структуре mpeg-файлов — можно на максимуме рабочей частоты пробовать воспроизводить фильмы с SD-карт.
0
да-да-да, нубский вопрос(
надо ли RS, WR, RD и CS подтягивать к питанию?
0
Я не подтягивал, т.к. выводы МК настроены на Push-pull. Даже если до настройки шел мусор, дисплей сбрасывается ресетом и идет инициализация с корректно-настроенными выводами.
Еслу у вас выводы open-drain то подтяжка лишней не будет. если weak pull-up, дамаю тоже. Иначе не обязательно.
0
а реально его вообще подключить к 8ой меге? просто инстересно запустить хотя бы… все вроде нормально подключил, но ниче не меняется( или там нет подтяжки?
0
Подключить реально. портов вывода хватает у ней. в меге пуш-пул есть, гляньте уроки хальта. Портировать код не получится, недавно отладочку меги восьмой утилизировал.
0
блин, зашел на iteadstudio.com, поковырял примеры, но нифига не реботает( ладно, спасибо большое за ответы!)
0
дошли руки поковырять это. перенес я все это на STM32F4-Discovery как мог.
запускаю — никакого эффекта. думал, может я перепутал пины и подпаял в обратном порядке шину данных, попробовал по другому, результата нет.
нашел я из китайского архива код инициализации, запустил — ну хоть что то! дисплей быстро-быстро перемаргивается белым и черным цветом.
код вот такой:
main_W_com_data(0x0046,0x013F);    delay(1);
	main_W_com_data(0x0048,0x0000);    delay(1);
  main_W_com_data(0x0049,0x013F);    delay(1);
  main_W_com_data(0x004A,0x0000);    delay(1);
  main_W_com_data(0x004B,0x0000);    delay(1);	
	main_W_com_data(0x004e,0);       
	main_W_com_data(0x004f,0);        
	main_W_com_data(0x0000,0x0001);    delay(1); 
  main_W_com_data(0x0003,0xA8A4);    delay(1);   
  main_W_com_data(0x000C,0x0000);    delay(1);   
  main_W_com_data(0x000D,0x080C);    delay(1);   
  main_W_com_data(0x000E,0x2B00);    delay(1);   
  main_W_com_data(0x001E,0x00B0);    delay(1);   
	main_W_com_data(0x0001,0x2B3F);    delay(1);   
	main_W_com_data(0x0002,0x0600);    delay(1);
	main_W_com_data(0x0010,0x0000);    delay(1);
	main_W_com_data(0x0011,0x6070);    delay(1);   
	main_W_com_data(0x0005,0x0000);    delay(1);
	main_W_com_data(0x0006,0x0000);    delay(1);
	main_W_com_data(0x0016,0xEF1C);    delay(1);
	main_W_com_data(0x0017,0x0003);    delay(1);
	main_W_com_data(0x0007,0x0233);    delay(1);              
	main_W_com_data(0x000B,0x0000);    delay(1);
	main_W_com_data(0x000F,0x0000);    delay(1);        
	main_W_com_data(0x0041,0x0000);    delay(1);
	main_W_com_data(0x0042,0x0000);    delay(1);
	
	main_W_com_data(0x0044,0xEF00);    delay(1);
	main_W_com_data(0x0045,0x0000);    delay(1);
	
	main_W_com_data(0x0030,0x0707);    delay(1);
	main_W_com_data(0x0031,0x0204);    delay(1);
	main_W_com_data(0x0032,0x0204);    delay(1);
	main_W_com_data(0x0033,0x0502);    delay(1);
	main_W_com_data(0x0034,0x0507);    delay(1);
	main_W_com_data(0x0035,0x0204);    delay(1);
	main_W_com_data(0x0036,0x0204);    delay(1);
	main_W_com_data(0x0037,0x0502);    delay(1);
	main_W_com_data(0x003A,0x0302);    delay(1);
	main_W_com_data(0x003B,0x0302);    delay(1);
	main_W_com_data(0x0023,0x0000);    delay(1);
	main_W_com_data(0x0024,0x0000);    delay(1);
	main_W_com_data(0x0025,0x8000);    delay(1);
    
	main_Write_COM(0x0022);

пытался разобраться — ниче не понял. почему данные больше чем 0xFF? что делать?
заранее спасибо)
0
я такое дно — думал что у меня дисплей как у автора, разобрал, а там на шлейфе написано ssd1289( буду разбираться…
0
Есть у меня примерчик для STM32F407 + SSD1289. Поделиться могу, только там еще FatFS, SD-карта, QVGA-камера от мобилки… игрушки разные, в общем — их отфильтровать надо. Для работы с LCD используется контроллер FSMC.

ЗЫ. Со слова «configuring» не смеяться.)))
0
буду очень благодарен)) мыло timon1994 собака мэйл ру, но может лучше в блоге выложить?
0
Так а что в том блоге писать? Это ж так, игрульки. Запуск, инициализация девайсов, монтирование диска, создание (попытка создания) файла и папки, отчет — на дисплей, запуск камеры — и погнали изображение на экран. Я хотел сделать сжатие в jpeg и запись на SD, но так и не дошли руки. Баловство, в общем.
0
если вас не затруднит, я буду очень благодарен если вы мне это на мыло кинете)
или это то же самое, про что писали в этом сообществе? Была какая то статья про FSMC.
Я подумал, а может контроллер дисплея просто не успевает за МК? Может задержки надо сделать?
заранее спасибо.
0
Тайминги в FSMC настраиваются. Не успевает — увеличили тайминг и всё :)
0
Отправит отправил, да забыл написать, вдогонку тогда: на присутствие «FreeRTOS» в названии и сорцев FreeRTOS в проекте внимания не обращайте — изначально я баловался под FreeRTOS, потом использовать эту ОС перестал, а название осталось. Да и сорцы тоже. Межсоединение дисплея и МК расписано в хидере main.h. В остальном разберетесь — там всего лишь инициализацию вытащить наружу, да и все.
(Не забудьте учесть тактовую, заглянув в system_xxxxxx.c! У меня она там равна 48 МГц).
0
Пожалуйста, подробней от какой мобилки QVGA камера?
0
Прошу прощения, это мне вопрос?
0
Да, Выписали — Есть у меня примерчик для STM32F407 + SSD1289. Поделиться могу, только там еще FatFS, SD-карта, QVGA-камера от мобилки… игрушки разные, в общем — их отфильтровать надо. Для работы с LCD используется контроллер FSMC.
0
А, ясно. От Siemens C-72, на сенсоре PO2030N (PixelPlus).
0
Не поделитесь наработками по камере? contemplator1998@gmail.com
у меня также имеются небольшие наработки, буду рад поделиться contemplator1998.blogspot.com/2012/12/stm32f407.html
0
Симпатичная штучка. Но если уж «рад поделиться», то просто выложи схему, плату, исходники — как есть. По мере допила их всегда можно обновить (желательно с комментариями о обновлении и его сути).
0
SubDia, спасибо, сам нашел Ваши посты radiokot.ru/forum/viewtopic.php?f=20&t=26497&start=360
0
почему данные больше чем 0xFF?
Там шина 16-битная, и команды/данные соответственно тоже. Однако есть возможность подключиться по 8битной шине, команды остаются 16битнвыми, просто отправляются в 2 захода.
0
Тут идея по поводу практического применения «большого» экрана:
1. купить USB-AV микроскоп, такой;
2. купить дисплей с платой контоллера (вход VGA-AV), например такой;
3. собрать, собственно, USB-AV микроскоп с дисплеем…
4. ???
5. PROFIT!!!
Ваше мнение?
0
2 angel5a комментарий не Вам, а в основной топик… Сорри!
0
Зачем? И главное, у CVBS уж больно качество низкое.
0
Не думаю, что в таком варианте картинка на дисплее будет хуже таковой на ПиСи…
0
Сильно зависит от матрицы. Но картинка от того же ПиСи или распи на телеке через CVBS не радует. Совсем не радует. Мыльно и помехи (CVBS в принципе без помех не может, в нем C и Y каналы друг другу мешают).
0
Матрица, судя по всему, в таких девайсах — 0.3МП. Скорее всего программно интерполирована до «1.3» или «2.0» внутри соего контроллера… ХЗ, но по фото из обзоров — при увеличении «разрешения» и «кратности» добаляются не детали, мусор…
0
Если 0.3, то это совсем говно. Вроде все же у приличных микроскопов матрица действительно больше, это одно из главных их отличий (и причина высокой цены заодно, камеру с матрицей QVGA можно купить за 5 баксов).
0
Хотя, тру-0.3 не так уж плохо. В вебках обычно QVGA и апскейл до VGA. По крайней мере так и в моей нонейм с DX за пять баксов, и в Logitech C120, и в A4Tech вроде тоже.
0
Таки чтобы использовать сей девайс эммм… автономно… О_о
0
8" великоват для автономно. Лучше поискать планшетку, с которой оно в USB режиме заработает. Да и не дороже выйдет, кстати, если удастся на планшетке с А13 запустить.
0
Есть вариант с экраном поменьше, 3.5", 4.3" (по поводу автономности)… Не планшетку тогда искать, но микроскоп! Там, по ходу, не стандартный cam capture, а нечто свое, под Йоду Винду исключительно; неприменимо оно — дрова нужны ибо…
0
Вот что там — понятия не имею. По идее, китайцы не любители изобретать, так что по идее логично, чтобы их микроскопы представлялись системе обычными вебками.
0
Бздыщь! В смысле, та-да!!! такую шнягу нашел…
0
Гы, WiFi микроскоп) Дороговато тока.
Ну и похоже там действительно матрица VGA…
0
Набрал просто «android microscope» в поиске и выдало шматок ссылок. Хм… Пару недель назад такого вроде не было? Может они WE почитывают? Когда их планшетки тут раскуривали — придумали камеру для дроида! Глядишь и настольный мелкоскоп с дисплеем замутят за несильно дорого! ;)
0
Гы! lol
0
ИЧСХ, для дроида — только WiFi! Видать USB там никак?
0
С USB там сложно. Ведро не рассчитано на установку дров, а на встроенные дрова вендоры почему-то жопятся, предоставляя только дрова на флешки и клавомышки (и еще на интегрированную USB-WiFi). Даже несмотря на то, что дрова у них есть, готовые, бесплатные и на все. Вот мудаки. Проще, видимо, через WiFi, к тому же совместимость гарантирована, хотя в принципе можно было бы Android Open Accessory сделать. Но тогда не было бы совместимости с iХренью.
0
В Вашем же обзоре DX в комментах был пост об эндоскопе с экраном — куда уж автономнее и дешевле, чем вариант с таблеткой… Но 3.5" экран? Да ну нах. 7-8" — хорошо. Чтобы юзать и как монтажный и как инспекционный… Не? Все только ИМХО — советуюсь!
0
второй пункт наверное дешевле в таком виде покупать.
Еще по «car monitor» выпадают всякие беспроводные передатчики для камеры, тоже может быть полезно.
Ну а так, та же парковочная камера + оптика и есть представленный микроском. Бюджетный вариант его.
Проблема в оптике.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.