Byte et word

Dernière mise à jour le 09/02/2014

--------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Présentation

L'exemple décrit ici montre comment réaliser l'acquisition d'une tension analogique et de faire la différence entre la variable byte et la variable word. A l’aide d’un PIC12F675 nous allons voir la différence sur le byte et sur word.

--------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Schéma 001A

Schema

  • Utilisation de la variable byte 

1 byte = taille 8 bits, non signé (donc valeurs de 0 à 255) ce qui correspond à 2^8=256. 

Dans ce montage nous utilisons un potentiomètre RV1 qui fera varier la tension entre 0 et 5V. la variable utilisé By (Byte), cette variable qui va être lu va pendre 256 valeurs (le « 0 » est compté) nous comptons bien de 0 à 255. Il suffit maintenant de procédé de la façon suivante, le fameux prduit en croix. 

Pour 1,25V donne (1,25*255)/5=63,75 (arrondi à 64).

Pour 2,5V donne (2,5*255)/5=127,5 (arrondi à 128).

Etc… 

Résultats

Pour 0V 0 aucune leds allumées
Pour 1,25V 61 allumer led D1
Pour 2,5V 128 allumer led D2
Pour 3,75V 191 allumer led D3
Pour 5V 255 allumer led D4

 

 

 

 

Jusque là rien de bien compliqué, alors fonçons tête dans le guidon et flashons le code dans notre PIC 12F675… !! Et maintenant que constatez-vous ? Rien ne fonctionne comme prévu enfin les leds s’allument mais n’importe comment. Pourtant je confirme vos calculs sont juste, mais une question le PIC 12F675 il compte jusqu’à combien ? 

Si on prend la datasheet du PIC 12F675, et que nous lisons le chapitre qui concerne les tensions analogique numérique (CAN), il est stipulé :

Can datasheet 1

« The analog-to-digital converter (A/D) allows conversion of an analog input signal to a 10-bit binary representation of that signal.” 

Tradution en français: 

« Le convertisseur analogique-numérique (A/D) permet la conversion d'un signal d'entrée analogique à une représentation binaire de 10 bit de ce signal.».

  • Utilisation de la variable word

1 word = taille 16 bits, non signé (donc valeurs de 0 à 65535) 

Nous avons vue que précédement le byte allais jusqu'à 255, et que notre PIC utilise 10 bits, en définitive il compte jusqu'à 1023 soit 2^10=1024 (on compte le "0"). la mot word permet de compter jusqu'à 65535, nous somme sauver car les 16 bits suffisent largement, seulement 10 bits sont utilisés... Il faut donc revoir nos calculs, et les nouveux calculs nous donnes les valeurs suivantes:

Pour 1,25V donne (1,25*1023)/5=255,75 (arrondi à 256).

Pour 2,5V donne (2,5*1023)/5=511,5 (arrondi à 512).

Etc… 

Résultats 

Pour 0V 0 aucune leds allumées
Pour 1,25V 256 allumer led D1
Pour 2,5V 512 allumer led D2
Pour 3,75V 767 allumer led D3
Pour 5V 1023 allumer led D4

 

 

 

  

Cette fois-ci le compte est bon!!

Créer un site gratuit avec e-monsite - Signaler un contenu illicite sur ce site