Problème de ports utilisés par plusieurs cartes

Bonjour, j'utilise une carte EasyVr et une carte Motor shield par dessus. J'explique donc la carte EAsyVR utilise les ports 12,13 pour communiquer avec la carte Arduino Uno et la carte Motor utilise elle aussi le port 12 et 13 pour contrôler la direction du moteur ( sens normal ou inverse) J'aimerai savoir si on peut changer les ports de communication de la carte EasyVr. Merci

Je ne connais pas tes cartes ( dans ton message pas de numéro de référence ni de lien vers la documentation, moi pas avoir la connaissance absolue) mais ces cartes utilisent-elle le bus SPI (ou ISP) ? Si oui c'est normal qu'elles soient partagées, il devrait y avoir 11 aussi.

Sinon bienvenue dans l'absence de norme dans l'univers arduino. La seule chose à faire : Consulter la documentation ou ouvrir les fichiers des librairies associées aux cartes et déterminer à quoi servent ces pins. - si elles peuvent rester connectée tant mieux (on peut réver que c'était prévu pour). - si elles ne peuvent pas rester connectées il faut prendre une des deux cartes et raccorder les pins litigieuses sur d'autre pins disponibles sur la carte arduino SANS OUBLIER de modifier la librairie en conséquence.

Détail : pour des sorties on parle de "pin" ou de "broche". Les PORTs sont des objets spéciaux à l'intérieur du micro-controleur. Avec les avr les PORTs sont de 8 bits et un PORT peut gérer jusqu'à 8 sorties. C'est du détail mais employer les mots précis chaque fois que c'est possible évite des confusions..

J'aimerai savoir si on peut changer les ports de communication de la carte EasyVr.]

Bonjour,

oui c'est possible de changer les broches, mais seulement si la carte easyVr se trouve au sommet de la pile. Si c'est easyVR, c'est simple: -- au début des programmes ( avec Arduino 1.0 et suivant) changer la déclaration "SoftwareSerial port(12,13); " avec 2 broches disponibles --tordre les broches males 12 et 13 de la carte EasyVR pour les déconnecter de la pile, donc de la UNO --avec du fil rigide au diamètre adapté, sur la carte EasyVR, relier les broches 12 et 13 de l'easyVR avec les nouvelles broches déclarées (côté femelle)

mais pourras-tu brancher tes moteurs? Si la carte Motor doit être au-dessus, pour les connecter, là faudra plutôt y changer les broches 12 et 13, sans modifier l'EasyVr. La démarche est la même. On modifie les liaisons avec la Uno. A chercher dans la doc de la carte motor , et changer la déclaration dans le programme...

Autrement pour éviter toutes ces connections à refaire tu utilise le mode "Hardware serial mode" sur le shield EasyVR en mettant le cavalier J12 sur la position HW. Tu utiliseras donc les pins 0 et 1 de la UNO (à la place des 12 et 13)

En revanche cela posera peut être un conflit au moment de téléverser le programme dans la UNO mais tu enlèves le shield à ce moment.

Voir la notice page 20 ici: http://download.tigal.com/veear/EasyVR_2/EasyVR_User_Manual_3.6.6.pdf

;)

papybricol: mais pourras-tu brancher tes moteurs? Si la carte Motor doit être au-dessus, pour les connecter, là faudra plutôt y changer les broches 12 et 13, sans modifier l'EasyVr. La démarche est la même. On modifie les liaisons avec la Uno. A chercher dans la doc de la carte motor , et changer la déclaration dans le programme...

Quand on change le déclaration des pins ici

#if defined(ARDUINO) && ARDUINO >= 100
  #include "Arduino.h"
  #include "SoftwareSerial.h"
  SoftwareSerial port(12,13);
#else // Arduino 0022 - use modified NewSoftSerial
  #include "WProgram.h"
  #include "NewSoftSerial.h"
  NewSoftSerial port(12,13);

Faut-il changer ailleurs aussi? dans la librairie?

john_lenfr: Autrement pour éviter toutes ces connections à refaire tu utilise le mode "Hardware serial mode" sur le shield EasyVR en mettant le cavalier J12 sur la position HW. Tu utiliseras donc les pins 0 et 1 de la UNO (à la place des 12 et 13)

Sa ne marche pas quand je change de place le jump.

ma carte Motor: http://arduino.cc/en/Main/ArduinoMotorShieldR3

Faut-il changer ailleurs aussi? dans la librairie?

Non, la déclaration dans le programme .ino suffit en corrigeant la ligne correspondant à ta version d'IDE Tu peux tester avec la uno et l'easyVr sans les empiler ni tordre quoique ce soit en reliant avec du fil rigide: -les broches 5v ( pour alimenter l'easyVr) -les broches Gnd des 2 cartes -et les broches choisies de la UNO avec les 12 et 13 de l'easyVr

Pour le mode Hardware Serial du connecteur J12, il ne faut pas relier la UNO par l'USB avec le PC en même temps, donc plus possible d'afficher sur le moniteur pour déverminer. C'est pourtant bien pratique ( voire indispensable à mon humble avis de bricoleur ) Ce mode est plutôt destiné à la Leonardo ...