Outils pour utilisateurs

Outils du site


issue112:python

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édentesRévision précédente
Prochaine révision
Révision précédente
issue112:python [2016/09/12 14:29] auntieeissue112:python [2016/09/12 14:57] (Version actuelle) auntiee
Ligne 108: Ligne 108:
 **i2c **i2c
  
-i2c requires only 2 lines like async serial, but those two lines can  +i2c requires only 2 lines like async serial, but those two lines can support up to 1008 slave devices. Unlike SPI, i2c can support a multi-master system – allowing multiple slave devices to communicate to multiple master devices. There is a limitation that the masters can not communicate with each other on the i2c bus, and they must take turns using the bus lines. i2c has a similar overhead to Async in that, for each 8 bits of data, one extra bit is required as an "Ack/Nack" bit. The hardware requirements are more complex than SPI, but less than Async.
-support up to 1008 slave devices. Unlike SPI, i2c can support a  +
-multi-master system – allowing multiple slave devices to communicate to  +
-multiple master devices. There is a limitation that the masters can not  +
-communicate with each other on the i2c bus, and they must take turns  +
-using the bus lines. i2c has a similar overhead to Async in that, for  +
-each 8 bits of data, one extra bit is required as an "Ack/Nack" bit. The +
- hardware requirements are more complex than SPI, but less than Async.+
  
-Data rates are somewhere between Async and SPI. Most i2c devices can  +Data rates are somewhere between Async and SPI. Most i2c devices can communicate at between 100 KHz to 400 KHz.
-communicate at between 100 KHz to 400 KHz.+
  
 In the diagram above, SDA is the data line and SCL is the clock line. In the diagram above, SDA is the data line and SCL is the clock line.
  
-Hopefully I didn’t completely confuse you and you are ready to go ahead  +Hopefully I didn’t completely confuse you and you are ready to go ahead with our project.
-with our project.+
  
-A very good resource for what we are about to do is at  +A very good resource for what we are about to do is at http://www.circuitbasics.com/raspberry-pi-i2c-lcd-set-up-and-programming/
-http://www.circuitbasics.com/raspberry-pi-i2c-lcd-set-up-and-programming/+
  
-Make +Make sure that i2c is enabled on the RPi. This is set in raspi-config.
- sure that i2c is enabled on the RPi. This is set in raspi-config.+
  
-Now, in a terminal, use apt-get to install two support libraries. (I  +Now, in a terminal, use apt-get to install two support libraries. (I wasn’t able to get it to work as a single liner for some reason.):
-wasn’t able to get it to work as a single liner for some reason.):+
  
 sudo apt-get install i2c-tools sudo apt-get install i2c-tools
Ligne 146: Ligne 134:
 plusieurs périphériques maîtres. Les maîtres ne peuvent pas communiquer  plusieurs périphériques maîtres. Les maîtres ne peuvent pas communiquer 
 entre eux sur le bus i2c et doivent utiliser les lignes de bus à tour de entre eux sur le bus i2c et doivent utiliser les lignes de bus à tour de
- rôle ; il y a donc des limitations. i2c a une format semblable à Async + rôle ; il y a donc des limitations. i2c a un « coût » semblable à celui d'Async 
 en ce sens que, pour chaque donnée de 8 bits, un bit supplémentaire est  en ce sens que, pour chaque donnée de 8 bits, un bit supplémentaire est 
 nécessaire comme un bit "Ack/Nack". Les exigences matérielles sont plus  nécessaire comme un bit "Ack/Nack". Les exigences matérielles sont plus 
Ligne 157: Ligne 145:
 ligne d'horloge. ligne d'horloge.
  
-Espérons que je ne vous aie pas totalement embrouilléet soyez prêt à +Espérons que je ne vous aie pas totalement embrouillé et que vous êtes prêt à 
 continuer avec notre projet. continuer avec notre projet.
  
Ligne 164: Ligne 152:
 http://www.circuitbasics.com/raspberry-pi-i2c-lcd-set-up-and-programming/ http://www.circuitbasics.com/raspberry-pi-i2c-lcd-set-up-and-programming/
  
-Assurez-vous +Assurez-vous que i2c est activé sur le RPi. On règle cela dans raspi-config.
- que i2c est activé sur le RPi. Ceci est situé dans Raspi-config.+
  
 Maintenant, dans un terminal, utilisez apt-get pour installer deux  Maintenant, dans un terminal, utilisez apt-get pour installer deux 
 bibliothèques de support. (Je n'ai pas réussi à le lancer sur une seule  bibliothèques de support. (Je n'ai pas réussi à le lancer sur une seule 
-ligne pour une raison quelconque.) : +ligne pour une raison inconnue.) : 
  
 sudo apt-get install i2c-tools sudo apt-get install i2c-tools
  
 sudo apt-get install python-smbus sudo apt-get install python-smbus
