Auteur Sujet: Expanders pour la bibliothèque Accessoires  (Lu 9433 fois)

Juan

  • Full Member
  • ***
  • Messages: 120
    • Voir le profil
Expanders pour la bibliothèque Accessoires
« le: septembre 12, 2020, 10:42:48 am »
Bonjour,
Je trouve les expandeurs SX1509 et SN74HC595 très intéressants et utilisables.
Ma question est de savoir si quelque chose de similaire ne pourrait pas être fait pour les multiplexeurs PCA9505 et MCP23017, qui ont de très bonnes caractéristiques.
C'est juste que j'ai beaucoup de ces multiplexeurs, mais pas de SX1509  ;D  ;D
Merci beaucoup,

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #1 le: septembre 13, 2020, 05:33:57 pm »
Oui, pas de problème pour d'autres expandeurs dans Accessories, mais je ne peux pas le coder, je n'en ai pas sous la main et je manque de temps.
Maintenant, ce n'est pas très compliqué, moins de 50 lignes de code sont nécessaires pour un expandeur complet !

Les expandeurs dérivent de la classe PortExpander et doivent coder un constructeur, et cinq fonctions au maximum selon les capacités de cet expandeur:
- begin initialise l'expandeur lui même
- beginPin initialise si besoin l'une des entrée/sortie
- digitalWrite change l'état de la broche demandée
- analogWrite change la valeur analogique de la broche si et seulement si l'expandeur en est capable.
- getPinsNumber() retourne simplement le nombre de pins disponibles sur le circuit.

Le mieux est de s'inspirer d'un des deux déjà codé.
Je peux aider au besoin, et je suis bien entendu preneur d'une version fonctionnelle pour ces expandeurs si vous le souhaitez.
« Modifié: septembre 13, 2020, 05:35:54 pm par Thierry »

Juan

  • Full Member
  • ***
  • Messages: 120
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #2 le: septembre 14, 2020, 06:34:13 pm »
Bonjour, Thierry,
Et merci pour votre réponse. Ne vous inquiétez pas, je comprends parfaitement que vous soyez très occupé et que vous n'ayez plus de temps libre.  Mais je vous remercierai de votre aide en temps voulu, car je vais essayer de le faire moi-même, en me basant sur les deux expansions déjà réalisées, comme vous me le conseillez.
Et bien sûr, si le projet se déroule bien, vous pouvez compter sur eux pour tout ce que vous voulez.

Pour terminer, un simple commentaire sur ces deux multiplexeurs : le MCP23017 a des caractéristiques très similaires au SX1509, avec 16 E/S. Il convient de mentionner le PCA9505, qui dispose de 48 E/S ! Imaginez la capacité.

Quoi qu'il en soit, j'espère commencer bientôt cette nouvelle tâche, dont je vais rendre compte.

Merci beaucoup à tous et à Locoduino, qui est un puits de sagesse.

Juan.

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #3 le: septembre 16, 2020, 08:33:42 pm »
Bon, j'ai craqué, je l'ai fait. Moins de 100 lignes de code au total. :)
La version 1.2.3 est poussée sur Github, avec ces deux PortExpanders et la mise à jour du PortExpander74HC595 suite à l'évolution de la bibliothèque ShiftRegister74HC595 qu'elle utilise...
Tout ça n'est bien sûr pas testé, je n'en ai pas les moyens pour l'instant. Dites moi si ça marche, je passerai la 1.2.3 en version officielle.

Juan

  • Full Member
  • ***
  • Messages: 120
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #4 le: septembre 17, 2020, 10:23:14 am »
Bon, j'espère me mettre bientôt au travail avec le PortExpander74HC595, dont j'ai plusieurs unités à tester (et j'apprends pour les autres multiplexeurs d'ailleurs  :)).
J'ai commandé plusieurs SX1509 à l'Extrême-Orient, afin de pouvoir également tester leur PortExpander.
Je vous tiendrai informés.
Merci beaucoup,
Juan.

Juan

  • Full Member
  • ***
  • Messages: 120
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #5 le: septembre 17, 2020, 07:03:43 pm »
Thierry,
Désolé, j'ai mal compris votre message précédent, et il s'avère que vous avez déjà réalisé les PortExtender pour PCA9505 et MCP23017 !
BRAVO !
Merci beaucoup.
Je peux maintenant les essayer avec mes multiplexeurs, mais j'ai une question : pour le moment, j'utilise un mélange de votre article sur les aiguillages à solénoïdes en utilisant l'ancienne bibliothèque UAD, rassemblant en un seul croquis le mode TCO et le mode DCC.  Mon idée est de passer aux nouvelles bibliothèques Commandants et Accessoires, mais je ne l'ai pas pour le moment.

