Bonjour,
Je n'y connais rien en électronique, mais j'aimerai savoir s'il existe des montages pour connaitre l'état de plusieurs interrupteurs (au nombre de 64) par port COM (RS232) ?
Merci d'avance
-----
Bonjour,
Je n'y connais rien en électronique, mais j'aimerai savoir s'il existe des montages pour connaitre l'état de plusieurs interrupteurs (au nombre de 64) par port COM (RS232) ?
Merci d'avance
Bonjour eljeffe et bienvenue sur FUTURAVoilà voilou
- Avec COM, il faut une carte intelligente avec un µC pour lire tes 64 contacts
- Avec LPT, on peut lire 40 contacts avec uniquement des composants passifs et lire 1280 contacts en rajoutant des circuits intégrés
- Avec l'USB et une carte K8055, on peut lire 40 contacts avec uniquement des composants passifs (mais on peut mettre plusieurs K8055)
Merci pour cette réponse rapide !
-Quelle carte avec µC permet de lire les 64 contacts par port COM ? C'est compliqué à mettre en oeuvre pour un non-électronicien ?
-La carte sur laquelle je souhaite développer est bien équipée d'USB, mais impossible d'y installer windows (processeur ARM), or d'après ce que je lis la carte USB que tu me propose ne marche qu'avec une DLL windows ; existe-t-il on modele USB 'opensource' ? (et s'il peut gerer 64 contacts ca serait encore mieux!)
Ouh là, tu travailles sur une carte ARM, qui ne supporte pas Windows, et sans rien connaître à l'électronique.....Merci pour cette réponse rapide !
-Quelle carte avec µC permet de lire les 64 contacts par port COM ? C'est compliqué à mettre en oeuvre pour un non-électronicien ?
-La carte sur laquelle je souhaite développer est bien équipée d'USB, mais impossible d'y installer windows (processeur ARM), or d'après ce que je lis la carte USB que tu me propose ne marche qu'avec une DLL windows ; existe-t-il on modele USB 'opensource' ? (et s'il peut gerer 64 contacts ca serait encore mieux!)
Tu es sur de savoir ce que tu fais?
Quelle est cette carte?
J'avoue que ca n'est pas la carte ARM qui me fait peur, de ce coté la je pense maîtriser les choses (suis informaticien) ; c'est une beagleboard : http://beagleboard.org
Par contre pour lire les contacts, je suis paumé ^^ (et si je pouvais éviter le fer a souder ca serait d'autant mieux )
de toutes façons, il faudra un driver pour ta carte !
tu as aussi ça http://sine.ni.com/nips/cds/view/p/lang/fr/nid/201630
Avec 32 I/O, tu gères facilement plus de 64 contacts avec quelques résistances et diodes
C'est pour ça que l'idée du port RS232 me parait être la plus séduisante
C'est le 'facilement' qui me bloque Je viens de parcourir la fiche du produit dont tu donnes le lien, je pense que la aussi je vais être coincé coté drivers ; en plus c'est cher non (presque autant que ma carte ARM...)?tu as aussi ça http://sine.ni.com/nips/cds/view/p/lang/fr/nid/201630
Avec 32 I/O, tu gères facilement plus de 64 contacts avec quelques résistances et diodes
sauf qu'il faut la carte intelligente ! et de toutes les façons, il faut développer un logiciel sur le PC pour interpréter les trames RS232 et afficher sur l'écran .[/QUOTE]C'est le 'facilement' qui me bloque Je viens de parcourir la fiche du produit dont tu donnes le lien, je pense que la aussi je vais être coincé coté drivers ;[/QUOTE]National vend le driver avec la carteOn a rien sans rien ! sur ta carte ARM, il faut développer un logiciel (et de toutes les façons, il faut développer un logiciel sur le PC )en plus c'est cher non (presque autant que ma carte ARM...)?
Une solution simple est d'utiliser un Arduino ou un Teensy. Le plus gros doit avoir une cinquantaine d'E/S, donc il faudra mettre un minimum d'électronique pour augmenter leur nombre. Il faut aussi écrire un peu de code sur l'Arduino, mais ça n'a rien de complexe.
Tu peux aussi utiliser des expanseurs de port sur I²C ou SPI....Tu es sur un système embarqué, avec bien plus de possibilités hardware que sur un PC. Même si la programmation de ce genre de carte se rapproche de la prog PC, ça reste légèrement différent, et bien plus souple.
Désolé de débarquer avec mes gros sabots, mes question vous paraissent peut être un peu naives :/
Interpréter les trames RS232 c'est dans mes cordes, mais je ne sais pas du tout ce qu'est une carte 'intelligente' C'est des modules 'tout faits' ou il faut souder/programmer la carte à la main ? Quel genre de carte pourrait faire ce travail ?)
Le driver que vend national avec la carte ne risque pas de tourner sur ma carte ARM (que je lis 'windows/osx/linux', je comprends "driver intel").
En fait mon projet est de réaliser un echiquier électronique autonome ; pour ca j'ai :
-le logiciel que j'ai pondu sur pc : http://gaiachess.free.fr/
-une carte ARM sur laquelle je peux faire tourner mon soft
-du bois et une scie sauteuse ^^
mais il me manque la partie 'détection des pieces' ; mon idée est d'uiliser des aimants sous les pieces avec ce genre d'interrupteur sous l'échiquier : http://www.conrad.fr/interrupteur_re...65_124104_FAS#
Il me manque donc une manière de lire l’état de ces interrupteurs depuis mon logiciel. D'un point de vue logiciel, pour moi le plus facilement exploitable est le port RS232, maintenant électroniquement je ne sais pas comment réaliser ça ou s'il existe du 'clé en mains'.
Sorry ... j'ai interprété RS232 par port COM sur un PC !
Tu as seulement une carte ARM ....... avec un RS232 !
La question est donc : combien d'entrée/sortie libres tu disposes sur ta carte ARM ?
Voila la carte : http://beagleboard.org/static/BBxMSRM_latest.pdf
Il s'agit bien d'un 'port COM', comme sur un PC, il y a également 4 ports USB
"Support for RS232 via UART3 is provided by DB9 connector on the BeagleBoard for access to an onboard RS232 transceiver."
Via le port d'expansion, tu as suffisamment de GPIO pour câbler tes inters en matrice à diodes....pas besoin de composant annexe, mais il faut une bonne couche de logicielVoila la carte : http://beagleboard.org/static/BBxMSRM_latest.pdf
Il s'agit bien d'un 'port COM', comme sur un PC, il y a également 4 ports USB
"Support for RS232 via UART3 is provided by DB9 connector on the BeagleBoard for access to an onboard RS232 transceiver."
Sur le tableau 31 page 115, tu disposes de 14 I/O donc tu peux gérer des contacts matricés de 7*7=49 contacts (avec quelques diodes)
Pour 64 contacts, il faut rajouter un décodeur en plus
Si je comprends bien, ftorama, tu parles du "MMC3 Expansion Header" ? Je ne sais pas ce qu'est un 'GPIO' ou une 'matrice à diodes' ; mais si c'est facile a souder, ca n'est pas la couche logiciel qui m'effraie Y-a-t-il une site ou il est expliqué de quoi il s'agit ?
Ok si je comprends bien ces 'GPIO' sont des connecteurs dont je doit pouvoir détecter l'état (connecté/non connecté) logiciellement ?
Tu as aussi la USBkey (développé pour un simulateur de vol) qui se comporte comme un clavier USB http://www.simucockpit.fr/USB_K_fr.doc
Hello !
un échiquier ... donc tu as une matrice de 8*8 contacts (reed par exemple) à lire ???
tu n'as pas besoin de 64 entrées, mais de 8 entrées et 8 sorties tout ou rien.
N'importe quel microcontrôleur ("brut" ou préprogrammé comme un picaxe) fera l'affaire. La plupart possèdent une sortie série.
Tu peux chercher sur le net "matriçage clavier" pour comprendre la logique de lecture de tes 64 contacts.
A+
Laurent
En cherchant un peu je suis tombé sur ce document :
http://hackadaycom.files.wordpress.c...al_project.pdf
A la page 5, il y a un schema d'interrupteurs reed et de diodes : s'agit t'il de ma 'matrice' évoquée plus haut ?
Si je comprends bien
:
-il n'y a pas assez d'entrées GPIO sur ma carte pour 'lire' directement cette matrice (J'ai 14 entrées, il en faudrait 16 d apres le schema?).
-je dois utiliser un 'picaxe' (c'est le 'décodeur' évoqué plus haut?) pour resoudre ce probleme
J'ai bien suivi ?
La figure 2 ? C'est exactement ça
On met "A" =1, "B" à "H"=0 et on lit PA0 à PA7, si on trouve un 1 en entrée, le reed correspondant est "On"
On met "B" =1, "A"=0 et "C" à "H"=0 et on lit PA0 à PA7, si on trouve un 1 en entrée, le reed correspondant est "On"
etc etc etc
Re !
c'est possible avec 14 I/O ... mais faut un peur d'électronique autour :
- les 8 lignes sont lues par 8 entrées
- 3 sorties sont envoyées vers un décodeur "3 vers 8" comme le 74LS138
- les 8 sorties du 74LS138 doivent être inversées avec 2x 74LS04, les sorties des inverseurs vont sur les colonnes.
et ça roule avec 11 I/O !!!
A+
Laurent