Ik heb 2 PIC's (16F628A) aan elkaar hangen. De eerste (master) gebruikt zijn interne clock van 4 MHz. Dus in Proton heb ik dit staan:

Config INTRC_OSC_CLKOUT, WDT_OFF
XTAL 4

Vervolgens heb ik op de 2e PIC (slave) de volgende config staan, om gebruik te maken van het clocksignaal van de master PIC.

Config XT_OSC, WDT_OFF
XTAL 4

Dan heb ik dus de CLK_OUT (pin 15) van de master aan CLK_IN (pin 16) van de slave hangen, maar... het probleem is nu dat de slave veel trager is dan de master.
Ik heb ook RC_OSC_CLKOUT en EXTCLK_OSC geprobeert in de slave PIC, maar het resultaat blijft het zelfde.

Wat doe ik fout ?

Niks, maar in het datasheet staat dat de clock/4 op die pen staat. De tweede pic loopt dus 4X zo langzaam.

Aha... Dus om ze synchroon te laten lopen, zou ik bij de slave XTAL 1 moeten invullen ofzo ?

Als je ze echt gelijk wil laten lopen, kun je ook een extern X-Tal block nemen.
Maar je zou het ook software matig op kunnen lossen door middel van SHIN en SHOUT, dan heb je een PIN als data en een IN als CLOCK, onafhankelijk van je X-TAL

Dan ook nog de vraag waarom ze precies synchroon moeten lopen. Als dat in verband met communicatie tussen beide PICs is, dan vraag ik me af of dit de methode is.

Ik wilde eigelijk gewoon testen of het werkte. Als je nou bijvoorbeeld een shift register aansluit, dan kun je deze gelijk laten lopen met de clock van de PIC. Maar misschien is dit wel een enorme omweg en kan het allemaal veel simpelere.
Ik doe dit allemaal nog niet zo lang, en ben gewoon met diverse dingentjes aan het experimenteren en toen kwam ik dus op dit probleem uit.
Proton ondersteunt trouwens geen XTAL van 1, dus ik moet wel een andere oplossing gaan zoeken.

Kan ik trouwens zomaar meerdere IC's aansluiten op 1 kristal ?

[Bericht gewijzigd door SkalTura op (82%)]

Nee, kan niet.

Je kunt wel gebruik maken van een X-tal block. Deze heeft een geeft een blokgolf, welke je kunt aansluiten op meerdere componenten.

[Bericht gewijzigd door marcob op (94%)]

Ik denk dat zo'n kristalblokje inderdaad het makkelijkst is om te gaan gebruiken.

Allemaal bedankt voor jullie steun !

Klein vraagje nog...
Ik heb zo'n oscillator geprobeerd en het lijkt te werken, maar als ik het draadje aanraak op mijn breadboardje dat van de oscillator afkomt (pulse output), dan lijkt dit de snelheid te beinvloeden.

Moet ik de output hiervan ook met een condensator van 22pF aan massa hangen om dot soort storing te voorkomen (zoals bij een gewoon kristal) ?

Nee. als je een complete oscillator hebt, dan is het aansluiten, en klaar.

Mischien ter overvloede:
Je moet wel in de PIC instellen dat je een externe oscillator gebruikt.

En de voeding van je PIC goed ontkoppelen.

Meerdere IC's op 1 x-tal heb ik trouwens weleens gedaan. De eerste sluit je 'gewoon' aan, de tweede sluit je alleen met z'n clockin (OSC1) aan op de clockout (OSC2) van het eerste IC.

Beste Jochem_S,
Dat had ik in eerste instantie gedaan, maar zoals mij in een vorige response werd verteld, loopt de 2e dan 4x te traag.

JoWi post : uitgang = clock/4

Ik heb inmiddels beide PIC's op zo'n oscillator blokje zitten, en het loopt nu netjes gelijk. Uiteraard komen met deze oplossing waarschijnlijk weer nieuwe problemen om de hoek kijken, maar voorlopig werkt alles zoals het hoort (of zoals ik denk dat het zou moeten horen, hahaha)

Bedankt allemaal

Jij beschreef dat je dat i.c.m. de interne oscillator had gedaan. Als je de master op RC/INTOSC configureert wordt de uitgang 1/4 van je clockfreq.

Ik beschrijf een situatie met kristal op master 1 (die NIET als RC/INTOSC geconfigureerd staat, maar dus gewoon als HS of XT ofzo, afhankelijk van freq.) en dan de OSC2 aan de OSC1 van je slave knopen (die op diezelfde HS/XT, of misschien EC zetten, even proberen)

Ah... Dat zou ik inderdaad ook kunnen proberen. Op zich werkt de situatie zoals ik het nu heb ook, maar ik experimenteer er lustig op los om diverse manieren te proberen.
Microcontrollers is nieuw voor mij, dus ik ben vanalles aan het testen, ook met LCD's, SERVO's enzo, dus er zullen wellicht nog wel wat meer vragen op het forum geplaatst gaan worden.

Tot dusver bedankt voor de oplossingen, ik kan in het weekend weer vollop aan de gang ;)