Tout les circuits intégrés, dont je suis tombé jusqu'à présent, pour augmenter la capacité maximale, doivent être installés sur les deux côtés de la communication I2C (sur le PIC et sur le Driver). Finalement, j'ai trouvé ce site internet. Cette compagnie, sous le nom de Hendon Semiconducteur, se spécialise dans la conception de buffers i2c.
Le IES5501 semble rencontrer les spécifications demandées. Cependant, je ne sais toujours pas s'il faut l'installer des deux côté de la communication.
Pour remédier au problème, j'ai envoyé un message électronique à la compagnie pour être sur que ce chip est bien celui que je cherche.
J'ai reçu une réponse très complète qui vient solutionner le problème.
Il m'a indiqué que ce n'est pas conseiller d'utiliser un protocole i2c dans ce genre de situation, mais que c'était réalisable.
Hi,
I'm a student at the university of Sherbrooke (Canada Quebec). Me and my team are doing a School project. We are doing a dancefloor (12 x 12 ft.) with 144 separated tiles. we're using 36 I2C LEDs Drivers. Like this:http://tiny.cc/2mepu
I use a PIC controler which I made six I2C BUS using the I/O. The I/O only have 50 pf capacitance.
I want to use IES5501 chip to solve this problem. My question is: with this integrated circuit, do I need to use a chip on both side of the communication.
One on each I2C bus and an another on every LED Driver?
Thank you!!
Alex (learning english)
You can use the IES5501 to solve your problem when your problem is that the ports of the PIC controller are allowed only 50 pF and the wiring that is 12 ft long has a much larger capacitance.
The capacitance of the wiring depends on the type of wire that you use. Two cables that we suggest are a) Flat 4-core telephone wire - if your wired phones use that for connection or b) communication cables as used for the LAN/Ethernet connection to a PC. They are called Cat5e or Cat6 cables - usually have a blue covering.
If you use communication cables you should send each of the I2C signals (SDA and SCL)on separate cable pairs and for each cable pair connect SCL on one wire with ground on the other, and then SDA on one wire and ground on the other. If you use the telephone wire, which has 4 wires in a straight line like a ribbon cable, make the two inside wires ground and the use the outer two wires for the SCL and SDA signals. Both types of cable will have about 50 pF / meter of cable, or about 200 pF for your 12 feet long wires.
If you use IES5501 on each I2C line, near the controller, you will NOT need any more IES5501 at each LED driver. Because the 12 foot cables have less than 400 pF they can be driven by IES5501 and the slaves (=LED drivers) should also be able to drive the cables without any buffers (IES5501).
The pull-up resistors that you use on the 12 foot cables should be the smallest resistance allowed by the slaves. For example, if the bus is a 5 V bus then normal LED drivers have at least 3 mA drive capability and the pull-up would be 5 V / 3 mA = 1.66k. You could use 1.8k but in practice 1.5k will be OK too.
You still need pull-ups on the microcontroller port lines. They can be whatever value is recommended for the processor.
While we believe your project will work OK as planned, it is not a system that we would recommend for professional/commercial use because it might be affected by interference from other wiring or cell phones etc. For an application like yours, where there will not be any serious problems if the communication system has some errors, it is OK. You just might tell the person who is writing the software for the processor to include some way to handle communication errors. For example, if the PIC processor has registers with bits to indicate I2C data transmission failures, then make sure the software program includes ways to recover from the errors.
Good luck with your project ! If you ever have to build a professional system please ask again and we can refer you to more complex solutions that would make the I2C bus wiring more tolerant to interference.
Regards,
Angelynn Lim
Customer Account Manager
mercredi 2 juin 2010
Inscription à :
Publier les commentaires (Atom)
Aucun commentaire:
Enregistrer un commentaire