Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.sci.electronics > #260910 > unrolled thread

10MHz runterteilen und zählen

Started byRalph Aichinger <ra@pi.h5.or.at>
First post2019-07-30 10:07 +0200
Last post2019-08-01 18:41 +0200
Articles 11 — 6 participants

Back to article view | Back to de.sci.electronics


Contents

  10MHz runterteilen und zählen Ralph Aichinger <ra@pi.h5.or.at> - 2019-07-30 10:07 +0200
    Re: 10MHz runterteilen und zählen Ole Jansen <remove.this.kaspernasebaer@gmx.de> - 2019-07-30 10:46 +0200
    Re: 10MHz runterteilen und zählen "Stefan U." <stefan.u.news108@gmx.de> - 2019-07-30 11:42 +0200
      Re: 10MHz runterteilen und zählen Ralph Aichinger <ra@pi.h5.or.at> - 2019-07-30 11:55 +0200
        Re: 10MHz runterteilen und zählen Stefan <df9bi@arcor.de> - 2019-07-31 19:42 +0200
          Re: 10MHz runterteilen und zählen Gerrit Heitsch <gerrit@laosinh.s.bawue.de> - 2019-07-31 19:49 +0200
            Re: 10MHz runterteilen und zählen Stefan <df9bi@arcor.de> - 2019-08-01 17:38 +0200
          Re: 10MHz runterteilen und zählen "Stefan U." <stefan.u.news108@gmx.de> - 2019-07-31 22:16 +0200
            Re: 10MHz runterteilen und zählen Stefan <df9bi@arcor.de> - 2019-08-01 17:35 +0200
    Re: 10MHz runterteilen und zählen Uwe Bonnes <bon@hertz.ikp.physik.tu-darmstadt.de> - 2019-08-01 16:19 +0000
      Re: 10MHz runterteilen und zählen Gerrit Heitsch <gerrit@laosinh.s.bawue.de> - 2019-08-01 18:41 +0200

#260910 — 10MHz runterteilen und zählen

FromRalph Aichinger <ra@pi.h5.or.at>
Date2019-07-30 10:07 +0200
Subject10MHz runterteilen und zählen
Message-ID<qhotru$cnb$1@pi.h5.or.at>
Ich hab mir (siehe anderer Thread) jetzt ein Rubidium-Normal
(für 150,-) bestellt, und falls das dann auch funktioniert wenn
es ankommt, so sehe ich mehrere Möglichkeiten daraus eine Uhr
zu bauen. Wenn ein funktionierendes PPS-Signal rauskommt, so
kann man das (eventuell nach etwas nachbereitung, die Pulse
sind sehr kurz, angeblich) direkt in einen NTP-Server mit PPS-
Eingang füttern und den Offset zu z.B. zur GPS-Zeit festlegen
(weil das PPS-Signal des Normals natürlich keinen definierten
Referenzzeitpunkt hat).

Von der time-Nuts-Liste gibt es fürs runterteilen auch einen 
PIC, damit könnte man das Signal direkt auf PPS bringen:

http://leapsecond.com/pic/

Eine andere Variante wäre, die 10MHz direkt zu zählen und die
Uhrzeit daraus selbst zu errechnen (nach Stellen per GPS oder so).
Der Code von diesen Teiler-PICs ist zwar sicher elegant und
löst seine Aufgabe perfekt, aber er zählt eben noch keine Minuten
und Stunden mit, d.h. ich brauche zur "Uhr" zumindest noch
eine andere Zeitquelle, die unter einer Sekunde Abweichung hat.

Ein Arduino wird eher nicht in der Lage sein, das Signal
direkt zu zählen[1], aber wenn ich z.B. die 10MHz zuerst um den
Faktor 10 oder 100 runterteile (mit so einem PIC oder ein bis
zwei 74HC390 oder sowas) dann müßte ich doch auch am Arduino
bequem mitzählen und rechnen können, und daraus z.B. ein Zeitsignal
im NMEA-Format generieren, was man einem NTP-Server zur Verfügung
stellen kann.

Klingt das alles halbwegs vernünftig, oder würdet ihr das ganz 
anders machen, oder gibt es da Fallstricke?

