MathLvl
Question transversaleMathsSIInformation et commande numérique

Comment un microcontrôleur cadencé à 16 MHz peut-il produire exactement une impulsion par seconde ?

L'horloge de 16 MHz est divisée par un prédiviseur (256) puis par un compteur : 16 000 000 / 256 = 62 500 impulsions par seconde. En comptant jusqu'à 62 500, on obtient exactement 1 Hz. Le choix revient à écrire 16 × 10⁶ comme un produit adapté aux tailles possibles du compteur et du prédiviseur.

Grand oral session 2027 : exposé de 10 minutes debout, puis 10 minutes d'échange, sans calculatrice. Plan prévu pour 9,5 min.

Pourquoi cette question : un modèle d'introduction

Le jury attend que vous expliquiez pourquoi vous avez choisi la question. Inspirez-vous de ce modèle, mais racontez votre propre parcours.

En programmant une carte Arduino en sciences de l'ingénieur, j'ai voulu faire clignoter une LED exactement une fois par seconde sans utiliser de fonction toute faite. J'ai découvert les temporisateurs (« timers »), qui divisent la fréquence de l'horloge. Trouver les bons réglages m'a ramené aux divisions euclidiennes et aux décompositions en facteurs.

L'enjeu et les notions du programme

Décomposer une fréquence en produit de facteurs compatibles avec des contraintes matérielles, par la division euclidienne et les puissances de 2.

Mathématiques

  • Division euclidienne, diviseurs, décomposition en facteurs premiers (seconde)
  • Puissances de 2 (seconde)
  • Inverse : fréquence et période (seconde)

Sciences de l'ingénieur

  • Microcontrôleur : horloge, temporisateur, interruption (terminale)
  • Programmation d'un système embarqué (terminale)

Le plan de l'exposé en 9,5 min

  1. 1. Introduction

    1 min

    L'horloge d'un microcontrôleur bat 16 millions de fois par seconde. Un temporisateur compte ces battements et déclenche une action quand il atteint une valeur choisie. Problématique : comment régler le temporisateur pour obtenir exactement 1 Hz ?

  2. 2. Mathématiques : décomposer 16 millions

    4 min

    Le temporisateur divise d'abord la fréquence par un prédiviseur P, choisi parmi 1, 8, 64, 256 ou 1 024, puis compte jusqu'à une valeur N, limitée par la taille du compteur (2¹⁶=65 536 pour 16 bits). La fréquence obtenue est 16×10⁶/(P× N).

    Pour 1 Hz, il faut P× N=16×10⁶. Décomposition : 16×10⁶=2⁴×2⁶×5⁶=2¹⁰×5⁶. Avec P=256=2⁸ : N=16×10⁶/256=62 500=2²×5⁶, qui tient sur 16 bits. Avec P=1 024=2¹⁰ : N=5⁶=15 625, qui convient aussi.

    Avec P=64 : N=250 000, trop grand pour 16 bits. Avec un compteur 8 bits (maximum 256), aucune combinaison ne donne exactement 1 Hz : on compte alors plusieurs débordements dans le programme.

    Pour une fréquence comme 7 Hz, 16×10⁶/7 n'est pas entier : on obtient seulement une approximation, avec une erreur relative de l'ordre de 1/N.

  3. 3. SI : interruption et précision

    3 min

    Quand le compteur atteint N, il déclenche une interruption : le programme exécute une courte fonction (changer l'état de la LED) puis reprend. La précision dépend de celle du quartz : à 20 millionièmes près, l'horloge dérive d'environ 1,7 s par jour.

    Les temporisateurs servent aussi à produire les signaux MLI des moteurs, à mesurer des durées (capteurs à ultrasons) ou à cadencer un asservissement numérique. Le choix de P est un compromis : un petit P donne une meilleure résolution, un grand P permet des durées plus longues.

  4. 4. Conclusion

    1,5 min

    En écrivant 16×10⁶=256×62 500, on obtient exactement 1 Hz avec un prédiviseur de 256 et un compteur jusqu'à 62 500. La décomposition en facteurs premiers guide le réglage des temporisateurs. J'ouvre sur les horloges atomiques, qui fournissent la référence de temps la plus précise.

Ce que j'écris au tableau

Pas de calculatrice ni de support numérique : un calcul clé écrit au tableau rend l'exposé concret et montre la solidité des connaissances.

f=16×10⁶/(P× N) 16×10⁶=2¹⁰×5⁶
P=256: N=62 500 P=1 024: N=15 625 P=64: N=250 000>65 536 ( impossible )

Conclusion : la réponse à la question

Régler un temporisateur, c'est factoriser une fréquence en produits compatibles avec le matériel. Les mathématiques de la divisibilité rendent le temps programmable.

Les questions probables du jury

Pendant les 10 minutesd'échange, le jury vous fait préciser et approfondir, sur tout le programme de vos spécialités en lien avec la question.

Quelle est la période de l'horloge à 16 MHz ?

1/16×10⁶=62,5 ns.

Quels réglages pour 10 Hz avec P = 256 ?

N = 6 250.

Décomposez 62 500 en facteurs premiers.

2²×5⁶.

Combien de valeurs compte un compteur 16 bits ?

2¹⁶=65 536.

De combien dérive une horloge précise à 20 × 10⁻⁶ en un jour ?

86 400×2×10⁻⁵≈1,7 s.

Les pièges qui coûtent des points

  • Oublier la limite de taille du compteur.
  • Confondre fréquence et période.
  • Croire que toute fréquence est atteignable exactement.

Revoir les notions

Autres questions : information et commande numérique

Toutes les questions maths-sciences de l'ingénieur →

Préparer l'oral, pas seulement le contenu

Gestion des 20 minutes de préparation, usage du tableau, posture debout, réponses au jury : la méthode complète, conforme aux règles de la session 2027.

Méthode : traiter une question de Grand oral →