 |
Fabriquants:
Bientôt le
liste de tous (c'est pt'ête un peu ambitieux ! ) les composants
I2C avec une description succincte.
Objectif:
- Piloter un bus I2C à partir
d'un port parallèle d'un PC (sous 3 plates-formes de développement
logiciel différentes)
- Créer une carte regroupant un
maximum de ces composants (c'est inutile, c'est juste pour le fun)
- Créer une bibliothèque
de composants logiciels permettant de piloter le bus et de créer
rapidement et facilement de nouvelles Interfaces Homme Machine (IHM)
Spécifications
système
Le contrôleur du bus est le PC.
Une IHM dédiée pour chaque type de composant.
Plusieurs IHMs de composants différents ouvertes simultanément.
Projet en 2 parties:
- le matériel: carte d'essais
accueillant les différents composants I2C.
- le logiciel: Développé
sous LabVIEW, puis en VB, puis en C++ pour comparer.
Spécifications
matérielles
Contrainte forte
de développement : "utiliser au maximum des composants de
récup". (Et oui l'est pas trop riche le Rifflet !)
Réalisation d'une carte d'essai
accueillant les composants I2C, le connecteur du port parallèle
et une cellule de régulation de tension
l'alimentation principale étant fournie par un bloc extérieur.
|
 |
- PCF8574: Port E/S 8 bits
- PCF8591: Convertisseur AD/DA
- LM75: sonde de température
- ST24164 : mémoire peut être
une autre référence du même style.
- PCF8570: mémoire SRAM.
- PCF8563 ou 73: horloge calendaire
Brochage: voici les broches du connecteur
du port parallèle utilisées:
n° Borche
|
Fonction port parallèle
|
Fonction I2C
|
Commentaire
|
2
|
D0
|
SCL
|
XX
|
3
|
D1
|
SDA_out
|
Port parallèle utilisé en
mode ripple
|
13
|
SELECT
|
SDA_in
|
XX
|
18-25
|
GND
|
GND
|
XX
|
Spécifications
logicielles
- Développement sous LabVIEW, puis sous Visual
Basic et enfin sous C++ afin de comparer les 3 méthodes.
- Création de fonctions I2C de base (ex: écriture
d'un octet, lecture d'un octet...).
- Développement modulaire hiérarchisé.
- Développement d'une interface générique
ainsi qu'une interface dédiée à chaque type de
composants (mesure de tension, de température, gestion de mémoires
...)
Passons au choses
sérieuses: l'étude électronique, et
l'étude logicielle.
|