Перейти к содержанию
    

LPC2388 External Memory Controller

Здравствуйте.

 

Пытаюсь запустить EMC на процессоре LPC2388, ревизия "B".

 

Сделал инициализацию, пытаюсь выполнить чтение - тишина. Тыкаюсь осциллографом - ножки OE и CS всегда в единице.

Скорее всего, кривая инициализация.

У кого-то есть готовый работающий пример инициализации EMC на этом контроллере? Я делаю так.

 

//перед вызовом этой функции запускается инициализация PLL.
void Init_EMC(void) 
{
  SCS     |= 0x00000002;   // Reset EMC. 
  EMCCONTROL = 0x00000001; // Enable EMC.
  PCONP   |= 0x00000800;   // Turn on EMC PCLK.
  PINSEL6  |= 0x5555; // D0-D7. 0101010101010101(b)
  PINSEL8  = 0x55555555; // A0-A15.
}

#define EMC_BASE 0x80000000
//запись
void inline WriteEMCFPGA(unsigned int addr, unsigned char dtx)
{
    unsigned char * p;
    p = (unsigned char*)(addr + EMC_BASE);
    *p=dtx;    
}
//чтение
unsigned char inline ReadEMCFPGA(unsigned int addr)
{
    
    unsigned char * p;
    p = (unsigned char*)(addr + EMC_BASE);
    return *p;    
}

 

Что делаю не так или чего не делаю?

 

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сам же и разобрался.

Попросту забыл проинициализировать OE и CS для работы с внешней памятью.

Теперь все работает.

 

Код инициализации такой:

 

  PCONP   |= 0x00000800;   // Turn on EMC PCLK.
  PINSEL6  = 0x5555; // D0-D7. 0101010101010101(b)
  PINSEL8  = 0x55555555; // A0-A15.
  PINSEL9 =  (0x01 << 16) | (0x02 << 18) | (0x01 << 28) | (0x01 << 30);
  EMCCONTROL = 0x00000001; // Enable EMC.
  SCS     |= 0x00000002;   // Reset EMC.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...