J'essaie d'utiliser mon arduino pour récupérer les informations de teleinformation de mon compteur EDF (la teleinformation est activée car utilisée par ailleurs)
Pour les branchements :
entrée : teleinfo (1 et 2) en entrée de l'optocoupleur 6N138
sortie : Tx - RS232-1 (pin14 du MAX232) sur le digital pin 2 de l'arduino
GND - RS232-2 (pin6 du MAX232 avec un condensateur) sur la masse de l'arduino (GND)
Code Arduino 1 :
unsigned long time;
int Rx = 2;
void setup() {
Serial.begin(1200);
pinMode(Rx, INPUT);
}
void loop() {
int oneBit = digitalRead(Rx);
time = micros();
Serial.println(oneBit);
// on attend jusqu'à ce qu'un nouveau bit puisse être lu.
// téléinfo à 1200 bauds, donc 1200 bits / second soit 1000000 microsecondes / 1200 = 833,33
while(time + 833 > micros()) {
}
}
Je démarre l'arduino avec le code ci-dessus et la teleinfo non-branchée, l'arduino me renvoi uniquement des 0.
Je branche la teleinfo et l'arduino m'envoie des 0 et des 1 (sans doute les bits d'une trame de teleinfo)
Je démarre l'arduino avec le code ci-dessus et la teleinfo branchée, l'arduino me renvoi [START] puis des [WAIT] en infini mais jamais aucun octet lu sur le pin 2. Donc j'en déduis que cptSerial.available() est toujours faux.
Quelqu'un aurait une explication concernant mon problème lorsque j'essaie de lire des octets sur mon pin 2 ? A priori, j'ai bien les bits qui composent ma trame, mais lorsque je souhaite transformer mes paquets de bits en octets via SoftwareSerial, on dirait qu'il n'y a plus rien
Le montage que tu as fait c'est pour entrer sur un port série d'un PC.
Dans ton cas il ne faut surtout pas de MAX232 !! Il faut brancher la sortie 6 de ton 74LS132N sur sur le digital pin 2 de l'arduino.
Par contre, pour ma culture personnelle (et peut-être celle d'autres personnes qui se retrouveront dans mon cas), en quoi le MAX232 pose problème, il me semble avoir bien compris le principe de chaque étape de la transformation du signal :
diode + optocoupleur pour ne conserver que la "partie haute" du signal et isoler mon circuit du compteur EDF
trigger de schmitt pour un signal carré plus propre
MAX232 pour transformer du TTL en RS232, mais il me semblait avoir lu que le MAX232 permettait de limiter entre autre la tension de sortie à 5V (le TTL pouvant avoir une tension entre -13V et +13V) donc dans mon cas que le MAX232 me permettrait de protéger l'arduino au cas où la tension dépasserait 5V et sinon, ne servirait à rien.
Bonsoir
le circuit MAX232 est un circuit d'interface qui convertit les niveaux logiques TTL (0 ou 5V) en niveaux RS232 (+V -V) dans le sens emission et l'inverse dans le sens reception.
Ces niveaux +/-15V sont utilises pour les liaisons "officielles" RS232 vers par exemple un PC.
Il ne faut en aucun cas connecter la sortie du MAX232 sur une entree d'un Arduino. C'est le claquage assure.
Comme le dit tres bien Chabot380, tu dois oter le MAX 232 de ton montage et connecter directement la sortie du LS132 vers l'entree de l'Arduino.
Il faut peut-etre se connecter sur la pin 3 du LS132. Cela depend de la polarite du signal qui sort de compteur. De toute facon, c'est facile a tester: le signal que tu entres sur la pin de ton Arduino doit etre a 5V au repos.
Pour info, il y a des oscillateurs a l'interieur du MAX232 et, a l'aide des capacites exterieures, il peut fabriquer les tensions positives et negatives ici environ 8V en partant du 5V. Pas du tout compatible Arduino.
Autre info, il y a une erreur sur le shema de Yadnet.com, la capa cablee sur pin 2 c'est du n'importe quoi !!
Donc nouvelle série de tests effectués et l’encéphalogramme et toujours plat
pin 6 LS132 sur pin 2 arduino, aucun signal en bit à bit (0 en permanence) et aucun signal en lecture serie
pin 3 LS132 sur pin 2 arduino, aucun signal en bit à bit (0 en permanence) et aucun signal en lecture serie
Je suis perdu, j'ai moins d'info sans le MAX232 que ce que je pouvais avoir avec ! Après, si j'ai bien compris, les infos que j'avais avec les MAX232 étaient bidon...
PS : le pin 2 n'a pas grillé, je l'ai testé avec une sonde de température qui fonctionne et les résultats sont bons
@chabot380, merci pour le lien, je le connaissais déjà, d'ailleurs, je trouve qu'il y est bien expliqué les différentes étapes, c'est juste sur la fin que j'avais un peu plus de mal.