- 
  
 **I was able to get Fritzing to come up with the i2c backpack (shown top **I was able to get Fritzing to come up with the i2c backpack (shown top
Ligne 206: Ligne 192:
  5 (GPIO3). Choisissez une broche de 5V libre sur le RPi (broche 2 ou 4)  5 (GPIO3). Choisissez une broche de 5V libre sur le RPi (broche 2 ou 4)
  et une masse libre (broche 6 ou 9) et connectez-les aux VCC (+5V) et   et une masse libre (broche 6 ou 9) et connectez-les aux VCC (+5V) et 
-Gnd (masse) de l'adaptateur. N'oubliez pas que nous avons besoin du  +Gnd (masse) de l'adaptateur. N'oubliez pas que nous devons connecter le 
-capteur de température connecté à GPIO4 comme le mois dernier (avec la +capteur de température à GPIO4comme le mois dernier (avec la 
 résistance à +5VDC). résistance à +5VDC).
  
-Maintenant, redémarrez et une fois que le RPi est prêt, tapez dans le +Maintenant, redémarrez etune fois que le RPi est prêt, tapez dans le 
 terminal : terminal :
  
 i2cdetect -y 1 i2cdetect -y 1
  
-Ceci permettra de vérifier que l'interface i2c travaille sur votre Pi,  +Ceci permettra de vérifier que l'interface i2c fonctionne sur votre Pi,  
-et vous dire aussi quelle est l'adresse utilisée par l'afficheur LCD. +et vous dira aussi quelle est l'adresse utilisée par l'afficheur LCD. 
 Regardez la capture d'écran montrée à droite pour voir ce à quoi il  Regardez la capture d'écran montrée à droite pour voir ce à quoi il 
 devrait ressembler. devrait ressembler.
Ligne 262: Ligne 248:
  
 Maintenant, nous allons faire un petit test pour nous assurer que tout  Maintenant, nous allons faire un petit test pour nous assurer que tout 
-fonctionne. Tapez le code suivant et enregistrez-le sous i2c_test1.py+fonctionne. Tapez le code suivant et enregistrez-le sous i2c_test1.py 
 dans le même dossier que le pilote que nous venons d'écrire : dans le même dossier que le pilote que nous venons d'écrire :
  
 import i2c_lcd_driver import i2c_lcd_driver
 +from time import
  
-i2c_lcd_driver.lcd mylcd = ()+mylcd = i2c_lcd_driver.lcd()
  
-mylcd.lcd_display_string ( "Ceci est un test", 1)+mylcd.lcd_display_string("Ceci est un test",1)
  
 Si tout est correct, vous devrez voir « Ceci est un test » à la position Si tout est correct, vous devrez voir « Ceci est un test » à la position
Ligne 277: Ligne 264:
 version parallèle. version parallèle.
  
-Ceci termine plutôt bien notre présentation des écrans LCD et i2c. Nous +Cela termine notre présentation des écrans LCD et i2c. Nous 
 utiliserons les écrans LCD i2c et d'autres dispositifs i2c à l'avenir ;  utiliserons les écrans LCD i2c et d'autres dispositifs i2c à l'avenir ; 
 vous devrez donc les garder en sécurité pour plus tard. Le mois  vous devrez donc les garder en sécurité pour plus tard. Le mois 
-prochain, nous allons commencer à travailler avec les moteurs, les  +prochain, nous allons commencer à travailler avec des moteurs, des  
-servos et les moteurs pas-à-pas. Donc, dépêchez-vous de vous procurer un +servos et des moteurs pas-à-pas. Alors, dépêchez-vous de vous procurer un « hobby motor » 
- moteur de loisir pour être prêt. Dans quelques mois, nous allons + (un moteur miniature de loisirs) pour être prêt. Dans quelques mois, nous allons 
 commencer à travailler avec le microcontrôleur Arduino, puis apprendre à commencer à travailler avec le microcontrôleur Arduino, puis apprendre à
  interfacer le RPi pour contrôler l'Arduino.  interfacer le RPi pour contrôler l'Arduino.
  
-Jusque-là, amusez vous.+Jusque-là, amusez vous bien.
issue112/python.1473683385.txt.gz · Dernière modification : 2016/09/12 14:29 de auntiee