|
На чем сделать проект с дисплеем? |
|
|
|
Jul 4 2012, 12:33
|

Участник

Группа: Участник
Сообщений: 37
Регистрация: 23-09-09
Из: Москва
Пользователь №: 52 540

|
Здравствуйте! Придумал себе устройство, которое должно выполнять следующие задачи: - снимать или выставлять показания на 20 дискретных выводов - снимать показания с 2 выводов АЦП - общаться с другим устройством по zigbee - считывать дополнительные данные с sd карточки - выводить свое состояние на большой экран, 6-7 дюймов.
От экрана я и начал плясать. Китайцы продают tft-модули с параллельным интерфейсом по 50 баксов за штуку. Цена очень привлекательна, я бы такой модуль и взял бы. Однако, выясняется, что для реализации моих хотелок для разрешения 640х480 точек необходимо порядка 6 Мб оперативной памяти (по 1 Мб на меняющиеся основной и дополнительный буферы вывода, 4 Мб для supersampling-сглаживания линий). Сглаживание линий мне довольно принципиально, потому использовать дисплей со встроенными буферами уже не сильно спасает ситуацию.
Какие бы комплектующие (помимо экрана) вы бы посоветовали бы взять? Есть ли микроконтроллеры с такой большой ОЗУ? Какой взять мк, чтобы выдержал нагрузку, и какую память, как подключать, желательно еще так чтобы в интернетах было достаточно информации?
Альтернативное устройство (китайский планшет итп) не рассматриваю - мне важно, чтобы устройство своевременно реагировало на изменение информации на датчиках. За жизнь человека не отвечает, но использовать прослойки из linux-ов уже не хотелось бы.
Благодарю за ответы.
|
|
|
|
|
 |
Ответов
|
Jul 4 2012, 14:11
|

Участник

Группа: Участник
Сообщений: 37
Регистрация: 23-09-09
Из: Москва
Пользователь №: 52 540

|
GUI: никаких эффектов, ничего трехмерного, никаких даже меню. Просто набор из трех-четырех стрелочных показометров и нескольких текстовых надписей в определенных местах экрана. Сперва в буфер надо положить задний фон, считанный с карточки SD, затем на нем в нужных местах нарисовать стрелки и буквы. Почти статичная картинка, хотя показания могут меняться каждую секунду и их надо соответственно быстро отображать.
Мегабайты ОЗУ нужны для графических буферов. Пусть даже буду использовать по 256 цветов на каждую из 640х480 точек экрана, это 600 кб на два буфера. Так и быть, со сглаживанием можно повоевать, однако превращаться в филиал NVidia мне тоже не хочется, потому рассматриваю самые простые алгоритмы сглаживания границ полигонов. Тем не менее, памяти уже надо поболее того, что обычно встречается в МК.
Бекенд с обработкой портов простейший, плюс по zigbee небольшие порции данных, не чаще раза в минуту - также пара удаленных простых датчиков.
Я почему-то все думаю про реализацию видеоконтроллера и прочей мути в едином камне. Сказывается различие цены за голый tft модуль ($50) и модулем со встроенным контроллером с работой по SPI (медленно?) ($200). Еще вижу интересные примеры работы с lcd через STM32 fsmc, но там рассматриваются только мелкие экраны.
|
|
|
|
|
Jul 4 2012, 14:20
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(Urvin @ Jul 4 2012, 18:11)  Сперва в буфер надо положить задний фон, считанный с карточки SD, затем на нем в нужных местах нарисовать стрелки и буквы. Если фон произвольный и есть сглаживание, то это alpha-blending, то есть геморрой. Гораздо проще, когда фон однородный. В этом случае можно прикинуться Nvidia, не так уж это и сложно. Цитата(Urvin @ Jul 4 2012, 18:11)  Я почему-то все думаю про реализацию видеоконтроллера и прочей мути в едином камне. Я выше писал про МК+SDRAM. Не совсем один камень, конечно.
|
|
|
|
|
Jul 4 2012, 15:25
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(scifi @ Jul 4 2012, 17:20)  Если фон произвольный и есть сглаживание, то это alpha-blending, то есть геморрой. Гораздо проще, когда фон однородный. В этом случае можно прикинуться Nvidia, не так уж это и сложно. Да нет никакого гемороя, в ucGUI есть антиалиасинг для всех графических примитивов. Но антиалиасинг требует повышеной мощности проца и пропускной способности видео ОЗУ. Поэтому на STM32 даже не пытался бы. Нужно выбирать процессор с отдельной шиной с DMA на дисплей (из семейства iMX например) и включать в GUI функцию прорисовки в памяти.
|
|
|
|
Сообщений в этой теме
Urvin На чем сделать проект с дисплеем? Jul 4 2012, 12:33 scifi Цитата(Urvin @ Jul 4 2012, 16:33) Однако,... Jul 4 2012, 12:55 jcxz Цитата(scifi @ Jul 4 2012, 18:55) Нет. И ... Jul 5 2012, 01:58 GDI Цитата(Urvin @ Jul 4 2012, 16:33) Придума... Jul 4 2012, 13:02 scifi Цитата(GDI @ Jul 4 2012, 17:02) P.S. Или ... Jul 4 2012, 13:10 Genadi Zawidowski ЦитатаВнешний графический контроллер. У Epson есть... Jul 4 2012, 13:02 Urvin ЦитатаP.S. Или это я всё усложняю? С другой сторон... Jul 4 2012, 13:46 scifi Цитата(Urvin @ Jul 4 2012, 17:46) Недоста... Jul 4 2012, 14:10 GDI Задача в плане GUI не раскрыта, а от этого и надо ... Jul 4 2012, 13:47 Genadi Zawidowski ЦитатаНедоставаемо.
Не, есть... А где искали? Или ... Jul 4 2012, 14:10 Genadi Zawidowski ЦитатаСказывается различие цены за голый tft модул... Jul 4 2012, 14:18 brag По моему, любого Cortex+sdram хватит за глаза. Про... Jul 4 2012, 17:13 Urvin Цитата(brag @ Jul 4 2012, 21:13) По моему... Jul 5 2012, 03:46  OLEG_BOS Цитата(Urvin @ Jul 5 2012, 06:46) Да вот ... Jul 5 2012, 04:37 Dron_Gus Я подобный (только 3.5") цеплял к внешней шин... Jul 4 2012, 19:41
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|