реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> AT91SAM9XE + LCD controller, Выбор внешнего LCD контроллера
MiniMax
сообщение Mar 16 2008, 07:38
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 12-09-07
Пользователь №: 30 498



Сейчас начал новый проект с прицелом на AT91SAM9XE процессор.
Хотелось бы иметь возможность подключать стандарные VGA, QVGA, TFT и др.
Какой LCD контроллер лучше использовать ?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 16 2008, 08:13
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



ИМХО, нет тут приемлемых решений - всяко будет дороже, прожорливее и хуже встроенного контроллера.

P.S. А почему Вы решили выбрать SAM9XE? Это же тот же самый SAM9260 только с маленькой флеш внутри, и пока еще он только в стадии разработки, что у Атмела может затянуться на пару лет.
Go to the top of the page
 
+Quote Post
MiniMax
сообщение Mar 16 2008, 08:30
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 12-09-07
Пользователь №: 30 498



Цитата(aaarrr @ Mar 16 2008, 12:13) *
P.S. А почему Вы решили выбрать SAM9XE? Это же тот же самый SAM9260 только с маленькой флеш внутри, и пока еще он только в стадии разработки, что у Атмела может затянуться на пару лет.


Я знаю об SAM9261 со встроенным LCD.
Но выбор SAM9XE по причине того, что проектируется универсальная ( development board) плата.
В самой простой конфигурации это будет просто "микроконтроллерная" плата
( без внешней SDRAM и др). Только SAM9XE.
В полной комплектации это будет "микропроцессорная" плата с 64M SDRAM, MicroSD, Ethernet, LCD.
Размеры платы будут 60x60мм. Поэтому все очень сложно втиснуть.
Подумываю об установке FPGA в качестве LCD контроллера.

Посмотрел на RoadMap от Epson.
http://media.digikey.com/pdf/Data%20Sheets...0Controller.pdf

В принципе для QVGA было бы достаточно S1D13A05B00B200 ( 256KB встроенной памяти)
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 16 2008, 09:14
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(MiniMax @ Mar 16 2008, 11:30) *
Я знаю об SAM9261 со встроенным LCD.
Но выбор SAM9XE по причине того, что проектируется универсальная ( development board) плата.
В самой простой конфигурации это будет просто "микроконтроллерная" плата
( без внешней SDRAM и др). Только SAM9XE.
В полной комплектации это будет "микропроцессорная" плата с 64M SDRAM, MicroSD, Ethernet, LCD.
Размеры платы будут 60x60мм. Поэтому все очень сложно втиснуть.
Подумываю об установке FPGA в качестве LCD контроллера.

SAM9261 тоже можно использовать без SDRAM - 160Кбайт SRAM вполне достаточно даже для не очень мелких задач, загружаться можно с DataFlash.

Цитата(MiniMax @ Mar 16 2008, 11:30) *
Посмотрел на RoadMap от Epson.
http://media.digikey.com/pdf/Data%20Sheets...0Controller.pdf

В принципе для QVGA было бы достаточно S1D13A05B00B200 ( 256KB встроенной памяти)

Он один стоит дороже, чем SAM9263 (который перекроет все Ваши потребности, включая Ethernet), и с наличием глухо.
Go to the top of the page
 
+Quote Post
dmtr
сообщение Mar 16 2008, 17:18
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 80
Регистрация: 5-09-06
Из: Nsk
Пользователь №: 20 094



Небольшой вопрос, хотя не совсем в тему...
А можно на платах на SAM9260 впоследствии запаиваивать SAM9XE, т.е. совпадают ли они по ногам ?
Go to the top of the page
 
+Quote Post
MiniMax
сообщение Mar 16 2008, 17:52
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 12-09-07
Пользователь №: 30 498



Цитата(dmtr @ Mar 16 2008, 21:18) *
Небольшой вопрос, хотя не совсем в тему...
А можно на платах на SAM9260 впоследствии запаиваивать SAM9XE, т.е. совпадают ли они по ногам ?


Да, можно. DEVKIT для SAM9XE должен появиться в продаже только в апреле.
Пока рекомендуют покупать DEVKIT для 9260 и просто запаять туда новый 9XE.
По выводам все попадает
Go to the top of the page
 
+Quote Post
Pronic
сообщение Jan 23 2010, 14:51
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 142
Регистрация: 13-12-08
Пользователь №: 42 444



Оживляю вопрос, поскольку микросхемы доступны и тема актуальна.

Мне как раз подходит AT91SAM9XE512 по всем параметрам, за исключением отсутствия контроллера дисплея.
Можно подключить дисплей с 16-битным CPU интерфейсом, как это сделано на плате EVK 1105 для AT32UC3A0512.

Остается главный вопрос - можно ли будет запустить графический интерфейс Linux и использовать какие-либо готовые библиотеки?


--------------------
Мы в любой заготовке обязаны увидеть деталь
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jan 23 2010, 16:27
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Pronic @ Jan 23 2010, 17:51) *
Остается главный вопрос - можно ли будет запустить графический интерфейс Linux и использовать какие-либо готовые библиотеки?

