hallo allemaal
is het mogelijk om 2 pic16f84 samen te koppellen om zo de funktie's tegelijk te laten uitvoeren in mijn looplicht?
bijv. door de clock out op de ingang van de tweede pic te zetten.
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
De on-board oscillator is daar eigenlijk niet voor bedoeld. Het beste kun je dan een externe oscillator nemen en dan die aan beide PIC's hangen.
Waarom 2 pics, en moeten die echt exact synchroon lopen?
Het is zo,
Ik wil verschillende looplicht printen op elkaar aansluiten, en dan dat ze de zelfde en andere programma's lopen. maar deze printen wil ik eventueel ook appart kunnen gebruiken.
En die externe oscillator zou ik daar gewoon een 555 voor kunnen gebrijken of hou bedoel je. Momenteel gebruik ik een rc osc
alvast bedankt
groet, Jan
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Als je ze ook apart wilt gebruiken, kun je natuurlijk niet 1 oscillator gebruiken, want dan werkt de andere niet apart. Waarom wil je ze op 1 oscillator? Beter om een soort handshake tussen beide MCU's te maken om de boel te synchroniseren.
Zelfs als ze beiden op dezelfde oscillator zouden lopen, wil dat nog niet zeggen dat ze allebei precies synchroon lopen, dat hangt van het opstarten af...
Jochem
If you want to succeed, double your failure rate.
Als het puur om de step-snelheid van je looplicht gaat, dan moet je natuurlijk helemaal niks met de interne klok van die PIC's gaan doen, zeker niet als je ze ook losstaand wilt gebruiken.
Gewoon de implementatie zo maken dat je 1 master hebt die het tempo bepaald en de rest als slaves (ster of daisy-chain) daaraan vast hangt.
oke.
snap het een beetje.
Ben namelijk niet 'zo op de hoogte met programma's schrijven en probeer het wel iedere keer maar lukt niet echt(zelfs de tutorial van deze site vind ik al moeilijk).
Heb hier wel een programma (ergens van internet afgehaald)daar kan ik van de binare reeks doormiddel van 1/0 te veranderen het programma aanpassen, maar wil nu iets groters maken. Een matrix van 6x6 of 6x8 voor mijn modelbouw.
dus dacht als ik nu 2 van deze maak en deze de zelfde clock geef en dan zo doormiddel van transistors te schakelen zou dat een mogelijkheid zijn.
hoor het wel.
TheBasher
Don't build anything you can't take apart
Welke taal wil je leren? Picbasic.nl heeft een uitgebreide tutorial en daar heb ik mijn kennis ook uit opgedaan.
Op 2 december 2011 11:12:26 schreef flash2b:
Met een 555 haal je niet een paar MHz. Gebruik gewoon een XTAL oscilator in zo'n blikje.
Voor een looplicht heb je niet echt super hoge snelheden nodig.
Even brainstormend...
Je zou de master met een RC-oscillator kunnen uitvoeren, R (deels) als potmeter om de snelheid te kunnen varieren. Elke slaaf weer aangesloten op de klokuitgang van de master( die is dan wel weer 1/4 van de kloksnelheid). Je zal dan nog kleine opstartverschillen houden en moet je ook nog een extra synchronisatielijntje gebruiken.
Als je het universeel wilt houden dan kan je bijv een ingang gebruiken met een jumpertje. Jumpertje dicht betekent dan bijv master (en eigen RC-oscillator), jumpertje open betekent dan 'slaaf' (kloksnelheid afgeleid van de master, en even wachten op synchronisatie).
buckfast_beekeeper
Van Lambiek wordt goede geuze gemaakt.
Elke µC zijn eigen kristal of interne oscilator afhankelijk van nauwkeurigheid en nodige verwerkingssnelheid.
Programmeer het zo dat een µC een interrupt ingang controleert. Zodra er 5sec geen interrupt signaal binnen komt overschakelen op standalone/mastermode. Zo kan je elke controller als master of slave gebruiken. Alleen er even voor zorgen dat niet alle conrollers gelijktijdig gestart worden of dat elke controller een verschillende time out heeft.
ben nog even bezig geweesd met een goede vriend die heeft me verder geholpen aangezien ik nog niet zo heel goed kan prog. en het is gelukt.
Iedereen van hart bedankt
Groet jan