division d'un signal 10 mhz par 1000

division d'un signal 10 mhz par 1000 pour faire un asservissement avec un GPS j'ai besoin de diviser le 10 mhz par 1000 pour avoir du 10 khz je sais le faire avec plein de 74xx390 mais je cherche a mettre un arduino tout petit qui a deja fait cela ? merci

Bonsoir

Un microcontrolleur n'est pas très bien placé pour cette opération, ça reste à mon avis du ressort de la logique câblée.

10 milliHertz (mh), 10 MegaHertz (MH)?

en effet, si le signal à diviser a une fréquence de 10 milli Hertz (mHz) une carte Arduino pourra se charger de la division de la férquence par par 1000 !!

Un microcontrolleur n'est pas très bien placé pour cette opération, ça reste à mon avis du ressort de la logique câblée.

Pas d'accord. Je parle pour les Uno nano que je connais bien, je suppose que c'est pareil pour les autres micros, en particulier pour celui de notre ami (qui a oublié de dire quelle carte il utilise) On peut utiliser un timer 16 bits réglé à 500 et qui va déliver une interruption toutes les 500 périodes. cette interruption peut changer une pins qui ca donc avoir une période de 1000 période d'entrée. Pour le timer, on peut prendre l'horloge interne mais aussi une horloge externe. Par exemple pour l'Uno, l'horloge externe est sur la pin T1, voir: |500x203

en effet, si le signal à diviser a une fréquence de 10 milli Hertz (mHz) une carte Arduino poiurra se cahrger de la division de la férquence par par 1000 !!

10mHz, 10Hz, 10kHz ou 10MHz, je suppose que cela doit passer, le timer fonctionne bien à 16MHz. Je ne vois pas la limite maxi, mais @F1CHF peut chercher!

timer1.gif|566x230

Le vieil électronicien retraité que je suis trouve plus simple et logique de confier ce travail à un circuit intégré qui fait ça ‘naturellement’, un circuit ‘étudié pour’, que je trouve ‘mieux placé’ (c’est mon choix et je concède une certaine nostalgie des PAL, GAL, CPLD et FPGA…bref de la logique câblée)

A 10 MHz il y a sans doute effectivement quelque chose à faire d’un compteur/timer d’AVR, de Pic… et, à son avantage , on peut espérer lui faire faire autre chose en plus. On peut même envisager de loger ça dans un petit Tiny85. On voit des chose étonnantes faite avec un minuscule PIC10F à 6 broches…

Le vieil électronicien retraité que je suis trouve plus simple et logique de confier ce travail à un circuit intégré qui fait ça 'naturellement', un circuit 'étudié pour' , que je trouve 'mieux placé'

Le vieil électronicien n'est pas tout seul.

3 diviseurs par 10, Cmos ou 74HC, en cascade feront le travail avec une consommation moindre d'une carte micro. À moins qu'il n'existe des diviseurs direct par 100 ou par 1000.

@F1CHF Le [u]nom[/u] des unités s'écrit toujours avec une lettre minuscule (hertz, volt, mètre, etc). On parle de Monsieur Ampère mais l'unité s'écrit ampère. Le symbole commence assez souvent par une majuscule mais il y a des exceptions, ce n'est pas toujours limpide. En cas de doute on trouve assez facilement des anti-sèches sur la toile.

Les multiplicateurs supérieurs à 1 s'écrivent avec une majuscule Les multiplicateurs inférieurs à 1 s'écrivent avec une minuscule

Un million de hertz s'écrit 1 MHz, un millième de hertz s'écrit 1 mHz

cette interruption peut changer une pins qui ca donc avoir une période de 1000 période d'entrée.

En fait c'est plus simple si on veut récupérer le signal, il suffit d'utiliser le timer en mode fastPWM...

Les multiplicateurs supérieurs à 1 s'écrivent avec une majuscule

Comme 10 Km? ou comme 10 km? voir wikipédia, Larousse :grinning: Pareil pour déca- et hecto- et kilo-...

10 milliHertz (mh), 10 MegaHertz (MH)?

Bien la correction, je pencherai plutôt pour: 10 milliHertz (mHz), 10 MegaHertz (MHz)? 10MH veut dire dix méga henry

Yes, mHz, MHz.

Tiré de la datasheet de l'ATmega

An external clock source applied to the T1/T0 pin can be used as Timer/Counter clock (clk T1 /clk T0 ). The T1/T0 pin is sampled once every system clock cycle by the pin synchronization logic.

Each half period of the external clock applied must be longer than one system clock cycle to ensure correct sampling. The external clock must be guaranteed to have less than half the sys- tem clock frequency (f ExtClk < f clk_I/O /2) given a 50/50% duty cycle.

La fréquence du signal en entrée d'horloge externe doit être inférieur à sysclk/2 alors avec une horloge système à 16MHz on est limité à 8MHz

Bien vu, En plus c'est parfaitement logique les données devant être resynchronisées avec l'horloge locale.

Alors il existe une autre solution: utiliser l'horloge 10MHz comme horloge système.

Si on parle de diviser par 1000 un signal de 10 mHz (milli Hertz), ça nous amène à un tic par jour (en gros)... :sleeping: Faut pas le louper ! :D

vileroi: Alors il existe une autre solution: utiliser l'horloge 10MHz comme horloge système.

comment ?

jouer avec les fusibles pour passer en horloge externe et injecter en X1 le signal à 10MHz aprrès avoir coupé la piste reliant X2 au résonateur ou au quartz 16MHz |500x161..... ... ensuite s'accomoder de l'impact de cette modification sur diverses fonctionnalités (débit du port série...) ou mettre en place des compensations..... Pour 10 MHz les diviseurs câblés gardent ma préférence !

externe.png|815x264