[Programmation] Ralentissement d'un ATtiny85 avec la librairie Manchester en RX(433Mhz)
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

Ralentissement d'un ATtiny85 avec la librairie Manchester en RX(433Mhz)



  1. #1
    Neilmine

    Ralentissement d'un ATtiny85 avec la librairie Manchester en RX(433Mhz)


    ------

    Bonjour,
    Je veux controler une led à distance avec un arduino uno comme emmeteur et un ATtiny85 comme recepteur. La partie emmeteur marche bien mais la partie recepteur pose problème, le problème vient de la ligne man.beginReceive(); (qui est je pense indispensable pour recevoir quelque chose). Quand je met cette ligne, TOUT le programme est executé 10 fois plus lentement, la reception est donc impossible.
    J'ai fait le test avec un programme "allégé" en mettant cette ligne et une peu de code pour faire clignoter une led :

    Code:
    #include <Manchester.h>
    #define RX_PIN 1
    
    void setup() {
      man.setupReceive(RX_PIN, MAN_1200);
      man.beginReceive();
      pinMode(2, OUTPUT);
    }
    
    void loop() {
      digitalWrite(2, HIGH);
      delay(1000);
      digitalWrite(2, LOW);
      delay(500);
    }
    La led, qui devrait s'allumer et s'eteindre toute les secondes, reste allumée 10 sec et eteinte 5 sec. Si je met la ligne man.beginReceive(); en commentaire (ou en l'enlevant), la led marche normalement toutes les secondes. La programmation de l'ATtiny85 à l'aide d'un autre arduino marche donc bien.
    J'ai aussi essayer de mettre le même code (enfin juste en changeant le pin RX) sur une autre arduino sans mettre man.beginReceive(); en commentaire : le programme marche parfaitement.
    C'est donc bien cette ligne qui pose problème et uniquement sur l'ATtiny
    Pourquoi l'ATtiny est t-il ralenti par cette ligne et comment le faire marcher ?

    -----

  2. #2
    jiherve

    Re : Ralentissement d'un ATtiny85 avec la librairie Manchester en RX(433Mhz)

    Bonsoir
    Ben il faudrait regarder ce que fait cette fonction, imaginons un instant qu'elle active une interruption et que celle ci s'active a la fréquence de 1200Hz(si c'est ce que MAN_1200 indique) et prends quelques µS à chaque fois alors de facto delay() qui est une routine purement logicielle(je pense) sera ralentie.
    C'est çà le drame avec Arduino : vous ne savez pas ce que vous faites et moi non plus
    JR
    l'électronique c'est pas du vaudou!

  3. #3
    Neilmine

    Re : Ralentissement d'un ATtiny85 avec la librairie Manchester en RX(433Mhz)

    J'ai mis la librairie en pièce jointe. J'ai regarder la fonction beginReceive et MANRX_BeginReceive mais je n'ai rien trouvé qui puisse empecher le attiny de bien fonctionner
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Radio-transmission d'un signal d'alarme avec NRF24L01+ et Attiny85
    Par michelcreuse dans le forum Électronique
    Réponses: 2
    Dernier message: 06/11/2015, 21h02
  2. Réponses: 5
    Dernier message: 29/08/2014, 11h00
  3. Générer un petit PWM avec un ATTINY85
    Par Apollon13 dans le forum Électronique
    Réponses: 3
    Dernier message: 26/05/2013, 22h33
  4. Transmission sans fil avec module Velleman 433Mhz
    Par Canaillou2k5 dans le forum Électronique
    Réponses: 10
    Dernier message: 17/07/2011, 15h37
  5. modulateur 433MHz avec PIC
    Par inviteb9ceb071 dans le forum Électronique
    Réponses: 3
    Dernier message: 22/10/2007, 17h26
Découvrez nos comparatifs produits sur l'informatique et les technologies.