Auteur Sujet: Rétrosignalisation S88 et UNO  (Lu 478 fois)

brice45

  • Newbie
  • *
  • Messages: 17
    • Voir le profil
Rétrosignalisation S88 et UNO
« le: octobre 10, 2024, 02:41:22 pm »
Bonjour à tous,

Je m'intéresse actuellement sur la rétrosignalisation avec un bus S88 et mon arduino Uno.

J'ai téléchargé la bibliothèque UNO_S88.

J'ai copier le code de l'article138 dans l'IDE, quand je le compile une erreur de compilation pour la carte Arduino Uno.

J'ai dû raté quelque chose, alors si quelqu'un peut m'aider ça me permettrai d'avancer sur le sujet.

Je vous remercie, et vous souhaite une bonne journée.

Cordialement Brice45

 
Centrale z21 blanche
multimaus rouge
Logiciel wdp2021
Arduino
Réseau Ho

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3014
  • 100% Arduino et N
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #1 le: octobre 11, 2024, 02:09:34 pm »
Peut-être faudrait-il recopier le texte de l’erreur (on ne peut pas deviner), quelle version d’IDE et si vous avez bien les bonnes bibliothèques et leurs versions.

C’est sûrement la que ça se passe !

Plus un schéma de votre installation
Cordialement,
Dominique

brice45

  • Newbie
  • *
  • Messages: 17
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #2 le: octobre 11, 2024, 06:37:28 pm »
Merci pour votre réponse, je vais regardé, ça va m'aider.

Cordialement
Centrale z21 blanche
multimaus rouge
Logiciel wdp2021
Arduino
Réseau Ho

brice45

  • Newbie
  • *
  • Messages: 17
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #3 le: octobre 11, 2024, 07:03:16 pm »
le code erreur est : erreur de compilation pour la carte Arduino Uno.

pour l'instant je n'ai pas de circuit de test, je souhaite simplement compiler le programme.

Merci
Centrale z21 blanche
multimaus rouge
Logiciel wdp2021
Arduino
Réseau Ho

lebelge2

  • Jr. Member
  • **
  • Messages: 67
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #4 le: octobre 11, 2024, 07:19:39 pm »
Chez moi, ça compile correctement !

#include <UNO_S88.h>    // la librairie S88 pour les UNO/Nano

void setup() {
  S88_Setup(16);        // on donne le nombre capteur 8 ou 16
}

void loop() {
  S88_Loop();           // boucle sur les capteurs
}

Le croquis utilise 1614 octets (5%) de l'espace de stockage de programmes. Le maximum est de 32256 octets.
Les variables globales utilisent 27 octets (1%) de mémoire dynamique, ce qui laisse 2021 octets pour les variables locales. Le maximum est de 2048 octets.

trimarco232

  • Sr. Member
  • ****
  • Messages: 324
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #5 le: octobre 11, 2024, 11:26:50 pm »
Bonjour,
peut-être la librairie doit encore être installée ?

nopxor

  • Full Member
  • ***
  • Messages: 188
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #6 le: octobre 12, 2024, 08:08:48 am »

brice45

  • Newbie
  • *
  • Messages: 17
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #7 le: octobre 15, 2024, 10:46:59 am »
Bonjour,
Je vous remercie de vos réponses, j'ai un peu de temps aujourd'hui donc je me penche dessus mais avec votre aide le problème va être réglé.
Cordialement
brice45
Centrale z21 blanche
multimaus rouge
Logiciel wdp2021
Arduino
Réseau Ho

brice45

  • Newbie
  • *
  • Messages: 17
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #8 le: octobre 15, 2024, 11:32:09 am »
Rebonjour,
Pour faire cours, j'utilise Arduino IDE 2.3.3 je copie le code du site Locoduino de l'article 138 dont voici le code que je je voudrais vérifier :

#include <UNO_S88.h>    // la librairie S88 pour les UNO/Nano

void setup() {
  S88_Setup(16);        // on donne le nombre capteur 8 ou 16
}

void loop() {
  S88_Loop();           // boucle sur les capteurs
}
#include <Arduino.h>
void S88_Setup(int nb_sensors);
void S88_Loop();

#include "UNO_S88.h"
#include <Arduino.h>

const byte clockS88 = 2;      // clock S88 pin = 2
int clockCounter=0;           // 16 tops
const byte PSS88 = 3;         // PS S88 pin = 3
long loopCounter=0;           //for reset from ECOS
const byte dataIn=0;          //data input from next Arduino in S88 chain pin = 0
const byte dataOut=1;         //data output pin=1
unsigned int sensors=0;       // sensor 8/16 bits
unsigned int data=0xffff;     // buffer
int nbsensors;                // nb sensors 8 or 16
int beginPin = 4;             // first pin
int endPin8 = 12;             // last pin for 8 sensors
int endPin16 = 21;            // last pin for 16 sensors
int endPin;


void PS() {
    clockCounter=0;
    data=sensors;
    sensors=0;
    loopCounter++;
}

void clock() {
    digitalWrite(dataOut,bitRead(data,clockCounter)); // shift to next
    delayMicroseconds(16);
    bitWrite(data,clockCounter,digitalRead(dataIn)); // shift from previous
    clockCounter =(clockCounter +1) % nbsensors;     // modulo nb sensors
}

void S88_Setup(int nb_sensors) {
    nbsensors = nb_sensors;
    if (nbsensors == 8) {endPin = endPin8;} else {endPin = endPin16;}
    pinMode(clockS88, INPUT_PULLUP);
    attachInterrupt(0,clock,RISING);    //pin 2 = clock interrupt 0
    pinMode(PSS88, INPUT_PULLUP);
    attachInterrupt(1,PS,RISING);       //pin 3 = PS interrupt 1
    pinMode(dataIn,INPUT_PULLUP);       //pin 0 = data in from next Arduino S88 in chain
    pinMode(dataOut, OUTPUT);           //pin 1 = data out to ECoS or to previous Arduino in S88 chain
    for (int i = beginPin; i< endPin;i++) {pinMode(i,INPUT_PULLUP);}  // init sensors
}

void S88_Loop() {
    if (loopCounter==20){bitSet(sensors,0);}  // reset management
    for (int i = 4; i<endPin;i++) {if (!digitalRead(i)){bitSet(sensors,i-4);}} // update sensors
}

donc je ne vois pas d'où vient le problème.

Je serais ravi d'avoir quelques explications et je vous en remercie et vous souhaite une bonne journée.

Cordialement
Brice45
Centrale z21 blanche
multimaus rouge
Logiciel wdp2021
Arduino
Réseau Ho

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3014
  • 100% Arduino et N
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #9 le: octobre 15, 2024, 05:39:44 pm »
Citer
donc je ne vois pas d'où vient le problème.
Citer
le code erreur est : erreur de compilation pour la carte Arduino Uno.

Nous non plus !
Commencez par recopier la totalité du message d'erreur en dessous l'éditeur de l'IDE, pas seulement la dernière ligne  >:(
Cordialement,
Dominique

lebelge2

  • Jr. Member
  • **
  • Messages: 67
    • Voir le profil
Re : Rétrosignalisation S88 et UNO
« Réponse #10 le: octobre 15, 2024, 07:56:47 pm »
Il ne faut pas recopier le code de la librairie dans le .ino !