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

 
 
> LPC2387, PLLSTAT
addi
сообщение Feb 24 2011, 04:46
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 679
Регистрация: 9-08-06
Пользователь №: 19 422



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

Вопрос по поводу установки клоков, значения PLLCFG не отражаются в PLLSTAT, исполнение виснет на проверки соответствующего бита

Может кто скалкиваоя, прошу помочь
Код
void ConfigurePLL ( void )
{
  DWORD MValue, NValue;

  if ( PLLSTAT & (1 << 25) )
  {
    PLLCON = 1;            /* Enable PLL, disconnected */
    PLLFEED = 0xaa;
    PLLFEED = 0x55;
  }

  PLLCON = 0;                /* Disable PLL, disconnected */
  PLLFEED = 0xaa;
  PLLFEED = 0x55;
    
  SCS |= 0x20;            /* Enable main OSC */
  while( !(SCS & 0x40) );    /* Wait until main OSC is usable */

  CLKSRCSEL = 0x1;        /* select main OSC, 16MHz, as the PLL clock source */

  PLLCFG = PLL_MValue | (PLL_NValue << 16);
  PLLFEED = 0xaa;
  PLLFEED = 0x55;
      
  PLLCON = 1;                /* Enable PLL, disconnected */
  PLLFEED = 0xaa;
  PLLFEED = 0x55;

  CCLKCFG = CCLKDivValue;    /* Set clock divider */
#if USE_USB
  USBCLKCFG = USBCLKDivValue;        /* usbclk = 288 MHz/6 = 48 MHz */
#endif
  //while ( ((PLLSTAT & (1 << 26)) == 0) );    /* Check lock bit status */
  while (!(PLLSTAT & 0x02000000));    /* Check lock bit status */  - здесь стоим.....
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
addi
сообщение Mar 22 2011, 13:48
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 679
Регистрация: 9-08-06
Пользователь №: 19 422



К сожалению при
M = 9
N = 1
ClkDiv = 4
Fcco = 288 МГц

также получается 740000 вместо ожидаемых 921600(((.....
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Mar 22 2011, 14:24
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(addi @ Mar 22 2011, 17:48) *
К сожалению при
M = 9
N = 1
ClkDiv = 4
Fcco = 288 МГц

также получается 740000 вместо ожидаемых 921600(((.....


А куда Вы свои 921600 пытаетесь отправить? И через что (мах232 или ftdi)?
Не пробовали заводить уарт на 115200 или другом стандартном boadrate?
Может быть Ваше железо просто не тянет такой поток.

Вы уверены что точно установили частоту ?
Попробуйте подать на уарт частоту пониже напр Fcclk/2 (PCLKSEL0 |= (2ul<<8); //делитель на 2)

p.s. нашёл в эррате пункт 3.14 Flash.1: Operating speed out of on-chip flash is restricted в котором указано что мах. частота работы из flash ограничена в 60MHz вместо заявленных 72. Проверьте ревизию своего чипа.

Сообщение отредактировал mempfis_ - Mar 22 2011, 14:58
Go to the top of the page
 
+Quote Post



Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 03:54
Рейтинг@Mail.ru


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