Я использую PIC18F4680, и у меня возникают проблемы при работе с внешним тактовым источником 40 МГц или кристаллом 10 МГц в режиме HSPLL. Использование кристалла с частотой 10 МГц в режиме HS кажется вполне приемлемым, а кристалл с частотой 5 МГц в режиме HSPLL также работает нормально.
Происходит следующее: PIC запускается, работает в течение нескольких секунд, а затем на некоторое время выключается и запускается снова. Общий период цикла составляет около 5 секунд, из которых работа PIC прекращает работать в начале второй секунды.
Я также заметил, что иногда, когда я добавляю достаточно большой разряженный конденсатор к шине питания макета, PIC будет работать нормально. Интересно, что это происходит только в том случае, если я добавляю конденсатор, когда ПИК уже работает. Если я подключу макет к конденсатору или поставлю конденсатор, который не был полностью разряжен, проблема останется.
Я читал на некоторых сайтах, что проблемы, подобные моей, могут возникать из-за повышенного энергопотребления PIC на более высокой частоте и более низком рабочем напряжении. В этих случаях, если на источнике питания есть небольшие падения напряжения, они с большей вероятностью достигнут самого низкого рабочего напряжения PIC на этой частоте, поэтому для решения этой проблемы целесообразно иметь дополнительные конденсаторы на макете. Так как при полной нагрузке на 40 МГц, вся схема использует около 64 мА, моя первая мысль была поставить некоторые конденсаторы танталовые надеющихся , что они будут достаточно большими и имеют достаточно низкий ESR , чтобы решить эту проблему. Один не помог, а второй тоже не помог. Поэтому я добавил 100 μ Fалюминиевый конденсатор, и это тоже не помогло. Потом добавили алюминиевый конденсатор никакого эффекта. В конце я добавил алюминиевый электролитический конденсатор емкостью 1 мФ, а затем в первый раз схема работала нормально, пока не выключился и не включил питание. Следует также отметить, что для целей тестирования я использую Vcc 5,5 В, что является максимальным номинальным напряжением для этого микроконтроллера. Это должно оставить мне место до 4,2 В, что является самым низким рабочим напряжением на 40 МГц.
Далее, я читал , что иногда плавающие выходы могут вызвать сбои, поэтому я ставлю некоторые ниспадающего резисторов на все неиспользованные контакты и что не помогли. После того, что я прочитал , что иногда могут возникнуть проблемы , если входы генератора плывут, поэтому я попытался их подключения к GND с помощью некоторых 10 М Ом резисторы и это не помогло.
Из-за длины провода, идущего от выхода генератора к входу генератора на PIC, я ожидал проблем с ним, но я не ожидал проблем с кристаллом 10 МГц, который очень близко к выводам генератора на PIC. Также с кристаллом, я бы ожидал проблем и в режиме HS, если проблема была в искажении сигнала генератора из-за макета, но в режиме HS PIC работает нормально.
Обычно я использую конденсаторы 33 пФ для кристаллов, но я тоже пробовал с 15 пФ и не смог обнаружить никаких изменений.
Следует также отметить, что на этом PIC имеется монитор часов повышенной безопасности и переключение внутреннего / внешнего генератора. Я попытался включить их обоих, надеясь, что они хотя бы подтвердят, что проблема связана с осциллятором, но они не помогают с проблемой. Там нет разницы, они включены или выключены.
Я также отключил в целях тестирования сторожевой таймер, сброс из-за отключения и сброс из-за переполнения стека. Я думаю, что я отключил все источники сброса для этого чипа. Также программа находится в бесконечном цикле, поэтому она не заканчивается.
У PCF8583 нет проблем, и он продолжает работать правильно, даже когда PIC сам перезагружается, но, с другой стороны, минимальное напряжение намного ниже.
К сожалению, у меня нет осциллографа, но я провел некоторые тесты со звуковой картой (частота дискретизации 96 кГц), и я заметил, что при включенном RTC на линии электропередачи появляется шум с частотой 25 Гц. Программа, которую я использую, сообщает о пике около 300 мВ, но я не знаю, насколько ей можно доверять, и я не знаю, достаточно ли этого, чтобы вызвать какие-либо проблемы для PIC. Когда все выключено, шум составляет около 100 мВ от пика до пика, так что должно быть хорошо.
Если это поможет, вот изображение самого макета: (щелкните правой кнопкой мыши -> просмотреть изображение в полном размере)
Так кто-нибудь знает, что здесь происходит?
В конце концов, я мог бы просто запустить PIC на 20 МГц, но если мне понадобится больше вычислительной мощности, я бы хотел иметь возможность работать на 40 МГц.
ОБНОВИТЬ
Я установил другой регулятор на самом макете, и шум, улавливаемый звуковой картой, теперь намного ниже (около 50 мВ от пика до пика), но это не повлияло на основную проблему.