Re: Modification cafetière SL2010 [Was: Re: [LA-discussions] Re: Accès à votre espace exposant Solutions Linux / Open Source]

[ Thread Index | Date Index | More linuxarverne.org/discussions Archives ]




Le 25 décembre 2009 22:50, Romain Tartière <romain@xxxxxxxxxxxx> a écrit :
On Fri, Dec 25, 2009 at 02:32:24PM +0100, Alexandre Rault wrote:
> Le 25 décembre 2009 11:50, Romain Tartière <romain@xxxxxxxxxxxx> a écrit :
>
> En résumé c'est ça :
> 4 lignes GPIO sont facilement accessibles (
> http://www.lefinnois.net/wp/index.php/2007/04/27/gpios-et-la-fonera/ )
> Les condensateurs de ligne sont retirés (les datas aiment pas trop)
> les 4 GPIO + masse + 5VDC + 3.3VDC sont sortis sur une nappe.
> J'ai ensuite plusieurs platines que j'ai fait gravé
> 1 carte buffer pour la version '4 GPIO = 1 bus'
> 1 carte décodeur I2C <=> 8 x I/O avec adresse sélectionnable par jumper
> (PCF8574 de mémoire)
> 1 carte 4 x output 'basse tension' par optocoupleur
> 1 carte 4 x output '220V' par optocoupleur + triac
> 1 carte 4 x input par optocoupleurs
>
> J'ai une fonera dédiée pour cet usage, au pire j'en ai encore 2 autres
> d'avance :D

Oki, donc si je suis bien, on a une cartes I²C avec deux fils pour
communiquer en I²C avec 8 I/O générique que l'on peut relier à la
fonera, ce qui fait 6 bus I²C potentiels (un bus I²c sur lequel on a une
carte 8 I/O (4 bus) + les deux GPIO non utilisés) ... Ou, plus
sérieusement, on a 10 I/O sur lesquelles brancher les autre cartes.

L'idée c'est donc d'avoir une abstraction pour pouvoir piloter les 10
I/O de manière unifiée et d'avoir en plus accès à tout autre
périphérique I²C sur le bus ?

Romain

--

Non, ce n'est pas ce mode de fonctionnement en utilisation 'classique'.
Ce que tu décris revient à faire du multiplexage, qui est possible, mais ce n'est pas le but ici.
Pour faire synthétique, sur le bus I²C on branche en parallèle des composants, le cas standard, un maitre (la fonera pour nous) et des esclaves.
Chaque composant à une adresse, et le maitre dialogue en interrogeant les esclaves.
La carte 8 I/O est une carte esclave, chaque ligne I/O est au niveau haut (collecteur ouvert) au départ, sur ces lignes, on met une résistance de polarisation, par exemple 10Kohms relié au +5V..
Dans le registre, on peut lire l'état de chaque porte, 1 = ligne ouverte (5V), 0 = masse
Si l'on écrit dans ce registre, on force la ligne au niveau bas, c'est la manière de faire des sorties. Niveau 1 = ligne ouverte (+5V), niveau 0 = ligne fermée (0V)
Subtilité, une sortie, si elle est mise au niveau logique 1, peut servir d'entrée à la lecture suivante, selon si elle est restée à 1 ou passée à 0 (mais attention avec ce qui est branché derrière, risque pour le décodeur)

Ça, c'était pour le PCF8574 , on trouve d'autres types de composants en I²C, tel que capteur de température, écrans LCD 2x16, mélangeur de son, tuner de récéption TV....

doc du PCF8574 : http://www.aurel32.net/elec/pcf8574.pdf
plein d'infos sur le net : http://www.google.com/search?source=ig&hl=fr&rlz=1G1GGLQ_FRFR259&=&q=composants+I2C&btnG=Recherche+Google&meta=lr%3D

Alex R.


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/