Qual é o esquema para compartilhar um cristal com dois micros?


20

Como compartilho um único cristal (não um módulo oscilador completo) entre dois micros? Não há problema em conectar tudo normalmente ao primeiro micro e também conectar seu XO diretamente ao XI do segundo microcontrolador? Espero colocar os micros muito próximos no quadro.

Respostas:


17

O que fiz quando precisei compartilhar um relógio entre micros é fazer o cristal acionar o oscilador em um micro e, em seguida, usar o pino de saída do oscilador (normalmente CLKOUT ou OSCOUT) desse micro para acionar o segundo micro.

Eu esperaria problemas tentando conduzir dois osciladores do mesmo cristal, se por nenhuma outra razão a não ser que a capacitância dos longos traços de PCB necessários para ir entre os dois processadores causasse um mau funcionamento.

esquemático

simular este circuito - esquemático criado usando o CircuitLab


11
Alguns microcontroladores possuem um pino de saída de relógio separado que não está conectado ao cristal.
joeforker

2
Os processadores MSP430 podem rotear qualquer um dos relógios internos (ACLK, SMCLK ou MCLK) para fora de seus pinos de E / S. Uso a saída ACLK (32768Hz) para fornecer o relógio de backup do RTC a um dispositivo GPS durante os períodos em que sua energia principal está desligada.
uɐɪ

7

Não é exatamente isso que você deseja. Quando você usa um cristal para formar um oscilador, está usando um inversor interno do microcontrolador para acionar o cristal. Se você conectar os dois micros ao mesmo cristal, eles lutarão e não funcionarão.

Portanto, convém escolher um dos dois micros para servir como driver de cristal (configure como mostrado na seção 6.2.6 da folha de dados) e o outro micro para usar uma entrada de relógio externa (6.2.1 da folha de dados). Em seguida, altere sua conexão esquemática da seguinte maneira:

esquemático

simular este circuito - esquemático criado usando o CircuitLab

Como alternativa, se a simetria for desejada, você pode usar um oscilador externo em vez de um cristal. Então ambos poderiam operar no modo de relógio externo.


Existe uma necessidade definitiva de ajustar o capacitor superior nesta configuração, se alguém quiser todos os benefícios da previsibilidade de um cristal.
Asmyldof 27/08/2015

@ Asmyldof Eu definitivamente preciso da precisão do tempo do cristal. Talvez a solução simétrica seja necessária? Como um oscilador externo está conectado?
GisMofx 27/08/2015

11
então, se C2 = 10pF (assumindo um carregamento de 10pF devido à entrada CLKI) e mantenha C1 = 22pF, certo?
Mark27

11
Não, ele aparecerá como se estivesse usando um relógio externo.
Houston Fortney

11
@GisMofx eu o sinalizei pedindo que a resposta fosse mesclada, para que ela seja movida para a outra pergunta, para que possa ser preservada.
Transeunte

3

O problema com essa abordagem é que a conexão com a segunda entrada do oscilador afetará a capacitância naquele pino e alterará ligeiramente a frequência, além de reduzir o acionamento de cristal. Pode não importar, no entanto, e é muito improvável que evite a oscilação. Quando precisei fazer isso em um produto, usei um módulo de oscilador de cristal para ambas as MCUs.


2
Um pouco de capacitância extra na linha de saída do oscilador não é um grande problema. É principalmente a capacitância no lado de saída do cristal, que é a linha de entrada do oscilador, que forma a carga no cristal e precisa estar certa para obter a frequência adequada dentro do alcance. Se você precisar distribuir o relógio amplamente, coloque um gate CMOS próximo ao micro com o cristal.
precisa

Também é uma ótima idéia para a EMI evitar rotear sinais de relógio entre placas.
joeforker

3

Você pode construir o oscilador usando um chip inversor barato (0,1 $) ou gerador de clock especializado (um pouco mais caro) e alimentar esse relógio para ambos os uC.

Simplesmente o cristal de conexão com ambos não funcionaria (de maneira confiável).


2

Se for algo parecido com os PICs que usei, você tem um XTALout e um XTALin com o XTAL real entre eles e os limites (talvez em torno de 22pf) no chão. Tente conectar o XTALout de um ao XTALin do outro.


É recomendável usar um capacitor de série pequena para acionar o segundo oscilador a partir da saída do primeiro.
stevenvh

1

Faça um oscilador com seu cristal e um inversor como sugerido pela BarsMonster e alimente-o na entrada de um IC de buffer de distribuição de fanout . Uma saída de buffer de fanout vai para a entrada do relógio de cada MCU.

Não posso recomendar uma peça específica sem saber quais micros você está usando, mas você gostaria de começar com estes filtros:

  • Tipo: Buffer de Fanout (Distribuição)
  • Número de circuitos: 1
  • Relação - Entrada: Saída: 1: 2

11
Uma lista de 3000 peças não é realmente útil. Selecione um deles e explique por que é uma boa escolha.
Stevenvh

Hesito em colocar uma parte específica diretamente na resposta sem saber quais níveis lógicos etc. ele está usando. Colocarei algumas informações do filtro de pesquisa para ajudar a reduzi-las. Pelo que vale, atualmente estou usando um oscilador com uma TI CDCLVC1102 . Parece que você poderia usar um CDC3RL02 com um TXCO e também sem inversor.
Joe Baker
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.