TIA
/ralph -- aus Interesse hab ich gefragt was ein neues Rubidium-
          Normal kostet: Ca. 1500 Euro

[1] das nackte Zählen vielleicht schon, aber wenn man nebenher
noch Stunden, Minuten, Datum etc. errechnen will und NMEA formatieren
soll, dann wird es vermutlich schwierig.
-- 
-----------------------------------------------------------------------------
                                                              https://aisg.at
                                                   ausserirdische sind gesund

[toc] | [next] | [standalone]


#260913

FromOle Jansen <remove.this.kaspernasebaer@gmx.de>
Date2019-07-30 10:46 +0200
Message-ID<gqaefeFa7moU1@mid.individual.net>
In reply to#260910
Am 30.07.2019 um 10:07 schrieb Ralph Aichinger:
> Ich hab mir (siehe anderer Thread) jetzt ein Rubidium-Normal
> (für 150,-) bestellt, und falls das dann auch funktioniert wenn
> es ankommt, so sehe ich mehrere Möglichkeiten daraus eine Uhr
> zu bauen. 

Für eine Zeitmessanlage habe ich mal einen 8057
Prozessor genommen und weil der mit 1MHz zu lahm
war um von dem 10MHz OXCO direkt bespasst zu werden
habe ich die "Uhr" als CMOS 4017 Grab gebaut. ;-)

O.J.

[toc] | [prev] | [next] | [standalone]


#260916

From"Stefan U." <stefan.u.news108@gmx.de>
Date2019-07-30 11:42 +0200
Message-ID<gqahnnFattgU1@mid.individual.net>
In reply to#260910
Am 30.07.2019 um 10:07 schrieb Ralph Aichinger:

> Ein Arduino wird eher nicht in der Lage sein, das Signal
> direkt zu zählen[1],
wieso nicht?

die 10Mhz an den CLK Eingang, 16 bit Timer mit Prescaler (64) im
Count-To-Compare (15624?) Modus auf 100ms runterteilen, im CTC interrupt
dann per Software weiterzählen...

also so würde ich das mit nem ATMega machen, wie sich das mit Arduino
drumrum verhält, weiß ich nicht

Gruß
Stefan.

[toc] | [prev] | [next] | [standalone]


#260919

FromRalph Aichinger <ra@pi.h5.or.at>
Date2019-07-30 11:55 +0200
Message-ID<qhp46l$j0v$1@pi.h5.or.at>
In reply to#260916
Stefan U. <stefan.u.news108@gmx.de> wrote:
> die 10Mhz an den CLK Eingang, 16 bit Timer mit Prescaler (64) im
> Count-To-Compare (15624?) Modus auf 100ms runterteilen, im CTC interrupt
> dann per Software weiterzählen...
> 
> also so würde ich das mit nem ATMega machen, wie sich das mit Arduino
> drumrum verhält, weiß ich nicht

Hm, danke. Das sind haufenweise Begriffe mit denen ich weitergoogeln
kann. Ich vermute, daß ein Großteil davon was mit dem rohen
Atmel geht auch mit dem Arduino geht, schließlich ist das ja nur
ein C-Compiler mit ein paar Behübschungen.

/ralph
-- 
-----------------------------------------------------------------------------
                                                              https://aisg.at
                                                   ausserirdische sind gesund

[toc] | [prev] | [next] | [standalone]


#261030

FromStefan <df9bi@arcor.de>
Date2019-07-31 19:42 +0200
Message-ID<qhsjut$4bd$1@news.albasani.net>
In reply to#260919
Am 30.07.2019 um 11:55 schrieb Ralph Aichinger:
> Stefan U. <stefan.u.news108@gmx.de> wrote:
>> die 10Mhz an den CLK Eingang, 16 bit Timer mit Prescaler (64) im
>> Count-To-Compare (15624?) Modus auf 100ms runterteilen, im CTC interrupt
>> dann per Software weiterzählen...
>>
>> also so würde ich das mit nem ATMega machen, wie sich das mit Arduino
>> drumrum verhält, weiß ich nicht
> 
> Hm, danke. Das sind haufenweise Begriffe mit denen ich weitergoogeln
> kann. Ich vermute, daß ein Großteil davon was mit dem rohen
> Atmel geht auch mit dem Arduino geht, schließlich ist das ja nur
> ein C-Compiler mit ein paar Behübschungen.
> 
> /ralph
> 

