SergeyL 0 14 июля, 2005 Опубликовано 14 июля, 2005 · Жалоба Проблема такая. На моей самодельной плате не выбирается сигнал с PLLA как входной для Master clock. Эта же программа на атмеловской плате AT91RM9200-EK работает. Когда настраиваю на работу от PLLA он как будто от Main Clock. А вот на PLLB переключается. Причем я на PCK1 выводил все сигналы и Main clock и PLLA и PLLB все нормально. Разница насколько я понимаю только в процессорах. У меня стоит в корпусе PQFP на родной в BGA, но это не должно влиять. Кварцы такие-же. Уже третий день бьюсь, решил у народа спросить может кто сталкивался. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GSG 0 14 июля, 2005 Опубликовано 14 июля, 2005 · Жалоба Посмотри п.28 в Errate. Сам сталкивался с этим, проблема была в том, что одни и те же значения битов CSS, PRES в регистре PMC_MCKR нужно записывать разными записями. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SergeyL 0 14 июля, 2005 Опубликовано 14 июля, 2005 · Жалоба Посмотри п.28 в Errate. Сам сталкивался с этим, проблема была в том, что одни и те же значения битов CSS, PRES в регистре PMC_MCKR нужно записывать разными записями. <{POST_SNAPBACK}> Смотрел. Чето не помогло мне это. Да и на другой то плате работает ведь, вот в чем прикол. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladislavS 39 14 июля, 2005 Опубликовано 14 июля, 2005 · Жалоба Лучше Errata 26 смотри. А то что на другой работает - не показатель. Оно даже на одном чипе может раз от раза то работать, то не работать. Вот этот код всегда включается: //Настройка генераторов и PLL.Все настройки для кварца 18.432 МГц //Включить главный генератор и задать время запуска 6/32768= 0,18 мс PMC_MOR = 1 | (6<<8); // MOSCEN | OSCOUNT while(!PMC_SR_bit.MOSCS); //Ждем пока генератор стабилизируется //Переводим процессор на главный генератор PMC_MCKR = 1 | (0<<2) | (0<<8); // MCK = MAIN PRES=0 MDIV=0 //Настроим PLLA на 196,6 МГц //Действуем согласно ERRATA PMC_PLLAR = (1<<29) | (32<<16) | (2<<14) | (28<<8) | 4; // MULA | OUTA | PLLACOUNT | DIVA while(!PMC_SR_bit.LOCKA); //Ждем пока PLLA захватится PMC_PLLAR = (1<<29) | (32<<16) | (2<<14) | (28<<8) | 3; // MULA | OUTA | PLLACOUNT | DIVA while(!PMC_SR_bit.LOCKA); //Ждем пока PLLA захватится //Настроим PLLB на 95,8464 МГц //Действуем согласно ERRATA PMC_PLLBR = (1<<28) | (24<<16) | (28<<8) | 5; while(!PMC_SR_bit.LOCKB); //Ждем пока PLLB захватится PMC_PLLBR = (1<<28) | (25<<16) | (28<<8) | 5; // USB96M | MULB | PLLBCOUNT | DIVB while(!PMC_SR_bit.LOCKB); //Ждем пока PLLB захватится #ifdef _TEST_ //Выведем PLLA/64 на 122-ю ногу (PB27) PIOB_PDR= (1<<27); // PB27 на Funck A PMC_SCER = (1<<8); PMC_PCK0=2 | (6<<2); #endif // _TEST_ //Переключим процессор на PLLA и MCK на PLLA/2 //Действуем согласно ERRATA PMC_MCKR_bit.MDIV=1; //MCK = PCK/2 PMC_MCKR_bit.PRES=0; PMC_MCKR_bit.CSS=2; //PCK = PLLA ЗЫ: На частоты не смотри, там превышение по МСК. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SergeyL 0 14 июля, 2005 Опубликовано 14 июля, 2005 · Жалоба Точно работает, завтра буду подробнее разбираться. У меня вообщем-то примерно так же было, только вот я в начале не трогал PMC_MCKR (перед настройкой PLL). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladislavS 39 14 июля, 2005 Опубликовано 14 июля, 2005 · Жалоба В этом коде заложены два ключевых момента с которыми я возился: 1. LOCK-и PLL-ей не вставали, если писать туда значения, которые уже были записаны. А это частый случай при внутрисхемной отладке, когда питание не снимается. Поэтому пишем туда то что не могло раньше быть и потом нужное значение. 2. Ваш случай в чистом виде. Errata 26. MDIV, PRES и CSS менять надо отдельно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
d__ 0 18 июля, 2005 Опубликовано 18 июля, 2005 · Жалоба Ндя, изврат там изрядный, по сути там необходимо менять не более одного бита за раз и причем этот бит не должен совпадать с текущим содержимыми регистра. Пока настроишь нужную конфигурацию, напрыгаешься как шимпанзе на сковородке... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladislavS 39 18 июля, 2005 Опубликовано 18 июля, 2005 · Жалоба Да ладно, зато какой сатисфэкшин и экспириенс поимеваешь когда всё начинает работать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться