ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
23 ноября
161 Топик полностью
Alexey_N (08.12.2003 17:04, просмотров: 1) ответил DDD на Заколебали эти смены ноги ... И куда ее теперь вешать??
Огромное спасибо! Обе причины правильные! 1.Расчет коэффициента умножения (и деления):
CCLK - желаемая скорость камня = 60 (МГц)
FOSC - частота кварца = 10 (МГц)
М = CCLK/FOSC = 6; => MMSEL = 5 (00101)
Выбираем P = 2;
При этом FCCO (частота ГУНа) = CCLK x 2 x P = 60x2x2 = 240 (МГц),
что, как бы, допустимо (в пределах 156 - 320).
Получаем PLLCFG = 0 10 00101 = 0x45
А у меня было прописано 0х25! Итак, банальная невнимательность...

2.Действительно PLLFEED нужно писать после того как!
Итак, работающая последовательность:
__PLLCON |= 0x03;
__PLLCFG = 0x45;
__PLLFEED = 0xAA;
__PLLFEED = 0x55;
Всё, ПЛЛ наша!!!

Дальнейшие победы:
1.МАМку сконфигурировать удалось сразу - все работает, как написано.
2.Полезная вещь - VPBDIV, тоже работает как написано, щас попробую его погонять с ПЛЛ-кой, посмотрим какую частоту он держит в пределе...
3.Разрюхал вопрос по таймеру с прерываниями. Вот это было, блинн, занятно! Ключевой момент: оказывается в проект надо подлинковывать СТАРТАПНЫЙ ассемблерный файл! Казалось бы очевидная вещь, но в АВР-ах как-то обходились без этого... ну вот пока допер до этого деликатного обстоятельства - трое суток долой...
4.У этих, блинн ИАВРов в екзампле ошибка. В таймере инициализировать надо не PC0, а PR0! А они еще в комментариях удивляются, что мол как же это таймер у них хреново работает, ничего кроме нуля не жрет? Н-да...

Ну да ладно. Двигаемся дальше. Теперь на очереди оживление всей остальной переферии, и разрюховка одновременной работы нескольких прерываний...
Подсказки и намеки, по прежнему, с благодарностью принимаются!