Man könnte auch die 10 MHz aus dem Rubidium-Normal direkt als Clock für 
den Prozessor nehmen. Das würde sogar mit nem 8051 gehen.

Dann einen Timer der durch den Prozessorclock getaktet wird.

[toc] | [prev] | [next] | [standalone]


#261031

FromGerrit Heitsch <gerrit@laosinh.s.bawue.de>
Date2019-07-31 19:49 +0200
Message-ID<qhskc0$qso$1@news.bawue.net>
In reply to#261030
On 7/31/19 7:42 PM, Stefan wrote:
> Am 30.07.2019 um 11:55 schrieb Ralph Aichinger:
>> Stefan U. <stefan.u.news108@gmx.de> wrote:
>>> die 10Mhz an den CLK Eingang, 16 bit Timer mit Prescaler (64) im
>>> Count-To-Compare (15624?) Modus auf 100ms runterteilen, im CTC interrupt
>>> dann per Software weiterzählen...
>>>
>>> also so würde ich das mit nem ATMega machen, wie sich das mit Arduino
>>> drumrum verhält, weiß ich nicht
>>
>> Hm, danke. Das sind haufenweise Begriffe mit denen ich weitergoogeln
>> kann. Ich vermute, daß ein Großteil davon was mit dem rohen
>> Atmel geht auch mit dem Arduino geht, schließlich ist das ja nur
>> ein C-Compiler mit ein paar Behübschungen.
>>
>> /ralph
>>
> 
> Man könnte auch die 10 MHz aus dem Rubidium-Normal direkt als Clock für 
> den Prozessor nehmen. Das würde sogar mit nem 8051 gehen.

Wobei der 8051 den eingehenden Takt doch erstmal teilt. War das nicht 
ein Teiler von 12?

  Gerrit

[toc] | [prev] | [next] | [standalone]


#261068

FromStefan <df9bi@arcor.de>
Date2019-08-01 17:38 +0200
Message-ID<qhv10v$p5u$2@news.albasani.net>
In reply to#261031
Am 31.07.2019 um 19:49 schrieb Gerrit Heitsch:
> On 7/31/19 7:42 PM, Stefan wrote:
>> Am 30.07.2019 um 11:55 schrieb Ralph Aichinger:
>>> Stefan U. <stefan.u.news108@gmx.de> wrote:
>>>> die 10Mhz an den CLK Eingang, 16 bit Timer mit Prescaler (64) im
>>>> Count-To-Compare (15624?) Modus auf 100ms runterteilen, im CTC 
>>>> interrupt
>>>> dann per Software weiterzählen...
>>>>
>>>> also so würde ich das mit nem ATMega machen, wie sich das mit Arduino
>>>> drumrum verhält, weiß ich nicht
>>>
>>> Hm, danke. Das sind haufenweise Begriffe mit denen ich weitergoogeln
>>> kann. Ich vermute, daß ein Großteil davon was mit dem rohen
>>> Atmel geht auch mit dem Arduino geht, schließlich ist das ja nur
>>> ein C-Compiler mit ein paar Behübschungen.
>>>
>>> /ralph
>>>
>>
>> Man könnte auch die 10 MHz aus dem Rubidium-Normal direkt als Clock 
>> für den Prozessor nehmen. Das würde sogar mit nem 8051 gehen.
> 
> Wobei der 8051 den eingehenden Takt doch erstmal teilt. War das nicht 
> ein Teiler von 12?

Ich glaub schon. Der übliche Quarz hatte 11,0592 MHz. Damit konnte man 
dann auch die üblichen Baudraten einstellen. Der 80535 und 80537 hatte 
dafür einen extra counter, da konnte man auch einen 12 MHz Quarz nehmen.

Jedenfalls könnte man die Dinger mit 10 MHz takten. Macht aber heute 
wohl keiner mehr.

[toc] | [prev] | [next] | [standalone]


#261044

