IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Déclaration du nombre de leds


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Juin 2023
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Juin 2023
    Messages : 15
    Par défaut Déclaration du nombre de leds
    Bonjour

    J'ai un projet où je dois déclarer 4500 leds (30 bandes de 150leds), je n'ai pas besoin de toutes les allumer en même temps
    J'ai commencé mon programme en essayant avec une bande, pas de soucis que ce soit avec la bibliothèque Fastled ou Adafruit_NeoPixel. Lorsque j'ai su le nombre de leds à déclarer, je l'ai déclaré avec une constante.
    - avec fastleds: pas possible, ça m'a pris toute ma mémoire dynamique...
    - avec Adafruit_NeoPixel: je ne peux pas aller au dela de 1983, après les leds ne sont plus controlables...mais apparemment ça ne prend pas de place dans la mémoire dynamique, je suis à 0%
    Y a t il un moyen de contourner ce probleme ?

    Merci.

  2. #2
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Bonjour,

    tes bandes sont chaînées ?

    Pourquoi ne pas répartir tes 30 bandes sur 6 pins ? Cela fera 5 bandes par pin et donc 5x150 = 750 LED à piloter.
    Tu déclares 6 objets, ou un tableau de 6 objets, Adafruit_NeoPixel avec 750 LEDs.

  3. #3
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Juin 2023
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Juin 2023
    Messages : 15
    Par défaut
    Citation Envoyé par Auteur Voir le message
    Bonjour,

    tes bandes sont chaînées ?

    Pourquoi ne pas répartir tes 30 bandes sur 6 pins ? Cela fera 5 bandes par pin et donc 5x150 = 750 LED à piloter.
    Tu déclares 6 objets, ou un tableau de 6 objets, Adafruit_NeoPixel avec 750 LEDs.
    De base, je voulais les chainer pour simplifier le cablage, mais du coup j'ai pensé à ce que tu me proposes pour la bibliothèque d'Ada et utiliser 4 pins pour 1200 leds/pin, mais cela implique de repenser le cablage, je ne pense pas avoir le choix

    concrètement vous n'aurez pas assez de RAM sur les petits arduinos pour toutes ces LEDs.

    donc il faut tricher et utiliser quelques buffers (pour que ça rentre dans la mémoire) qui seront partagés entre les bandeaux et utiliser plusieurs contrôleurs (cf https://github.com/FastLED/FastLED/w...oller-Examples)

    à vous de répartir les contrôleurs pour que ça pilote les LEDs que vous voulez
    Effectivement le uno est limité en mémoire, j'ai aussi un giga mais les bibliotheques ne sont pas encore "compatible" et je ne peut rien contoler...
    Il n'y a qu'avec la bibli d'Ada que je pourrais m'en sortir avec plusieurs pins (à tester), il m'est impossible de déclarer toutes mes leds avec fastled.

    de quoi s'agit-il ? On dirait un template, mais je ne le comprends pas.
    Je ne sais pas ce qu'est un template, mais a priori ça permet de créer une "table à 2 colonnes" pour un appel plus simplifier.

    Il ne me reste plus qu'à tester, si ça fonctionne, le problème sera semi résolu
    En tout cas merci pour vos retours

  4. #4
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Citation Envoyé par Linoops Voir le message
    Je ne sais pas ce qu'est un template, mais a priori ça permet de créer une "table à 2 colonnes" pour un appel plus simplifier.
    C'est bien la notation d'un template C++. Une template est une fonction qui admet des arguments génériques. Les paramètres entre les < > permet de spécifier le type des arguments passés à la fonction.
    https://cpp.developpez.com/faq/cpp/?page=Les-templates
    https://cpp.developpez.com/cours/cpp/?page=page_14

  5. #5
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 889
    Par défaut
    concrètement vous n'aurez pas assez de RAM sur les petits arduinos pour toutes ces LEDs.

    donc il faut tricher et utiliser quelques buffers (pour que ça rentre dans la mémoire) qui seront partagés entre les bandeaux et utiliser plusieurs contrôleurs (cf https://github.com/FastLED/FastLED/w...oller-Examples)

    à vous de répartir les contrôleurs pour que ça pilote les LEDs que vous voulez

  6. #6
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Je ne connais pas cette syntaxe C++ avec les < >:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FastLED.addLeds<NEOPIXEL, 10>(leds[0], NUM_LEDS_PER_STRIP)
    de quoi s'agit-il ? On dirait un template, mais je ne le comprends pas.

Discussions similaires

  1. Déclaration du nombre PI.
    Par f5nfb dans le forum Ada
    Réponses: 3
    Dernier message: 13/06/2023, 20h54
  2. Nombre aléatoire et déclaration de la fonction
    Par petitours dans le forum C++Builder
    Réponses: 7
    Dernier message: 04/05/2008, 01h57
  3. Réponses: 8
    Dernier message: 16/07/2007, 16h39
  4. Réponses: 9
    Dernier message: 15/05/2007, 12h41
  5. nombre de déclarations inconnu
    Par Elstak dans le forum C
    Réponses: 25
    Dernier message: 27/04/2007, 01h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo