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

 
 
> EnergyMicro - запуск кварца
Dog Pawlowa
сообщение Jun 24 2014, 16:37
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Сделал проект на базе примера usbmsd

Перестал запускаться кварц - висит на ожидании

Код
    /* Wait for clock to stabilize if requested */
    if (wait)
    {
      while (!(CMU->STATUS & status))
     ;
    }


Мог бы предположить, что сломал что-то, но код от начала main до места зависания не менялся:

Код
  /* Chip errata */
  CHIP_Init();

  /* If first word of user data page is non-zero, enable eA Profiler trace */
  BSP_TraceProfilerSetup();

  CMU_ClockSelectSet( cmuClock_HF, cmuSelect_HFXO );
  CMU_OscillatorEnable(cmuOsc_LFXO, true, false);
  CMU_ClockEnable(cmuClock_GPIO, true);


Что это такое может быть?
Начало программы не поменялось, но результат драматичный.
Причем эта версия работала, отмотал в svn.

Загружаю родной пример - эту точку проходит.
Загружаю чвой проект с неизменной начальной частью - в этой точке виснет.

Бредятина какая-то sad.gif

Разницу нашел, но легче не стало - кварц все равно не запускается

Код
bool BSP_TraceProfilerSetup(void)
{
  volatile uint32_t *userData = (uint32_t *) USER_PAGE;    // Ссукии!

  /* Check magic "trace" word in user page */        
  if (*userData == 0x00000000UL)
  {
    return false;
  }
  else
  {
    BSP_TraceSwoSetup();
    return true;
  }
}


Ну и последние новости с фронта - в двух проектах, работающих на одном и том же стартките, считывается разная ревизия чипа.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


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


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