Servus zusammen,
ihr könnt mir bestimmt ein wenig weiter helfen.
Ich würde gerne 4 µCs (1x Mega88 & 3x Tiny24) mit dem selben 20MHz-Takt
versorgen. Nun habe ich allerdings das Problem, dass auf keinem der 4
µCs der Clk-out Pin frei ist. Die Tiny24 sind voll belegt (XTAL1 und
XTAL2 für den Takt noch frei) und der Mega 88 hat ausgerechnet am
Clk-out-Pin den benötigten ICP1 drauf.
Ich frage mich nun, ob es nicht möglich ist den XTAL2-Pin des Mega88 mit
den XTAL1-Pins der Tiny24 zu verbinden.
Vielleicht kann man ja sogar den XTAL2-Pin eines Tiny24 wiederum als
Treiber nutzen, um das Taktisignal von Chip zu Chip zu schleifen, sodass
der XTAL2-Pin des Mega88, an dem dann auch der Quarz hängen würde, nicht
mehr als irgendwie nötig belastet wird.
Im DB des Mega88 lese ich, unter Kapitel 9.4 Absatz 2:
This Crystal Oscillator is a full swing oscillator, with rail-to-rail
swing on the XTAL2 output. This is useful for driving other clock inputs
and in noisy environments.
Was meint/wisst ihr? kann ich damit dann 3 XTAL1-Pins von den anderen
Tiny24 + einen Quarz treiben?
und ließe sich der Takt auch von Chip zu Chip "durchschleifen"?
ich Danke euch schonmal für eure Hilfe
MfG
Werner
Werner schrieb:> µCs der Clk-out Pin frei ist. Die Tiny24 sind voll belegt (XTAL1 und> XTAL2 für den Takt noch frei) und der Mega 88 hat ausgerechnet am> Clk-out-Pin den benötigten ICP1 drauf.
Sind denn die Reset-Pins der Tinys noch frei? Die kann man ja notfalls
auch als Ein- oder Ausgang verwenden.
0,86 Cent und dein Problem ist gelöst
www.reichelt.de/Oszillatoren/OSZI-20-000000/3/index.html?;ACTION=3;LA=44
6;ARTICLE=13694;GROUPID=3174;artnr=OSZI+20%2C000000
Danke für eure Antworten,
die Gesuchte war noch nicht dabei (scherz!)
Oszillator bauen würde ich gerne auslassen, einen fertigen IC kenne ich
keinen. Gibst das? wie nennt sich sowas?
Out-Buffer ist wie gesagt schon belegt, der Pin ist leider an keinem µC
frei.
Die RESET-Pins würde ich ganz gerne zu programmieren behalten. Jedes mal
den Chip zum Programmieren auslöten is doch etwas nervig bei meinen noch
recht jungen Programmierkenntnissen.
Werner schrieb:> Oszillator bauen würde ich gerne auslassen, einen fertigen IC kenne ich> keinen. Gibst das? wie nennt sich sowas?
Was stört dich an einem komplett fertigen Oszillator wie im Beitrag von
Mischmasch verlinkt?
Mischmasch schrieb:> 0,86 Cent und dein Problem ist gelöst> www.reichelt.de/Oszillatoren/OSZI-20-000000/3/index.html?;ACTION=3;LA=44> 6;ARTICLE=13694;GROUPID=3174;artnr=OSZI+20%2C000000
wenn ich das richtig lese kann der nur 15pF "treiben"... das dürfte
relativ knapp sein bei 3 ICs oder nicht?
hat denn sowas noch keiner gemacht? Wundert mich!
Habe vielleicht eine ähnliche Lösung:
SN74LVC1GX04DBVR
http://www.ti.com/litv/sces581b
nur kann der 20MHz? das Datenblatt macht mich nicht direkt schlau...
Zitat:
Suitable for Commonly Used Clock Frequencies:
15 kHz, 3.58 MHz, 4.43 MHz, 13 MHz, 25 MHz, 26 MHz, 27 MHz, 28 MHz
Was anderes finde ich gerade bei Mouser (lieferant ist leider
vorgegeben) nicht. Vermutlich verwende ich nicht die richtigen
Suchbefehle, aber meine Trefferquote ist momentan wirklich mager...
Werner schrieb:> hat denn sowas noch keiner gemacht?
Doch. Aber vermutlich hat keiner der grad Mitlesenden Lust, für dich
hier im Forum zu suchen, oder zu googeln. Ich habe es vage so in
Erinnerung, dass es prinzipiell so geht, aber ein Gatter als Treiber
nahe(!) am Ausgang des Oszillators die zusätzliche Last begrenzen
sollte.
A. K. schrieb:> Was stört dich an einem komplett fertigen Oszillator wie im Beitrag von> Mischmasch verlinkt?
Vielleicht der Energieverbrauch. Kenne aber die
Niedrigst-Energie-Oszillatoren nicht so. Wenn es da was gibt: OK.
Ansonsten sah ich in meiner ollen 8051-Literatur eine einfache
Beispielschaltung zur Taktverstärkung. Man trennte an der Output-Seite
den Ziehkondensator an der Masse auf, und schleifte dort einen
Universal-Kleintransistor z.B. BC547 (NPN) an Basis und Emitter ein.
Antiparallel zur Strecke BE eine Diode 1N4148. Der Kollektor liegt über
1k an 5V. Vielleicht wäre das etwas für Werner.
Dennis Heynlein schrieb:> CPLD als Taktverteiler :)
Da kannst du bestimmt auch erläutern, wo das Sinn macht, und vor allem,
was es kostet, und was man noch so an Bausteinen, Tools und Knowhow
dafür extra braucht.
>> Da kannst du bestimmt auch erläutern, wo das Sinn macht, und vor allem,>> was es kostet, und was man noch so an Bausteinen, Tools und Knowhow>> dafür extra braucht.
Ein Quarzoszillator,
ein CPLD
und die Nutzung des direkten Takteinganges eines µC (external clock).
Das ermöglicht eine Verteilung unterschiedlich geteilter Grundtakte an
mehrere Controller.
Optional je nach Umfang des CPLD bis hin zum Reset-Managment und
"Netzwerk" zwischen Controllern.
Je nach Realisierbarkeit der Stabilitätskriterien sanfter Taktwechsel
ohne Reset.
-Tools ? Xilinx-Tools für lau
Sicherlich muß man sich das KnowHow aneignen ?
Schematic zeichnen für den Anfang.
Eine übertriebene Lösung implementiert selten einen Sinn !
Dennis Heynlein schrieb:> Das ermöglicht eine Verteilung unterschiedlich geteilter Grundtakte an> mehrere controller.> Optional je nach Umfang des CPLD bis hin zum Reset-Managment und> "Netzwerk" zwischen Controllern.> Je nach Realisierbarkeit der Stabilitätskriterien sanfter Taktwechsel> ohne Reset.
Da habe ich bei Systemtakten und Ableitungen eher noch so Dinge wie CMOS
4040 oder 4020 im Kopf. Auch Frequenzverdopplung mit Gattern. Aber jedem
das seine.
Ist CMOS 4040 oder 4020 in der Lage zur Laufzeit den Takt anzupassen ?
Einfach per Befehl über Seriellen Port ?
Und so teuer sind ja CPLDs nun auch nicht mehr :)
Dennis Heynlein schrieb:> Ist CMOS 4040 oder 4020 in der Lage zur Laufzeit den Takt anzupassen ?> Einfach per Befehl über Seriellen Port ?
Entschuldigung, daß ich die ollen CMOS 4000 mit den langen Schaltzeiten
als Synonym nahm, da gibt es ja auch schnelle Gatter 74ACxx. Je nach
dem, was man braucht.
Meine Fresse, ziehen sich denn hier alle die Hose mit der Kneifzange an?
Einfach den µC mit dem potentesten Oszillator (vermutlich der M88) als
Master deklarieren und als "full swing crystal oscillator"
konfigurieren. Mit seinem Oszillator-Ausgang (XTAL2) dann die Eingänge
(XTAL1) der anderen µC ansteuern (und die natürlich für "external clock"
konfigurieren).
Dabei natürlich auf die Kapazitäten achten und die Bürde-Kondensatoren
am Quarz entsprechend auslegen. Die Grenze ist spätestens dann erreicht,
wenn man auf einen negativen Wert für den Kondensator an XTAL2 kommt :)
Im letzteren Fall kann man entweder einen externen Oszillator nehmen
(der natürlich Lasten >15pF treiben kann, wer erzählt denn so einen
Unsinn?) oder einen Clock-Buffer zwischen den Master-µC und die Slaves
schalten. Dafür reicht schon ein 74 HC/AC Gatter.
Den dezidierten CLKO Pin braucht man nur, wenn man das Signal eines
internen Oszillators synchron an alle µC verteilen will. Oder wenn man
richtig viel Last treiben will ohne selber einen Buffer zu spendieren.
XL
Axel Schwenke schrieb:> Meine Fresse, ziehen sich denn hier alle die Hose mit der Kneifzange an?> Einfach den µC mit dem potentesten Oszillator (vermutlich der M88) als> Master deklarieren und als "full swing crystal oscillator"> konfigurieren. Mit seinem Oszillator-Ausgang (XTAL2) dann die Eingänge> (XTAL1) der anderen µC ansteuern (und die natürlich für "external clock"> konfigurieren).
Ja, man kann sich natürlich einen runterholen und hoffen, dass das
funktioniert. Oder man kauft sich für 0,86 seinen Seelenfrieden und
wendet sich danach wichtigeren Problemen zu.
Mischmasch schrieb:> Ja, man kann sich natürlich einen runterholen
Nein, man läßt sich einen runter holen.
War ein Mann im Kofferladen, und zeigte in Gegenwart der Verkäuferin 3
Meter hoch auf die oberste Regalablage. Die Verkäuferin sagte da: Soll
ich ihnen einen runter holen? Der Mann sagte dann: Jaaaa. Für den Koffer
komme ich dann mal wieder...
Mischmasch schrieb:> Axel Schwenke schrieb:>> Meine Fresse, ziehen sich denn hier alle die Hose mit der Kneifzange an?>> Einfach den µC mit dem potentesten Oszillator (vermutlich der M88) als>> Master deklarieren und als "full swing crystal oscillator">> konfigurieren. Mit seinem Oszillator-Ausgang (XTAL2) dann die Eingänge>> (XTAL1) der anderen µC ansteuern>> Ja, man kann sich natürlich einen runterholen und hoffen, dass das> funktioniert.
Kannst du auch irgendwie begründen warum das nicht funktionieren soll?
Oder ist das wieder nur ein Fall von "der Hersteller hat nicht extra ins
Datenblatt geschrieben, daß das so geht, also wirds auch nicht gehen"?
> Oder man kauft sich für 0,86 seinen Seelenfrieden
Ein externer XO hat auch Nachteile. Er ist tendenziell größer als ein
nackter Quarz (die verlinkte Blechbüchse sowieso). Er braucht mehr
Strom. Er ist nicht ziehbar. Und ein Gatter als Clock-Buffer (von dir
strategisch weggeschnippelt) ist ja womöglich ohnehin noch frei.
Ansonsten ist XTAL2 bei entsprechender Konfiguration der Ausgang eines
CMOS-Inverters. Sicher weniger potent als ein IO-Driver. Aber
andererseits sicher mehr als genug, um einen anderen AVR mit Takt zu
versorgen. Sooo unempfindlich kann dessen Eingang ja auch nicht sein,
wenn er auch für einen low power XO taugt.
XL
Axel Schwenke schrieb:> Ansonsten ist XTAL2 bei entsprechender Konfiguration der Ausgang eines> CMOS-Inverters. Sicher weniger potent als ein IO-Driver. Aber> andererseits sicher mehr als genug, um einen anderen AVR mit Takt zu> versorgen. Sooo unempfindlich kann dessen Eingang ja auch nicht sein,> wenn er auch für einen low power XO taugt.
Vorsicht! Von mir selbst gemessene Ausgänge an Invertern von
Quarzschaltungen bringen oft nur Sinus, das ist aber auch beabsichtigt,
weil der Inverter als Linearverstärker arbeitet, nicht als
Digitalschaltglied, und die Amplitude längst auch nicht mehr bis VCC.
Diesen XTAL2 Mist habe ich früher auch mal gemacht, es bringt nur Ärger.
Das taugt nicht für die Serie.
Wenn mehrere Quarze stören, dann nehme ich einen Oszillator und gut.
Oder den CLKO bei den ATmega.
Peter
Axel Schwenke schrieb:> Mit seinem Oszillator-Ausgang (XTAL2) dann die Eingänge> (XTAL1) der anderen µC ansteuern (und die natürlich für "external clock"> konfigurieren).
Würd' ich noch zwei HC04 Drinverter hinter den Quarz spendieren und dann
verteilen.
rgds
Der Ausgang des Analog Comparator des m88 hängt intern übrigens am ICP1.
Wenn also die AINx noch frei sind, dann das Signal da anschließen und
der CLK Out ist wieder frei ;)
Wenn selbst die dicht sind, dann bandgap einschalten und den ADC
Multiplexer Output nutzen für den Comparator input duckundwech.