PIC.. program nejede.. krystal?
Moderátor: Moderátoři
PIC.. program nejede.. krystal?
Dobrý den. Mám takový problém - mám krystal 40MHz, bastldesku, dva kondenzátory po 10p a PIC18F452. Napsal jsem jednoduchoučký prográmek - čítač, abych otestoval jestli mikrokontrolér pracuje. Bohužel program ve výchozím stavu zcela stojí.
Když přiložím k jedné z nožiček krystalu měřící hrot multimetru, nebo na nožičku sáhnu prstem, program se rozběhne, ovšem brutálně pomalu (odhadem tak 100kHz).. Rychlost se taky mění při uzemnění druhé strany multimetru (směrem dolů). Měl bych zvolit větší kapacity u krystalu než těch 10p? Je vůbec možné provozovat na bastldesce takové frekvence? Je třeba nastavit něco v tom mikrokontroléru? (zatím mám jen OSC=XT)
Děkuji předem za odpovědi
Když přiložím k jedné z nožiček krystalu měřící hrot multimetru, nebo na nožičku sáhnu prstem, program se rozběhne, ovšem brutálně pomalu (odhadem tak 100kHz).. Rychlost se taky mění při uzemnění druhé strany multimetru (směrem dolů). Měl bych zvolit větší kapacity u krystalu než těch 10p? Je vůbec možné provozovat na bastldesce takové frekvence? Je třeba nastavit něco v tom mikrokontroléru? (zatím mám jen OSC=XT)
Děkuji předem za odpovědi
Datasheet například tady
http://ww1.microchip.com/downloads/en/D ... 39564c.pdf
strana 17. blok 2....
-::>> Mód oscilátoru pro 4MHz a výše je HS, a kapacitu můžeš klidně dát větší.
Střídání krystalů není zcela standardní postup...v GME kupuju krystaly v nízkém pouzdře nebo SMD a aplikace netrpí žádnými problémy
http://ww1.microchip.com/downloads/en/D ... 39564c.pdf
strana 17. blok 2....
-::>> Mód oscilátoru pro 4MHz a výše je HS, a kapacitu můžeš klidně dát větší.
Střídání krystalů není zcela standardní postup...v GME kupuju krystaly v nízkém pouzdře nebo SMD a aplikace netrpí žádnými problémy
Žádné množství pokusů nikdy nemůže dokázat, že jsem měl pravdu. Jeden pokus však kdykoliv může dokázat, že jsem se mýlil.........(Albert Einstein).
Zaprvé máš blbě nastavení. Na víc jak 4MHz musíš nastavit HS!!!FAtbluNT píše:Tak s 20M XT se to chová pořád stejně.. Podívám se jestli tu nemám po šuplících nějaké vyhovující kapacity (mám jen desítky a stovky nF)..
Zadruhé 18f452 umí jenom 25MHz, takže se nedivím, že to se 40ti nejde.
A zatřetí máš malý kondy. V datasheetu se zmiňují o 15-33pF pro 8MHz a více.
Nejdřív si přelouskni datasheet, než začneš stavět...ušetříš si starosti
...to co pisu nemyslim zle, ikdyz to tak muze vyznit...
To nastavení na HS byl hlavní problém.. V datashetu jsem to přehlédl, ostatně podobně jako frekvenci krystalu, ve specifikaci je 10 MIPS tak jsa odkojen levnými PICy předpokládal že to znamená 40MHz (PIC16 má pevný dělič frekvence, strojový cyklus je vždy 1/4 frekvence XT)
Kondenzátory jsou malé, ovšem po nastavení na HS začal kontrolér normálně pracovat, a to na frekvenci odpovídající těm 40MHz (bohužel nemám vybavení na měření takových frekvencí k dispozici, počítám podle hrubého počtu instrukcí za sekundu)
Jinak datasheet mám načtený slušně, už jsem pro tento mikrokontrolér navrhnul několik zapojení s grafickým displejem (jedno právě testuji na té bastldesce )
Kondenzátory jsou malé, ovšem po nastavení na HS začal kontrolér normálně pracovat, a to na frekvenci odpovídající těm 40MHz (bohužel nemám vybavení na měření takových frekvencí k dispozici, počítám podle hrubého počtu instrukcí za sekundu)
Jinak datasheet mám načtený slušně, už jsem pro tento mikrokontrolér navrhnul několik zapojení s grafickým displejem (jedno právě testuji na té bastldesce )
na ten násobič jsem taky koukal, je tam nějaká PLL smyčka, skoro jak na PC ale zatím to jede s tím 40M přímo, až zjistím že to stejně kmitá +- autobus (což je vzhledem k ceně a typu krystalu možné) asi to využiju..Atlan píše: tak tam daj 10Mhz a vynasob to 4 budes mad tych 40 co potrebuješ. pouzi HS/PLL
_CONFIG1H EQU H'300001'
_PL_OSC_1H EQU H'FE'
__CONFIG _CONFIG1H, _PL_OSC_1H