Bir kristali iki mikro ile paylaşmanın şeması nedir?


20

İki mikro arasında tek bir kristali (tam bir osilatör modülü değil) nasıl paylaşabilirim? İlk mikro için her şeyi normal olarak bağlamak ve aynı zamanda XO'sunu ikinci mikrodenetleyicinin XI'sine doğrudan bağlamak uygun mudur? Mikroları tahtaya çok yakın yerleştirmeyi umuyorum.

Yanıtlar:


17

Mikronlar arasında bir saati paylaşmam gerektiğinde yaptığım şey, kristalin bir osilatörü bir mikro üzerinde çalıştırması ve daha sonra ikinci mikroyu çalıştırmak için o mikroden osilatör çıkış pimini (tipik olarak CLKOUT veya OSCOUT) kullanmasıdır.

İki işlemcinin arasında geçiş yapmak için gereken uzun PCB izlerinin kapasitansının bir arızaya neden olmaması dışında, aynı kristalden iki osilatörü sürmeye çalışan problemler bekleyebilirim.

şematik

bu devreyi simüle et - CircuitLab kullanılarak oluşturulan şematik


1
Bazı mikro denetleyiciler, kristale bağlı olmayan ayrı bir saat çıkış pimine sahiptir.
joeforker

2
MSP430 işlemcileri, dahili saatlerin (ACLK, SMCLK veya MCLK) herhangi birini G / Ç pinlerinden dışarı yönlendirebilir. ACLK çıkışını (32768Hz) RTC yedekleme saatini bir GPS cihazına ana gücünün kapalı olduğu saatlerde sağlamak için kullanıyorum.
uɐɪ

7

Bu tam olarak istediğiniz şey değil. Bir osilatör oluşturmak için bir kristal kullandığınızda, kristali sürmek için mikrodenetleyicinin içinde bir invertör kullanırsınız. Her iki mikroskobu da aynı kristale bağlarsanız, savaşırlar ve çalışmazlar.

Bu nedenle, kristal sürücü (veri sayfasının 6.2.6 bölümünde gösterildiği gibi yapılandırın) olarak görev yapmak için iki mikrodan birini ve harici bir saat girişi (veri sayfasının 6.2.1'i) kullanmak için diğer mikroyu seçmek isteyeceksiniz. Ardından şematik bağlantınızı şu şekilde değiştirin:

şematik

bu devreyi simüle et - CircuitLab kullanılarak oluşturulan şematik

Alternatif olarak, simetri isteniyorsa, bir kristale karşı harici bir osilatör kullanabilirsiniz. Sonra her ikisi de harici saat modunda çalışabilir.


Bir kristalin öngörülebilirliğinin tüm faydalarından yararlanmak istiyorsa, bu kurulumda üst kapasitörü ayarlamak için kesin bir ihtiyaç vardır.
Asmyldof

@ Asmyldof Kesinlikle kristalin zamanlama hassasiyetine ihtiyacım var. Belki de simetrik çözüme ihtiyaç vardır? Harici bir osilatör nasıl bağlanır?
GisMofx

1
C2 = 10pF (CLKI girişi nedeniyle yaklaşık 10pF yükleme varsayarsak) ve C1 = 22pF tutarsa, değil mi?
MarkU

1
Hayır, herhangi bir harici saat kullanıyormuş gibi gelecektir.
Houston Fortney

1
@GisMofx Cevabın birleştirilmesini istediğini işaretledim, böylece diğer soruya geçilecek, böylece korunabilsin.
Passerby

3

Bu yaklaşımdaki sorun, ikinci osilatör girişine olan bağlantının o pim üzerindeki kapasitansı etkileyeceği ve frekansı biraz değiştireceği ve kristal sürücüyü azaltacağıdır. Yine de önemli olmayabilir ve salınımı önleme olasılığı çok düşüktür. Bir ürün için bunu yapmam gerektiğinde, her iki MCU için de bir kristal osilatör modülü kullandım.


2
Osilatör çıkış hattındaki biraz fazladan kapasitans, bir problem değildir. Çoğunlukla kristal üzerindeki yükü oluşturan ve aralık içinde uygun frekansı elde etmek için hemen hemen doğru olması gereken, osilatör giriş hattı olan kristalin çıkış tarafında kapasitanstır. Saati geniş bir şekilde dağıtmanız gerekiyorsa, kristalle mikroya yakın bir CMOS tampon kapısı yerleştirin.
Olin Lathrop

Ayrıca EMI için saat sinyallerini kartlar arasında yönlendirmekten kaçınmak harika bir fikirdir.
joeforker

3

Cheapo invertör çipi (0.1 $) veya özel saat üreteci (biraz daha pahalı) kullanarak osilatör oluşturabilir ve o saati her iki uC'ye de besleyebilirsiniz.

Kristalin her ikisine de bağlanması işe yaramaz (güvenilir).


2

Kullandığım PIC'ler gibi bir şey varsa, bir XTALout ve ve XTALin ile aralarında ve kapaklar arasında (belki 22pf civarında) toprağa sahip olursunuz. Birinin XTAL'ını diğerinin XTALinine bağlamayı deneyin.


İkinci osilatörü birincinin çıkışından sürmek için küçük bir seri kapasitör kullanılması önerilir.
stevenvh

1

Kristalinizden bir osilatör ve önerilen BarsMonster gibi bir invertör yapın ve bir fanout dağıtım tamponu IC girişine besleyin . Bir fanout tampon çıkışı, her MCU'nun saat girişine gider.

Hangi mikroskobu kullandığınızı bilmeden belirli bir parçayı gerçekten öneremiyorum, ancak bu filtrelerle başlamak istersiniz:

  • Tür: Fanout Tamponu (Dağıtım)
  • Devre Sayısı: 1
  • Oran - Giriş: Çıkış: 1: 2

1
3000 parçadan oluşan bir liste gerçekten kullanışlı değil. Bunlardan birini seçin ve neden iyi bir seçim olduğunu açıklayın.
stevenvh

Hangi mantık seviyelerini vb. Kullandığını bilmeden doğrudan cevaba belirli bir parçayı koymakta tereddüt ediyorum. Kısıtlamaya yardımcı olmak için bazı arama filtresi bilgilerini koyacağım. Değer için, şu anda bir TI CDCLVC1102 ile bir osilatör kullanıyorum . Görünüşe göre TXCO ile CDC3RL02 ve invertör yok.
Joe Baker
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.