Outils pour utilisateurs

Outils du site


tdcom2

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tdcom2 [2020/03/18 10:14]
bvandepo [Composant DS13072]
tdcom2 [2020/05/28 17:32] (Version actuelle)
bvandepo
Ligne 48: Ligne 48:
   - Dans quels états peut se trouver une broche (par exemple SDA) d'un composant i2c ?   - Dans quels états peut se trouver une broche (par exemple SDA) d'un composant i2c ?
   - Quels composants discrets doivent être connectés au bus i2c pour assurer son fonctionnement ?   - Quels composants discrets doivent être connectés au bus i2c pour assurer son fonctionnement ?
-  - Combien d'​esclaves peuvent être connectés sur un bus I2c pour pouvoir les adresser tous individuellement?​+  - Combien d'​esclaves ​maximum ​peuvent être théoriquement ​connectés sur un bus I2c pour pouvoir les adresser tous individuellement?​
   - Le bus i2C est-il half-duplex ou full-duplex ? justifier votre réponse.   - Le bus i2C est-il half-duplex ou full-duplex ? justifier votre réponse.
  
Ligne 72: Ligne 72:
  
   - Quel est le rôle de ce composant?   - Quel est le rôle de ce composant?
-  - Quel est le rôle des brôches A2, A1 et A0? +  - Quel est le rôle des brôches A2, A1 et A0?  
-  - Quelle différence existe-t-il entre les références PCF8574 et PCF8574A et pourquoi le constructeur a-t-il fait ces deux références?​ Dans la suite, des composants PCF8574A seront considérés. +  - Quelle différence existe-t-il entre les références PCF8574 et PCF8574A et pourquoi le constructeur a-t-il fait ces deux références? Quelle est la plage d'​adresses I2C utilisables pour la référence de composant ​ PCF8574A? Dans la suite, des composants PCF8574A seront considérés. 
-  - Décrire l'​algorithme de la fonction **readPort8574(...)** en indiquant ce qu'​elle fait en francais ​(phase d'​adressage,​ d'​échange des données etc...).+  - Décrire l'​algorithme de la fonction **readPort8574(...)** en indiquant ce qu'​elle fait en français ​(phase d'​adressage,​ d'​échange des données etc...).
   - Implémenter en C++ la fonction **readPort8574(...)** en utilisant les fonctions de la librairie **Wire**.   - Implémenter en C++ la fonction **readPort8574(...)** en utilisant les fonctions de la librairie **Wire**.
   - Tracer le chronogramme des signaux SDA et SCL si l’on appelle **readPort8574(0x2,&​val)**. Indiquer quelle est la valeur retournée par la fonction.   - Tracer le chronogramme des signaux SDA et SCL si l’on appelle **readPort8574(0x2,&​val)**. Indiquer quelle est la valeur retournée par la fonction.
   - Tracer le chronogramme des signaux SDA et SCL si l’on appelle **readPort8574(0x38,&​val)** et que les valeurs de A2-0=000 et les entrées du 8574A sont à 0x27. Indiquer quelle est la valeur retournée par la fonction.   - Tracer le chronogramme des signaux SDA et SCL si l’on appelle **readPort8574(0x38,&​val)** et que les valeurs de A2-0=000 et les entrées du 8574A sont à 0x27. Indiquer quelle est la valeur retournée par la fonction.
-  - Décrire la fonction **writePort8574(...)** en indiquant ce qu'​elle fait en francais ​(phase d'​adressage,​ d'​échange des données etc...).+  - Décrire la fonction **writePort8574(...)** en indiquant ce qu'​elle fait en français ​(phase d'​adressage,​ d'​échange des données etc...).
   - Implémenter en C++ la fonction **writePort8574(...)** en utilisant les fonctions de la librairie **Wire**.   - Implémenter en C++ la fonction **writePort8574(...)** en utilisant les fonctions de la librairie **Wire**.
   - Tracer le chronogramme des signaux SDA et SCL si l’on appelle **writePort8574(0x39,​0x82)** et que les valeurs de A2-0=001. Indiquer quelle est la valeur retournée par la fonction.   - Tracer le chronogramme des signaux SDA et SCL si l’on appelle **writePort8574(0x39,​0x82)** et que les valeurs de A2-0=001. Indiquer quelle est la valeur retournée par la fonction.
Ligne 112: Ligne 112:
   - Implémenter en C++ la fonction **readRegRTC(...)** en utilisant les fonctions de la librairie **Wire**.   - Implémenter en C++ la fonction **readRegRTC(...)** en utilisant les fonctions de la librairie **Wire**.
   - Tracer le chronogramme des signaux SDA et SCL si l’on appelle **readRegRTC(0x68,​0x1,&​val)** et que la valeur lue est 0x21. Indiquer quelle est la valeur retournée par la fonction.   - Tracer le chronogramme des signaux SDA et SCL si l’on appelle **readRegRTC(0x68,​0x1,&​val)** et que la valeur lue est 0x21. Indiquer quelle est la valeur retournée par la fonction.
-  - Proposer un schéma de câblage pour un montage connectant la plateforme Arduino à une RTC DS13072 et deux expander de ports i2c PCF8574.+  - Proposer un schéma de câblage pour un montage connectant la plateforme Arduino à une RTC DS13072 et deux expander de ports I2C PCF8574.
  
 ===== Partie TP===== ===== Partie TP=====
Ligne 437: Ligne 437:
  
 ===== Exercice 3 : Utilisation de la RTC ===== ===== Exercice 3 : Utilisation de la RTC =====
-{{http://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_tns/​TODO.jpg}} ​ Compléter le sketch suivant pour activer la broche SQW/OUT successivement à 1 et à 0 en changeant toutes les secondes dans la fonction loop. Pour cela implémenter la fonctions writeRegI2C. 
- 
  
 <file cpp i2c_DS13072.ino>​ <file cpp i2c_DS13072.ino>​
Ligne 527: Ligne 525:
 } }
 //////////////////////////////////////////​ //////////////////////////////////////////​
- </​file> ​      ​+ </​file> ​   
 +     
 +{{http://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_tns/​TODO.jpg}} ​ Compléter le sketch précédent pour activer la broche SQW/OUT successivement à 1 et à 0 en changeant toutes les secondes dans la fonction loop. Pour cela implémenter la fonctions writeRegI2C. 
  
  
tdcom2.1584522861.txt.gz · Dernière modification: 2020/03/18 10:14 par bvandepo