PASCAL
SANDREZ

Emulateur de composant 1-Wire

Le bus 1-Wire est un bus dont le protocole de communication a été développé par Dallas Semiconducteur pour communiquer avec divers composants "esclaves" sur un même bus. Chaque composant possède son propre numéro de série unique lui permettant d'être identifié par le maitre. Cela permet d'être sûr de ne pas avoir de collision avec un autre périphérique mais c'est aussi utilisé pour rendre des produits infalsifiables des produits comme des consommables d'impression. Sur un PIC 12F1822 j'ai implémenté tout le protocole de communication décrit par Dallas Semiconducteur permettant de simuler un DS2431, une mémoire EEPROM. Après tout ce composant n'est qu'une EEPROM avec un peu de logique autour.

Le lecteur de bus 1-Wire et deux esclaves branchés sur le bus, un DS2431 et un DS2431 émulé à l'aide d'un PIC.
Le lecteur de bus 1-Wire et deux esclaves branchés sur le bus, un DS2431 et un DS2431 émulé à l'aide d'un PIC.

Les composants 1-Wire ont souvent qu'une seule broche en plus de la masse. Cette broche permet d'alimenter le composant ainsi que de communiquer, il fallait donc partir de cette contrainte là aussi. J'utilise donc une diode et une capacité pour stocker l'énergie nécessaire au fonctionnement du PIC. La capacité est taillée pour stocker suffisamment d'énergie lorsque la broche est à l'état bas et le PIC est configuré pour consommer un minimum de courant. J'utilise l'EEPROM du PIC pour stocker les données, le PIC se comporte exactement comme le composant DS2431 donc il programme l'EEPROM exactement de la même façon mais cela permet des choses plus avancée comme la protection de certaines zones ou la personnalisation de l'unique ID.

Avec un PIC, une diode, une capacité et un peu de programmation, j'ai pu faire mes propres fonctions compatibles 1-Wire ou bien émuler complètement les composants 1-Wire standard.