Использую плату от Стартеркита SK-9g45-oem. Развел платку, подключил дисплей NEC NL6448BC18-01F. Все работает весело, картинка цветная)) Однако есть одно но. Чтобы заполнить весь экран каким либо цветом, у процессора уходит 35-40 мс времени (Измеряю с помощью PIT). В моем понимании, это слишком много. Написал программу заливки по алгоритму - так вообще, на одну картинку уходит 500 мс. Это вообще бардак.
Вот у меня возник вопрос, так как я этот процессор только начал осваивать, может я чего то там недоинициализировал? Использовал исходники с SAM9G45EK для начальной инициализации проца, настроил дисплей и ДМА и все.
В общем, прошу совета.
p.s. Появилось подозрение, что всему виной низкая скорость обмена с памятью DDR2. Кто может подсказать, как правильно инициализировать память в комплекте с платой (k4T511630I, может у кого завалялся код?). Я использовал настройки памяти из проектов SAM9G45-EK
p.s.s. Подозрения подтвердились. Написал прогу:
Код
unsigned short *lcdbuffer = (unsigned short *) (AT91C_DDR2 + 0x00100000);
uint32 time1,time2;
uint16 ITemp;
timestamp=0;
for(cnt=0;cnt<640000;cnt++)
*lcdbuffer=0xffff;
time1=timestamp;
timestamp=0;
for(cnt=0;cnt<640000;cnt++)
ITemp=0xffff;
time2=timestamp;
TRACE_INFO("time1 is %u, time2 is %u\r",time1,time2);
т.е. сначала записывал в DDR2, потом работал со встроенной памятью(Как мне кажется, может я не прав, поправьте)
и получил результат
time1 is 1287433, time2 is 3
Что я делаю не так? Явно же где то мой косяк в настройке DDR2.
Сообщение отредактировал Rattle_the_Snake - Jun 8 2012, 12:08