Можно, конечно. А вот будет ли доступен драйвер для вашего дисплея, или же его придется писать самому - вопрос.
Go to the top of the page
 
+Quote Post
MiniMax
сообщение Jan 23 2010, 17:43
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 12-09-07
Пользователь №: 30 498



Я подключил MTF-TQ24NN731-LB. Дисплей имеет встроенный контроллер.
Готового драйвера не нашел. Пришлось написать самому fb драйвер для ILI9325 контроллера.
В принципе, не особо сложно.
Программная пересылка FrameBuffer из SDRAM в память LCD контроллера 25 раз в секунду. Процессор не нагружается

Запускал Minigui
Фотографии можно посмотреть здесь
Go to the top of the page
 
+Quote Post
sasamy
сообщение Jan 24 2010, 00:23
Сообщение #10


Знающий
****

Группа: Участник
Сообщений: 783
Регистрация: 22-11-08
Пользователь №: 41 858



Цитата(MiniMax @ Jan 23 2010, 21:43) *
Программная пересылка FrameBuffer из SDRAM в память LCD контроллера 25 раз в секунду. Процессор не нагружается


Забавно - а данные из sdram в lcd чертик из табакерки перекидывает 25 раз в секунду ? smile.gif
Go to the top of the page
 
+Quote Post
MiniMax
сообщение Jan 24 2010, 09:33
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 12-09-07
Пользователь №: 30 498



Цитата(sasamy @ Jan 24 2010, 03:23) *
Забавно - а данные из sdram в lcd чертик из табакерки перекидывает 25 раз в секунду ? smile.gif


Да, 25 раз в секунду
Дисплей имеет 18-bit шину. Процессор пишет 32-bit словами. Старшие 14 разрядов не используются.
Организация FB подогнана под железо, чтобы цикл записи был оптимизирован по скорости
Код
....
static struct fb_var_screeninfo mmarm9_ili9325_var __devinitdata = {
    .xres           = X_RES,
    .yres           = Y_RES,
    .xres_virtual   = X_RES,
    .yres_virtual   = Y_RES,
    .height         = -1,
    .width          = -1,
    .activate       = FB_ACTIVATE_NOW,
    .vmode          = FB_VMODE_NONINTERLACED,
    .bits_per_pixel = B_PP,
    .red            = {12, 6, 0 },
    .green          = { 6, 6, 0 },
    .blue           = { 0, 6, 0 },
    .nonstd         = 0,
};
.....

static int mmarm9_ili9325_thread(void *param)
{
    int ndx;
    u32 *videodata;
    struct mmarm9_ili9325_info *sinfo = (struct mmarm9_ili9325_info *)param;
    printk(KERN_ALERT "ILI9325 Thread Enter\n");
    while(!kthread_should_stop()) {
        videodata = (u32*)sinfo->buffer;
        /* X=0,Y=0 */
        iowrite32(0x40,sinfo->ir);
        iowrite32(0x0,sinfo->dr);
        iowrite32(0x42,sinfo->ir);
        iowrite32(0x0,sinfo->dr);
        iowrite32(0x44,sinfo->ir);
        /* Update LCD VIDEO RAM from FrameBuffer */
        for ( ndx=0; ndx< MEM_LEN>>2; ndx++)  iowrite32(*videodata++,sinfo->dr);
        /* Frames Per Second = 25 */
        schedule_timeout_interruptible(HZ/25);
   }
    printk(KERN_ALERT "ILI9325 Thread Exit\n");
    return 0;
}
....
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jan 24 2010, 09:56
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Просто общественность удивила фраза "процессор не нагружается", в то время как именно ему и приходится за всех отдуваться.
Go to the top of the page
 
+Quote Post
MiniMax
сообщение Jan 24 2010, 10:54
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 12-09-07
Пользователь №: 30 498



Цитата(aaarrr @ Jan 24 2010, 12:56) *
Просто общественность удивила фраза "процессор не нагружается", в то время как именно ему и приходится за всех отдуваться.

Процессор показывает загрузку 0%. Я это имел ввиду.
Т.е. время пересылки очень маленькое и не тормозит другие задачи.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jan 24 2010, 11:51
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(MiniMax @ Jan 24 2010, 13:54) *
Процессор показывает загрузку 0%. Я это имел ввиду.
Т.е. время пересылки очень маленькое и не тормозит другие задачи.

Показывать он может все что угодно, но пересылка 7.32Мбайт/с не самым эффективным способом не грузить его не может.
Go to the top of the page
 
+Quote Post
MiniMax
сообщение Jan 24 2010, 16:31
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 12-09-07
Пользователь №: 30 498



Цитата(aaarrr @ Jan 24 2010, 14:51) *
Показывать он может все что угодно, но пересылка 7.32Мбайт/с не самым эффективным способом не грузить его не может.

Это понятно что грузит. Но практически это не влияет на работу других приложений.
Конечно-же все работало бы более эффективно при наличии DMA "memory-memory".
Но в этом контроллере его нет.
И вообще этот конроллер ( 9260) не для мультимедиа. Никто не собирается крутить на нем кино
Для простого GUI все работает удовлетворительно
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th July 2025 - 20:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01504 секунд с 7
ELECTRONIX ©2004-2016