|
Routine 1-wire pour microcontroleur Freescale
Publié par marsouille le 20/12/2007 (16946 lectures)
Le constructeur MAXIM a développé un protocole baptisé "one wire" qui permet de piloter plusieurs types de composants (ADC, capteurs, mémoires,...) sur un seul fil de donnée. Ces composants peuvent être cascadés sur ce bus car ils ont tous un identifiant unique de 64 bits. ***
Grâce à ces composants, j'ai pu réaliser avec mon petit 9S08QG8 (DIL 16) une "centrale d'acquisition" mesurant la température ambiante et récupérant quatre entrées analogiques (converties sur 16 bits), le tout controlé dans le temps par une horloge temps réel qui pourra aider à tracer des graphes temporels (sur plusieurs jours par exemple). Ce qui est fort c'est qu'il me reste assez de broches I/O pour câbler un afficheur LCD ! La librairie "1wire.h" que je joins avec l'article vous permettra de faire fonctionner le protocole 1 wire avec un µC freescale. De plus, j'ai mis quelques fonctions pour dialoguer avec un DS1820 (capteur T°), un DS1990 (clé i-button), un DS2415 (Horloge RTC) et un DS2450 (ADC 4 voies). Tous étant des composants MAXIM que vous pouvez vous procurer gratuitement sur le site de maxim. Le projet, fait sous codewarrior v5, ci-joint, n'est pas un programme terminé car il s'utilise avec le debugger pour visualiser les variables mais il vous montre comment utiliser les fonctions de la librairie 1-wire. Je vous conseille vivement de faire un tour sur le site du constructeur Maxim, les notes d'application et les datasheet des composant sont très bien faites. De plus, vous verrez le choix impressionnant de composants 1-wire qui existent. http://www.maxim-ic.com/auto_info.cfm
Les commentaires appartiennent à leurs auteurs. Nous ne sommes pas responsables de leur contenu.
Auteur |
Commentaire en débat |
|
|