From"Stefan U." <stefan.u.news108@gmx.de>
Date2019-07-31 22:16 +0200
Message-ID<gqeb86F5dk0U1@mid.individual.net>
In reply to#261030
Am 31.07.2019 um 19:42 schrieb Stefan:
> Man könnte auch die 10 MHz aus dem Rubidium-Normal direkt als Clock für
> den Prozessor nehmen.

das meinte ich mit "an den CLK-Eingang"

Gruß
Stefan.

[toc] | [prev] | [next] | [standalone]


#261067

FromStefan <df9bi@arcor.de>
Date2019-08-01 17:35 +0200
Message-ID<qhv0sc$p5u$1@news.albasani.net>
In reply to#261044
Am 31.07.2019 um 22:16 schrieb Stefan U.:
> Am 31.07.2019 um 19:42 schrieb Stefan:
>> Man könnte auch die 10 MHz aus dem Rubidium-Normal direkt als Clock für
>> den Prozessor nehmen.
> 
> das meinte ich mit "an den CLK-Eingang"
> 
> Gruß
> Stefan.
> 
> 

ich dachte, du meintest den Clock Eingang eines Counters

[toc] | [prev] | [next] | [standalone]


#261070

FromUwe Bonnes <bon@hertz.ikp.physik.tu-darmstadt.de>
Date2019-08-01 16:19 +0000
Message-ID<gqghp9FjgcjU1@mid.individual.net>
In reply to#260910
Ralph Aichinger <ra@pi.h5.or.at> wrote:
 
> Ein Arduino wird eher nicht in der Lage sein, das Signal
> direkt zu zählen[1], aber wenn ich z.B. die 10MHz zuerst um den
> Faktor 10 oder 100 runterteile (mit so einem PIC oder ein bis
> zwei 74HC390 oder sowas) dann müßte ich doch auch am Arduino
> bequem mitzählen und rechnen können, und daraus z.B. ein Zeitsignal
> im NMEA-Format generieren, was man einem NTP-Server zur Verfügung
> stellen kann.
> 
> Klingt das alles halbwegs vernünftig, oder würdet ihr das ganz 
> anders machen, oder gibt es da Fallstricke?
Warum mit Geriatronik?

Nimm eine Cortex CPU mit ausreichend Takt und Du kannst die Pulse mit
einem Timer Zaehlen.... 
-- 
Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 1623569 ------- Fax. 06151 1623305 ---------

[toc] | [prev] | [next] | [standalone]


#261071

FromGerrit Heitsch <gerrit@laosinh.s.bawue.de>
Date2019-08-01 18:41 +0200
Message-ID<qhv4oh$ttt$1@news.bawue.net>
In reply to#261070
On 8/1/19 6:19 PM, Uwe Bonnes wrote:
> Ralph Aichinger <ra@pi.h5.or.at> wrote:
>   
>> Ein Arduino wird eher nicht in der Lage sein, das Signal
>> direkt zu zählen[1], aber wenn ich z.B. die 10MHz zuerst um den
>> Faktor 10 oder 100 runterteile (mit so einem PIC oder ein bis
>> zwei 74HC390 oder sowas) dann müßte ich doch auch am Arduino
>> bequem mitzählen und rechnen können, und daraus z.B. ein Zeitsignal
>> im NMEA-Format generieren, was man einem NTP-Server zur Verfügung
>> stellen kann.
>>
>> Klingt das alles halbwegs vernünftig, oder würdet ihr das ganz
>> anders machen, oder gibt es da Fallstricke?
> Warum mit Geriatronik?

Warum nicht? Genausogut kann man fragen warum man heutzutage immer alles 
in Software machen muss wenn eine spezielle Anwendung auch in Hardware geht.


> Nimm eine Cortex CPU mit ausreichend Takt und Du kannst die Pulse mit
> einem Timer Zaehlen....

Setzt voraus, daß er diese CPU kennt und programmieren kann. Ist das 
nicht der Fall und er muss sie erst lernen aber kennt den Atmel ist er 
mit letzterem besser bedient.

Wenn ich aus den 10 MHz einen Sekundenpuls machen will würde ich gar 
keine CPU nehmen sondern entsprechend viele Teiler durch 10 
hintereinanderschalten.

  Gerrit

[toc] | [prev] | [standalone]


Back to top | Article view | de.sci.electronics


csiph-web