Dans la vie de tous les jours on utilise la base décimale et lorsqu'on fait de la programmation de haut niveau en général on continue à travailler avec la base décimale et parfois avec la base hexadécimale. Mais lorsqu'on travaille avec de petits micro-controlleurs il vaut mieux penser base 2. Dans cette chronique je vais expliquer le pourquoi et le comment de cette affirmation.
So tiny!
Les MCU atTiny ne s'appelle pas ainsi parce qu'ils sont physiquement petit, même s'ils peuvent l'être, mais parce que les ressources dont on dispose sur ces MCU sont vraiment limitées. l'atTiny13A par exemple avec son 1KB de mémoire flash ne permet vraiment pas d'utiliser les librairies 'C' complexes. Vous programmez en 'C' pour un atTiny13a et vous voulez faire une multiplication ou une division.
Faisons le test. Voici un petit programme qui fait des lectures analogiques et fait la moyenne de 20 échantillons pour éliminer les interférences, scénario classique.
Il y a de nombreuses situations où il est judicieux de choisir des paramètres qui sont des puissances de 2 pour éviter une multiplication ou une division. C'est ce que j'appelle penser base 2. Un autre exemple est celui d'une interpolation linéaire entre 2 nombres. Au lieu de choisir un fraction décimale, on divise l'intervale en une puissance de 2. Par exemple supposons qu'on a calculer une table de sinus avec 90 valeurs stockées en mémoire flash. Soit une valeur à tous les 4 degrés. si on veut connaître la valeur au degré près on peut faire une interpolation linéaire entre les 2 valeurs.
Soit à connaître la valeur du sinus de 15 degrés:
Conclusion il faut penser en terme de base 2 lorsqu'on travaille avec de petits micro-processeurs.
Aucun commentaire:
Publier un commentaire
Remarque : Seuls les membres de ce blogue sont autorisés à publier des commentaires.