|
Проблема увеличения частоты на LPC1768 |
|
|
|
Aug 30 2010, 09:33
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 24-04-08
Пользователь №: 37 032

|
Здравствуйте. Поюзал недавно "development board" с LPC1768 на борту и развел свою (кварц 12 МГц и там и там). Проблема следующая: не хочет работать на высокой частоте, начинаются какие-то глюки на частоте от 30 МГц. При тактировании от внутреннего RC эти глюки происходят при разгоне до 60 МГц. Толком обьяснить не смогу, такое впечатление, что происодят пропуски тактовой частоты. ПРи ресете программа выполняется какое-то время, затем останавливается. Или выполняется, но глючно (программа - дерганье ногой). На плате производителя все нормально. Начал сравнивать - апмлитуда на моем кварце немногим больше 1В, причем она падает с увеличением конечной частоты и некая нестабильность появляется. На плате производителя около 1.8 и практически ни от чего не зависит. Ставил другие кварцы (6 МГц - та же проблема, только амплитуда стабильно держится 1В с небольшим, 25 МГц - не шьется, говорит в конце ошибка лоадера...) Подскажите, пожалуйста, в чем могут быть проблемы? Плохая разводка кварца? вторая неделя уже ни к чему не привела((
|
|
|
|
|
 |
Ответов
|
Sep 17 2010, 13:21
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 24-04-08
Пользователь №: 37 032

|
Господа, вообщем частоту я добил. Все заработало и дело было все-таки в разводке. Однако радость моя была недолгой. Решив посмотреть как будет умножаться внутренний генератор написал след. вещь : CODE void InitClock(void) { //Flash accelerator init FLASHCFG = (0x5UL<<12) | 0x3AUL;
// // 1. Init OSC // SCS_bit.OSCRANGE = 0; // SCS_bit.OSCEN = 1; // 2. Wait for OSC ready // while(!SCS_bit.OSCSTAT); // 3. Disconnect PLL PLL0CON_bit.PLLC = 0; PLL0FEED = 0xAA; PLL0FEED = 0x55; // 4. Disable PLL PLL0CON_bit.PLLE = 0; PLL0FEED = 0xAA; PLL0FEED = 0x55; // 5. Select source clock for PLL CLKSRCSEL_bit.CLKSRC = 1; // Selects the main oscillator as a PLL clock source. // 6. Set PLL settings 300 MHz PLL0CFG_bit.MSEL = 25-1; PLL0CFG_bit.NSEL = 2-1; PLL0FEED = 0xAA; PLL0FEED = 0x55; // 7. Enable PLL PLL0CON_bit.PLLE = 1; PLL0FEED = 0xAA; PLL0FEED = 0x55; // 8. Wait for the PLL to achieve lock while(!PLL0STAT_bit.PLOCK); // 9. Set clk divider settings // CCLKCFG = 3-1; // 1/3 Fpll CCLKCFG = 3-1; PCLKSEL0 = PCLKSEL1 = 0; // other peripherals 100/4 = 25MHz // 10. Connect the PLL PLL0CON_bit.PLLC = 1; PLL0FEED = 0xAA; PLL0FEED = 0x55; CLKOUTCFG_bit.CLKOUTSEL = 0; //CLKOUTCFG_bit.CLKOUTDIV = 1; CLKOUTCFG_bit.CLKOUT_EN =1; PINSEL3 |= (1<<22); } При этом случайно забыл CLKSRCSEL_bit.CLKSRC = 1 поставить 0 (внутренний осциллятор). Программа зашилась, но на все последующие прошивки теперь ругается. IAR, SEGGER говорят что-то вроде "FAILED to measure CPU clock frequency" или "Could not write Ctrl/Stat register". Попробовал поиграться со скоростями JTAGа - ничего не вышло. Проделал тоже самое с фирменной платой - теперь и она не работает  . Как дальше быть? Стереть также не получается
|
|
|
|
|
Sep 18 2010, 10:14
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 24-04-08
Пользователь №: 37 032

|
Цитата(rezident @ Sep 17 2010, 18:08)  И даже с помощью Bootloader стереть не получается? Вы меня озадачили. Объясните, пожалуйста, подробнее, как поступить? У него есть какой-то встроенный Bootloader, до которого можно как-то достучаться?
Сообщение отредактировал _fun_ - Sep 18 2010, 10:37
|
|
|
|
Сообщений в этой теме
_fun_ Проблема увеличения частоты на LPC1768 Aug 30 2010, 09:33 sonycman Приведите схему своей платы и её разводку. Aug 30 2010, 09:37 zltigo PLL, WS, MAM. Aug 30 2010, 09:53 _fun_ не понял, как правильно сюда файлы загружать
Цита... Aug 30 2010, 09:56 adnega На какой частоте работает PLL - смотреть вниматель... Aug 30 2010, 12:14 _fun_ Цитата(adnega @ Aug 30 2010, 16:14) На ка... Aug 30 2010, 13:28 adnega Регистр SC->FLASHCFG и SC->CCLKCFG правильно... Aug 30 2010, 13:37 _fun_ Цитата(adnega @ Aug 30 2010, 16:37) Регис... Aug 31 2010, 06:08  sonycman Цитата(_fun_ @ Aug 31 2010, 10:08) подска... Aug 31 2010, 09:11 Aner 1) земляные проводники от конденсаторов (возможная... Aug 31 2010, 09:27 _fun_ Пытаюсь играться с емкостями кварца - пока никаких... Aug 31 2010, 09:43 zltigo Да оставьте Вы в покое несчастый кварц и тем более... Aug 31 2010, 10:33 vmp Для начала можно поиграться с внутренним RC-генера... Aug 31 2010, 11:28 _fun_ Вообщем игрался я с этими кварцами довольно долго.... Sep 17 2010, 07:39 sysel Я однажды доигрался с вочдогом на LPC1754, так что... Sep 17 2010, 14:41
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|