Et bien sûr, j'ai peur que les extensions de port ne fonctionnent pas avec l'ancien UAD, n'est-ce pas ?
Je réitère mes remerciements.
Salutations amicales,
Juan

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #6 le: septembre 18, 2020, 08:25:13 am »
Oui, UAD n'est plus maintenue, et les expandeurs n'étaient pas exploités. Mieux vaut passer aux nouvelles bibs.

Juan

  • Full Member
  • ***
  • Messages: 120
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #7 le: septembre 18, 2020, 10:05:40 am »
Bonjour,
D'accord, je vais passer aux nouvelles bibliothèques (du moins, je vais essayer), mais en attendant, je vais travailler avec un petit assemblage élémentaire (éclairage à leds), pour vérifier si les nouveaux PortExpanders fonctionnent.
Passez une bonne journée,
Juan

Juan

  • Full Member
  • ***
  • Messages: 120
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #8 le: septembre 18, 2020, 02:16:43 pm »
Excuse-moi, Thierry, mais je suis encore là, à te harceler  :'(.
Le fait est que j'essaie les nouvelles bibliothèques Commandants et Accessoires. En particulier, dans ce dernier, si j'enlève le "//" pour activer le ACCESSORIES_DEBUG_MODE, j'obtiens l'erreur de compilation : exit status 1
'printPortPin' is not a member of 'Port'.
Des idées ?
Merci encore une fois.

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #9 le: septembre 18, 2020, 09:40:56 pm »
Corrigé ! Un sombre mélange entre les define ACCESSORIES_PRINT_ACCESSORIES et ACCESSORIES_DEBUG_MODE ...

Juan

  • Full Member
  • ***
  • Messages: 120
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #10 le: septembre 20, 2020, 10:46:20 am »
Bonjour Thierry,
En effet, dans la nouvelle version de la bibliothèque je peux activer le ACCESSORIES_DEBUG_MODE sans aucun problème, merci beaucoup.

Mais j'ai un problème plus sérieux : j'apprends à utiliser les Commandants et les Accessoires, puis je pourrai essayer les PortExpanders.J'ai réalisé la chose la plus élémentaire, à savoir faire allumer et éteindre les DEL au moyen de poussoirs de boutton, mais il n'y a pas moyen qu'elles fonctionnent avec le DccCommander.
Je copie votre croquis pour qu'il s'imprime sur le moniteur série DCCID(ret) et DCCACTIVATIO(ret), mais je ne vois rien. Le cas est que le BUILTIN_LED clignote lorsque le DCC Central est actif, mais j'envoie des commandes DCC et rien ne se passe.

Je dois faire quelque chose de mal, mais je ne peux pas le réparer. Par exemple, j'envoie la commande DCC <a 10 3 1> pour allumer la DEL avec l'adresse 40, et je ne vois rien dans le moniteur série (ni la DEL qui s'allume, évidemment).
Qu'est-ce que je fais de mal ? Bien que ce problème serait peut-être mieux traité dans un autre bloc, je ne sais pas.

Quoi qu'il en soit, j'attends votre aide.
Salutations,

Traduit avec www.DeepL.com/Translator (version gratuite)

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #11 le: septembre 20, 2020, 04:55:39 pm »
Bonjour

Pour utiliser des boutons poussoirs, c'est ButtonsCommander qu'il faut utiliser, et pas DccCommander ! Au delà de ça, sans le code, c'est difficile de se faire une idée...

Thierry

Juan

  • Full Member
  • ***
  • Messages: 120
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #12 le: septembre 20, 2020, 05:18:47 pm »
Re-bonjour.
Laissez-moi vous expliquer : je n'ai aucun problème avec les poisoirs à boutons, ils fonctionnent parfaitement en allumant et en éteignant les LED.

Le problème est que je n'arrive pas à faire fonctionner les commandes DCC du central, il faut donc utiliser DccCommander.

D'autre part, je vous dirai que j'ai essayé le PortExpander74HC595.h, celui que vous avez comme exemple dans la bibliothèque, et il fonctionne parfaitement. De plus, je l'ai essayé avec deux 74HC595 enchaînés ensemble, fonctionnant parfaitement.

Je vais maintenant essayer le MCP23017.

Juan

  • Full Member
  • ***
  • Messages: 120
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #13 le: septembre 20, 2020, 05:42:23 pm »
Impossible, rien à voir avec MCP23017.  Beaucoup de devoirs pour mes connaissances limitées. J'aurais besoin d'un exemple PortExpanderMCP23017.h, comme dans le cas du shift register .

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Expanders pour la bibliothèque Accessoires
« Réponse #14 le: septembre 20, 2020, 05:44:12 pm »
Il y a un exemple, mais je ne sais pas s'il marche !